diff options
Diffstat (limited to 'core/src/ch/asynk/tankontank/game/states')
6 files changed, 20 insertions, 6 deletions
diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateAnimation.java b/core/src/ch/asynk/tankontank/game/states/GameStateAnimation.java index a7e69a3..5bb63fa 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateAnimation.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateAnimation.java @@ -3,7 +3,7 @@ package ch.asynk.tankontank.game.states; public class GameStateAnimation extends GameStateCommon { @Override - public void enter() + public void enter(boolean reset) { } diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateCommon.java b/core/src/ch/asynk/tankontank/game/states/GameStateCommon.java index d7e17d4..4288ba0 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateCommon.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateCommon.java @@ -21,6 +21,8 @@ public abstract class GameStateCommon implements GameState protected static GridPoint2 from = new GridPoint2(-1, -1); protected static GridPoint2 to = new GridPoint2(-1, -1); + protected static GameState.State nextState = GameState.State.SELECT; + protected GameStateCommon() { } @@ -32,13 +34,25 @@ public abstract class GameStateCommon implements GameState } @Override + public GameState.State getNextState() + { + return nextState; + } + + @Override + public void setNextState(GameState.State state) + { + nextState = state; + } + + @Override public void abort() { unselectHex(hex); hex.set(0, 0); pawn = null; ctrl.hud.hide(); - ctrl.setState(State.VIEW); + ctrl.setState(State.SELECT); } protected static boolean hexInMap(GridPoint2 hex) diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateDirection.java b/core/src/ch/asynk/tankontank/game/states/GameStateDirection.java index eb6f22c..f1b2bb5 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateDirection.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateDirection.java @@ -5,7 +5,7 @@ import ch.asynk.tankontank.engine.Orientation; public class GameStateDirection extends GameStateCommon { @Override - public void enter() + public void enter(boolean reset) { map.showFinalPath(to, true); } diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateMove.java b/core/src/ch/asynk/tankontank/game/states/GameStateMove.java index 1331adc..8238cd8 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateMove.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateMove.java @@ -3,7 +3,7 @@ package ch.asynk.tankontank.game.states; public class GameStateMove extends GameStateCommon { @Override - public void enter() + public void enter(boolean reset) { map.clearPossiblePaths(); buildAndShowMoves(); diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateRotate.java b/core/src/ch/asynk/tankontank/game/states/GameStateRotate.java index 75167ad..d3848b0 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateRotate.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateRotate.java @@ -5,7 +5,7 @@ import ch.asynk.tankontank.engine.Orientation; public class GameStateRotate extends GameStateCommon { @Override - public void enter() + public void enter(boolean reset) { map.showDirections(hex, true); ctrl.hud.show(true, false, false, ctrl.cfg.mustValidate, ctrl.cfg.canCancel); diff --git a/core/src/ch/asynk/tankontank/game/states/GameStateSelect.java b/core/src/ch/asynk/tankontank/game/states/GameStateSelect.java index 49c15fc..bb15acc 100644 --- a/core/src/ch/asynk/tankontank/game/states/GameStateSelect.java +++ b/core/src/ch/asynk/tankontank/game/states/GameStateSelect.java @@ -11,7 +11,7 @@ public class GameStateSelect extends GameStateCommon } @Override - public void enter() + public void enter(boolean reset) { } |