diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2015-12-08 21:34:00 +0100 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2015-12-08 21:34:00 +0100 |
commit | 126f37e29f279e8ce854e29a4d0313004e58993c (patch) | |
tree | a21e38ef28183295597b612010855b6a6c071880 /core/src/ch/asynk/rustanddust/game/battles | |
parent | 59e0f7fe6a27f8150df6627a7eac2ec6456f6ba2 (diff) | |
download | RustAndDust-126f37e29f279e8ce854e29a4d0313004e58993c.zip RustAndDust-126f37e29f279e8ce854e29a4d0313004e58993c.tar.gz |
Ctrl,Battle: Battle manages currentPlayer and opponent
Diffstat (limited to 'core/src/ch/asynk/rustanddust/game/battles')
-rw-r--r-- | core/src/ch/asynk/rustanddust/game/battles/BattleCommon.java | 19 | ||||
-rw-r--r-- | core/src/ch/asynk/rustanddust/game/battles/BattleTest.java | 20 |
2 files changed, 20 insertions, 19 deletions
diff --git a/core/src/ch/asynk/rustanddust/game/battles/BattleCommon.java b/core/src/ch/asynk/rustanddust/game/battles/BattleCommon.java index 731c616..112deaf 100644 --- a/core/src/ch/asynk/rustanddust/game/battles/BattleCommon.java +++ b/core/src/ch/asynk/rustanddust/game/battles/BattleCommon.java @@ -24,6 +24,7 @@ public abstract class BattleCommon implements Battle protected String name; protected String description; protected Factory factory; + protected Player currentPlayer; protected Player usPlayer; protected Player gePlayer; protected ArrayList<Zone> entryZone = new ArrayList<Zone>(); @@ -74,11 +75,21 @@ public abstract class BattleCommon implements Battle } @Override - public Player opponent(Player player) + public Player getPlayer() { - if (player == usPlayer) - return gePlayer; - return usPlayer; + return currentPlayer; + } + + @Override + public Player getOpponent() + { + return ((currentPlayer == usPlayer) ? gePlayer : usPlayer); + } + + @Override + public void changePlayer() + { + currentPlayer = getOpponent(); } @Override diff --git a/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java b/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java index 7a9cdce..348e20a 100644 --- a/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java +++ b/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java @@ -24,17 +24,6 @@ public class BattleTest extends BattleCommon } @Override - public Player getPlayer() - { - if (!gePlayer.isDeploymentDone()) - return gePlayer; - - if (gePlayer.getTurnDone() == usPlayer.getTurnDone()) - return usPlayer; - return gePlayer; - } - - @Override public Position getHudPosition(Player player) { return (player.is(Army.US) ? Position.TOP_RIGHT: Position.TOP_LEFT); @@ -51,9 +40,9 @@ public class BattleTest extends BattleCommon @Override public boolean getReinforcement(Ctrl ctrl, Map map) { - if (ctrl.player.is(Army.GE)) + if (currentPlayer.is(Army.GE)) return false; - if (ctrl.player.getCurrentTurn() != 2) + if (currentPlayer.getCurrentTurn() != 2) return false; Zone usEntry = new Zone(map, 1); @@ -88,7 +77,7 @@ public class BattleTest extends BattleCommon map.addObjective(3, 4, Army.NONE); map.addHoldObjective(3, 3, Army.NONE); - ctrl.player = gePlayer; + currentPlayer = gePlayer; setUnit(map, gePlayer, UnitId.GE_WESPE, 6, 8, Orientation.NORTH, null); setUnit(map, gePlayer, UnitId.GE_TIGER, 5, 2, Orientation.NORTH, null); setUnit(map, gePlayer, UnitId.GE_PANZER_IV, 4, 5, Orientation.NORTH_WEST, null); @@ -110,7 +99,7 @@ public class BattleTest extends BattleCommon usExit.add(map.getHex(12, 6)); addExitZone(usExit); - ctrl.player = usPlayer; + currentPlayer = usPlayer; usPlayer.casualty(factory.getUnit(UnitId.US_SHERMAN_HQ)); setUnit(map, usPlayer, UnitId.US_PRIEST, 7, 6, Orientation.SOUTH_EAST, usExit); setUnit(map, usPlayer, UnitId.US_SHERMAN, 8, 4, Orientation.SOUTH, true, usExit); @@ -122,5 +111,6 @@ public class BattleTest extends BattleCommon usPlayer.turnEnd(); map.init(); map.turnDone(); + currentPlayer = gePlayer; } } |