diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2016-02-10 11:20:13 +0100 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2016-02-10 11:20:13 +0100 |
commit | 4f3e3b341317288bf2da57aca90d86a1e9c8f956 (patch) | |
tree | 641d5b7648800822dc00060580c9b75b141d6391 /core/src/ch/asynk/rustanddust/game/states | |
parent | 7901668249d2f0d9669a170cf7bf429bce02c48f (diff) | |
download | RustAndDust-4f3e3b341317288bf2da57aca90d86a1e9c8f956.zip RustAndDust-4f3e3b341317288bf2da57aca90d86a1e9c8f956.tar.gz |
Battle,State: use entry and exit Zones from Unit and Map
Diffstat (limited to 'core/src/ch/asynk/rustanddust/game/states')
4 files changed, 7 insertions, 12 deletions
diff --git a/core/src/ch/asynk/rustanddust/game/states/StateDeployment.java b/core/src/ch/asynk/rustanddust/game/states/StateDeployment.java index 1abac5a..516c058 100644 --- a/core/src/ch/asynk/rustanddust/game/states/StateDeployment.java +++ b/core/src/ch/asynk/rustanddust/game/states/StateDeployment.java @@ -73,7 +73,7 @@ public class StateDeployment extends StateCommon { activeUnit = unit; if (entryZone != null) entryZone.enable(Hex.AREA, false); - entryZone = ctrl.battle.getEntryZone(activeUnit); + entryZone = activeUnit.entryZone; entryZone.enable(Hex.AREA, true); } diff --git a/core/src/ch/asynk/rustanddust/game/states/StateMove.java b/core/src/ch/asynk/rustanddust/game/states/StateMove.java index 3072396..16d5dd3 100644 --- a/core/src/ch/asynk/rustanddust/game/states/StateMove.java +++ b/core/src/ch/asynk/rustanddust/game/states/StateMove.java @@ -3,7 +3,6 @@ package ch.asynk.rustanddust.game.states; import ch.asynk.rustanddust.ui.Position; import ch.asynk.rustanddust.game.Hex; import ch.asynk.rustanddust.game.Unit; -import ch.asynk.rustanddust.game.Zone; import ch.asynk.rustanddust.game.hud.ActionButtons.Buttons; public class StateMove extends StateCommon @@ -181,8 +180,7 @@ public class StateMove extends StateCommon { if (unit.justEntered()) return false; - Zone exitZone = ctrl.battle.getExitZone(unit); - if ((exitZone == null) || !exitZone.contains(unit.getHex())) + if ((unit.exitZone == null) || !unit.exitZone.contains(unit.getHex())) return false; ctrl.setState(StateType.WITHDRAW); return true; @@ -190,10 +188,9 @@ public class StateMove extends StateCommon private boolean checkExit(Unit unit, Hex hex) { - Zone exitZone = ctrl.battle.getExitZone(unit); - if ((exitZone == null) || !exitZone.contains(hex)) + if ((unit.exitZone == null) || !unit.exitZone.contains(hex)) return false; - if (!map.pathsCanExit(exitZone.orientation)) + if (!map.pathsCanExit(unit.exitZone.orientation)) return false; ctrl.setState(StateType.WITHDRAW); return true; diff --git a/core/src/ch/asynk/rustanddust/game/states/StateReinforcement.java b/core/src/ch/asynk/rustanddust/game/states/StateReinforcement.java index 8c89f3b..bb975df 100644 --- a/core/src/ch/asynk/rustanddust/game/states/StateReinforcement.java +++ b/core/src/ch/asynk/rustanddust/game/states/StateReinforcement.java @@ -58,7 +58,7 @@ public class StateReinforcement extends StateCommon activeUnit = unit; if (entryZone != null) entryZone.enable(Hex.AREA, false); - entryZone = ctrl.battle.getEntryZone(activeUnit); + entryZone = activeUnit.entryZone; entryZone.enable(Hex.AREA, true); } diff --git a/core/src/ch/asynk/rustanddust/game/states/StateWithdraw.java b/core/src/ch/asynk/rustanddust/game/states/StateWithdraw.java index 12bb3c4..921eecc 100644 --- a/core/src/ch/asynk/rustanddust/game/states/StateWithdraw.java +++ b/core/src/ch/asynk/rustanddust/game/states/StateWithdraw.java @@ -1,6 +1,5 @@ package ch.asynk.rustanddust.game.states; -import ch.asynk.rustanddust.game.Zone; import ch.asynk.rustanddust.game.Hex; import ch.asynk.rustanddust.game.Unit; import ch.asynk.rustanddust.RustAndDust; @@ -36,7 +35,6 @@ public class StateWithdraw extends StateCommon private StateType withdraw(Unit unit) { - Zone exitZone = ctrl.battle.getExitZone(unit); Hex hex = unit.getHex(); // rotation @@ -44,10 +42,10 @@ public class StateWithdraw extends StateCommon map.pathsBuild(hex); Hex exitHex = (Hex) map.pathsTo(); - if (!exitZone.contains(exitHex)) + if (!unit.exitZone.contains(exitHex)) throw new RuntimeException(String.format("%s not in exitZone", exitHex)); - if (map.pathsChooseExit(exitZone.orientation) > 1) + if (map.pathsChooseExit(unit.exitZone.orientation) > 1) RustAndDust.debug("ERROR: Withdraw pathsSize() == " + map.pathsSize()); unit.hideActiveable(); |