diff options
Diffstat (limited to 'core/src')
| -rw-r--r-- | core/src/ch/asynk/tankontank/game/Map.java | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/core/src/ch/asynk/tankontank/game/Map.java b/core/src/ch/asynk/tankontank/game/Map.java index ddcc237..517afc8 100644 --- a/core/src/ch/asynk/tankontank/game/Map.java +++ b/core/src/ch/asynk/tankontank/game/Map.java @@ -58,6 +58,7 @@ public abstract class Map extends Board implements MoveToAnimationCb, ObjectiveS      private Sound sound;      private long soundId = -1;      private Animation animationClosure; +    private Engagement engagement;      protected abstract void setup(); @@ -315,6 +316,10 @@ public abstract class Map extends Board implements MoveToAnimationCb, ObjectiveS      public void actionDone()      {          objectives.forget(); +        if (engagement != null) { +            engagement.dispose(); +            engagement = null; +        }      }      public boolean enterBoard(Unit unit, Hex to, int allowedMoves) @@ -508,9 +513,9 @@ public abstract class Map extends Board implements MoveToAnimationCb, ObjectiveS      public boolean engageUnit(Unit unit, final Unit target)      {          attack(unit, target, true); -        Engagement e = Engagement.get(unit, target); +        engagement = Engagement.get(unit, target); -        boolean success = resolveFight(unit, target, e); +        boolean success = resolveFight(unit, target, engagement);          breakUnits.clear();          for (Unit u : activatedUnits) { | 
