diff options
| author | Jérémy Zurcher <jeremy@asynk.ch> | 2014-11-30 02:20:16 +0100 | 
|---|---|---|
| committer | Jérémy Zurcher <jeremy@asynk.ch> | 2014-11-30 02:20:16 +0100 | 
| commit | c64bd7e354033bda6414c3a51ed9cde414c6541f (patch) | |
| tree | 3daa3514da1a7013d5546ad88afd0bae9e141c24 /core/src/ch/asynk | |
| parent | 1fc52fb536c121d6ebf608a9b46784771f47b5e7 (diff) | |
| download | RustAndDust-c64bd7e354033bda6414c3a51ed9cde414c6541f.zip RustAndDust-c64bd7e354033bda6414c3a51ed9cde414c6541f.tar.gz | |
Ctrl,Hud: wait for animations and dialogs to be closed before leaving animation state
Diffstat (limited to 'core/src/ch/asynk')
| -rw-r--r-- | core/src/ch/asynk/tankontank/game/Ctrl.java | 21 | ||||
| -rw-r--r-- | core/src/ch/asynk/tankontank/game/Hud.java | 4 | 
2 files changed, 14 insertions, 11 deletions
| diff --git a/core/src/ch/asynk/tankontank/game/Ctrl.java b/core/src/ch/asynk/tankontank/game/Ctrl.java index 341292b..11b20a8 100644 --- a/core/src/ch/asynk/tankontank/game/Ctrl.java +++ b/core/src/ch/asynk/tankontank/game/Ctrl.java @@ -107,16 +107,17 @@ public class Ctrl implements Disposable      public void animationDone()      {          animationCount -= 1; -        if (animationCount == 0) { -            animationCount = map.animationsDone(); -            if (animationCount == 0) { -                StateType tmp = stateAfterAnimation; -                stateAfterAnimation = StateType.DONE; -                setState(tmp); -            } -        } -        if (animationCount < 0) -            TankOnTank.debug("    animationCount < 0"); +        if (animationCount > 0) +            return; +        animationCount = map.animationsDone(); +        if (animationCount > 0) +            return; +        if (hud.dialogActive()) +            return; + +        StateType tmp = stateAfterAnimation; +        stateAfterAnimation = StateType.DONE; +        setState(tmp);      }      private void startPlayerTurn() diff --git a/core/src/ch/asynk/tankontank/game/Hud.java b/core/src/ch/asynk/tankontank/game/Hud.java index 7de65db..f1e6424 100644 --- a/core/src/ch/asynk/tankontank/game/Hud.java +++ b/core/src/ch/asynk/tankontank/game/Hud.java @@ -180,7 +180,9 @@ public class Hud implements Disposable              closeOkCancel();          else if (dialog == stats)              ctrl.endGame(); -        // else if (dialog == engagement) +        else if (dialog == engagement) { +            ctrl.animationDone(); +        }          if (dialogs.size() > 0)              dialogs.getFirst().visible = true; | 
