From 7ddf67a0fc8530f5127f9c7d7cd49f09f4eeae7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Wed, 12 Nov 2014 16:58:58 +0100 Subject: StateEntry -> StateReinforcement --- core/src/ch/asynk/tankontank/game/Ctrl.java | 6 +- core/src/ch/asynk/tankontank/game/State.java | 2 +- .../ch/asynk/tankontank/game/hud/PlayerInfo.java | 2 +- .../asynk/tankontank/game/states/StateEntry.java | 84 ---------------------- .../tankontank/game/states/StateReinforcement.java | 84 ++++++++++++++++++++++ 5 files changed, 89 insertions(+), 89 deletions(-) delete mode 100644 core/src/ch/asynk/tankontank/game/states/StateEntry.java create mode 100644 core/src/ch/asynk/tankontank/game/states/StateReinforcement.java diff --git a/core/src/ch/asynk/tankontank/game/Ctrl.java b/core/src/ch/asynk/tankontank/game/Ctrl.java index a3d1855..210e7e9 100644 --- a/core/src/ch/asynk/tankontank/game/Ctrl.java +++ b/core/src/ch/asynk/tankontank/game/Ctrl.java @@ -11,7 +11,7 @@ import ch.asynk.tankontank.game.states.StatePromote; import ch.asynk.tankontank.game.states.StateAttack; import ch.asynk.tankontank.game.states.StateBreak; import ch.asynk.tankontank.game.states.StateAnimation; -import ch.asynk.tankontank.game.states.StateEntry; +import ch.asynk.tankontank.game.states.StateReinforcement; import ch.asynk.tankontank.screens.OptionsScreen; @@ -61,7 +61,7 @@ public class Ctrl implements Disposable this.attackState = new StateAttack(); this.breakState = new StateBreak(); this.animationState = new StateAnimation(); - this.entryState = new StateEntry(); + this.entryState = new StateReinforcement(); this.state = selectState; this.stateType = State.StateType.SELECT; @@ -192,7 +192,7 @@ public class Ctrl implements Disposable case ANIMATION: this.state = animationState; break; - case ENTRY: + case REINFORCEMENT: this.state = entryState; break; default: diff --git a/core/src/ch/asynk/tankontank/game/State.java b/core/src/ch/asynk/tankontank/game/State.java index b6fe5e1..70cc08b 100644 --- a/core/src/ch/asynk/tankontank/game/State.java +++ b/core/src/ch/asynk/tankontank/game/State.java @@ -10,7 +10,7 @@ public interface State BREAK, PROMOTE, ANIMATION, - ENTRY, + REINFORCEMENT, ABORT, DONE }; diff --git a/core/src/ch/asynk/tankontank/game/hud/PlayerInfo.java b/core/src/ch/asynk/tankontank/game/hud/PlayerInfo.java index 1c93123..1cb54ef 100644 --- a/core/src/ch/asynk/tankontank/game/hud/PlayerInfo.java +++ b/core/src/ch/asynk/tankontank/game/hud/PlayerInfo.java @@ -142,7 +142,7 @@ public class PlayerInfo implements Disposable, Drawable } else if (hit == reinforcement) { if (reinforcement.hit(x, y)) - ctrl.toggleState(StateType.ENTRY, StateType.SELECT); + ctrl.toggleState(StateType.REINFORCEMENT, StateType.SELECT); } else if (hit == unitDock) { if (unitDock.hit(x, y)) diff --git a/core/src/ch/asynk/tankontank/game/states/StateEntry.java b/core/src/ch/asynk/tankontank/game/states/StateEntry.java deleted file mode 100644 index cfdc24c..0000000 --- a/core/src/ch/asynk/tankontank/game/states/StateEntry.java +++ /dev/null @@ -1,84 +0,0 @@ -package ch.asynk.tankontank.game.states; - -import com.badlogic.gdx.math.Vector3; - -import ch.asynk.tankontank.engine.TileSet; -import ch.asynk.tankontank.engine.Orientation; -import ch.asynk.tankontank.game.Hex; -import ch.asynk.tankontank.game.Unit; -import ch.asynk.tankontank.game.hud.ActionButtons.Buttons; - -public class StateEntry extends StateCommon -{ - private TileSet entryPoint; - - @Override - public void enter(boolean fromSelect) - { - if (selectedHex != null) - map.unselectHex(selectedHex); - entryPoint = null; - selectedHex = null; - ctrl.hud.playerInfo.unitDock.show(); - } - - @Override - public void leave(StateType nextState) - { - if (entryPoint != null) - entryPoint.enable(Hex.AREA, false); - ctrl.hud.playerInfo.unitDock.hide(); - } - - @Override - public void touchDown() - { - } - - @Override - public void touchUp() - { - Unit unit = ctrl.hud.playerInfo.getDockUnit(); - if ((unit != null) && (unit != activeUnit)) - changeUnit(unit); - else if ((entryPoint != null) && upHex.isEmpty() && entryPoint.contains(upHex)) - unitEnter(activeUnit); - else - ctrl.setState(StateType.SELECT); - } - - @Override - public void abort() - { - super.abort(); - } - - @Override - public void done() - { - super.done(); - } - - private void changeUnit(Unit unit) - { - activeUnit = unit; - if (entryPoint != null) entryPoint.enable(Hex.AREA, false); - entryPoint = ctrl.battle.getEntryPoint(activeUnit); - entryPoint.enable(Hex.AREA, true); - ctrl.hud.actionButtons.show(((ctrl.cfg.canCancel) ? Buttons.ABORT.b : 0)); - } - - private void unitEnter(Unit unit) - { - selectedUnit = unit; - selectedHex = upHex; - map.selectHex(selectedHex); - entryPoint.enable(Hex.AREA, false); - ctrl.player.unitEntry(unit); - map.enterBoard(unit, upHex, ctrl.battle.getEntryOrientation(ctrl.player)); - if (unit.getMovementPoints() > 0) - ctrl.setState(StateType.MOVE, true); - else - ctrl.setState(StateType.ROTATE, true); - } -} diff --git a/core/src/ch/asynk/tankontank/game/states/StateReinforcement.java b/core/src/ch/asynk/tankontank/game/states/StateReinforcement.java new file mode 100644 index 0000000..a66973e --- /dev/null +++ b/core/src/ch/asynk/tankontank/game/states/StateReinforcement.java @@ -0,0 +1,84 @@ +package ch.asynk.tankontank.game.states; + +import com.badlogic.gdx.math.Vector3; + +import ch.asynk.tankontank.engine.TileSet; +import ch.asynk.tankontank.engine.Orientation; +import ch.asynk.tankontank.game.Hex; +import ch.asynk.tankontank.game.Unit; +import ch.asynk.tankontank.game.hud.ActionButtons.Buttons; + +public class StateReinforcement extends StateCommon +{ + private TileSet entryPoint; + + @Override + public void enter(boolean fromSelect) + { + if (selectedHex != null) + map.unselectHex(selectedHex); + entryPoint = null; + selectedHex = null; + ctrl.hud.playerInfo.unitDock.show(); + } + + @Override + public void leave(StateType nextState) + { + if (entryPoint != null) + entryPoint.enable(Hex.AREA, false); + ctrl.hud.playerInfo.unitDock.hide(); + } + + @Override + public void touchDown() + { + } + + @Override + public void touchUp() + { + Unit unit = ctrl.hud.playerInfo.getDockUnit(); + if ((unit != null) && (unit != activeUnit)) + changeUnit(unit); + else if ((entryPoint != null) && upHex.isEmpty() && entryPoint.contains(upHex)) + unitEnter(activeUnit); + else + ctrl.setState(StateType.SELECT); + } + + @Override + public void abort() + { + super.abort(); + } + + @Override + public void done() + { + super.done(); + } + + private void changeUnit(Unit unit) + { + activeUnit = unit; + if (entryPoint != null) entryPoint.enable(Hex.AREA, false); + entryPoint = ctrl.battle.getEntryPoint(activeUnit); + entryPoint.enable(Hex.AREA, true); + ctrl.hud.actionButtons.show(((ctrl.cfg.canCancel) ? Buttons.ABORT.b : 0)); + } + + private void unitEnter(Unit unit) + { + selectedUnit = unit; + selectedHex = upHex; + map.selectHex(selectedHex); + entryPoint.enable(Hex.AREA, false); + ctrl.player.unitEntry(unit); + map.enterBoard(unit, upHex, ctrl.battle.getEntryOrientation(ctrl.player)); + if (unit.getMovementPoints() > 0) + ctrl.setState(StateType.MOVE, true); + else + ctrl.setState(StateType.ROTATE, true); + } +} -- cgit v1.1-2-g2b99