--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<translate
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:interpolator="@android:anim/accelerate_interpolator"
+ android:duration="300"
+ android:fromYDelta="0%"
+ android:toYDelta="-100%"
+ />
\ No newline at end of file
import android.os.Handler;
import android.os.Message;
import android.util.FloatMath;
-import android.view.View;
import com.gpl.rpg.AndorsTrail.AndorsTrailPreferences;
import com.gpl.rpg.AndorsTrail.Dialogs;
public static final int BEGIN_TURN_CONTINUE = 2;
public void enterCombat(int beginTurnAs) {
- context.mainActivity.combatview.setVisibility(View.VISIBLE);
- context.mainActivity.combatview.bringToFront();
+ context.mainActivity.combatview.show();
model.uiSelections.isInCombat = true;
killedMonsterBags.clear();
context.mainActivity.clearMessages();
}
public void exitCombat(boolean pickupLootBags) {
setCombatSelection(null, null);
- context.mainActivity.combatview.setVisibility(View.GONE);
+ context.mainActivity.combatview.hide();
model.uiSelections.isInCombat = false;
context.mainActivity.clearMessages();
currentActiveMonster = null;
import android.content.res.Resources;
import android.util.AttributeSet;
import android.view.View;
+import android.view.animation.Animation;
+import android.view.animation.Animation.AnimationListener;
+import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.RelativeLayout;
private final ViewContext view;
private final Resources res;
private final Player player;
+ private final Animation displayAnimation;
+ private final Animation hideAnimation;
private Monster currentMonster;
public CombatView(final Context context, AttributeSet attr) {
monsterBar.setBackgroundColor(res.getColor(color.transparent));
actionBar.setBackgroundColor(res.getColor(color.transparent));
+
+ displayAnimation = AnimationUtils.loadAnimation(context, R.anim.showcombatbar);
+ hideAnimation = AnimationUtils.loadAnimation(context, R.anim.hidecombatbar);
+ hideAnimation.setAnimationListener(new AnimationListener() {
+ @Override public void onAnimationStart(Animation animation) {}
+ @Override public void onAnimationRepeat(Animation animation) {}
+ @Override public void onAnimationEnd(Animation arg0) {
+ CombatView.this.setVisibility(View.GONE);
+ }
+ });
}
public void updateTurnInfo(Monster currentActiveMonster) {
}
updateCombatSelection(world.model.uiSelections.selectedMonster, world.model.uiSelections.selectedPosition);
}
+
+ public void show() {
+ setVisibility(View.VISIBLE);
+ bringToFront();
+ startAnimation(displayAnimation);
+ }
+
+ public void hide() {
+ startAnimation(hideAnimation);
+ //setVisibility(View.GONE);
+ }
}