mirror of
https://github.com/OMGeeky/andors-trail.git
synced 2026-02-23 15:38:29 +01:00
Use animations when changing visibility of the combat bar.
This commit is contained in:
8
AndorsTrail/res/anim/hidecombatbar.xml
Normal file
8
AndorsTrail/res/anim/hidecombatbar.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?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%"
|
||||
/>
|
||||
8
AndorsTrail/res/anim/showcombatbar.xml
Normal file
8
AndorsTrail/res/anim/showcombatbar.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<translate
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:interpolator="@android:anim/decelerate_interpolator"
|
||||
android:duration="300"
|
||||
android:fromYDelta="-100%"
|
||||
android:toYDelta="0%"
|
||||
/>
|
||||
@@ -6,7 +6,6 @@ import android.content.res.Resources;
|
||||
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;
|
||||
@@ -49,8 +48,7 @@ public final class CombatController implements VisualEffectCompletedCallback {
|
||||
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();
|
||||
@@ -61,7 +59,7 @@ public final class CombatController implements VisualEffectCompletedCallback {
|
||||
}
|
||||
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;
|
||||
|
||||
@@ -5,6 +5,9 @@ import android.content.Context;
|
||||
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;
|
||||
@@ -34,6 +37,8 @@ public final class CombatView extends 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) {
|
||||
@@ -90,6 +95,16 @@ public final class CombatView extends RelativeLayout {
|
||||
|
||||
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) {
|
||||
@@ -135,4 +150,15 @@ public final class CombatView extends RelativeLayout {
|
||||
}
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user