summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2015-12-23 18:08:14 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2015-12-23 18:08:14 +0100
commita1f8f91ba93e2ca9655373130ae8bd841ca0275e (patch)
tree8fb448060cbb9fab85e818edcdbb4192e09286ed
parentdb6417ce56a3207888ac615d515c064e91af317c (diff)
downloadRustAndDust-a1f8f91ba93e2ca9655373130ae8bd841ca0275e.zip
RustAndDust-a1f8f91ba93e2ca9655373130ae8bd841ca0275e.tar.gz
BattleTest: be a test battle again
-rw-r--r--core/src/ch/asynk/rustanddust/game/battles/BattleTest.java102
1 files changed, 55 insertions, 47 deletions
diff --git a/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java b/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java
index bf37ac0..26fd14a 100644
--- a/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java
+++ b/core/src/ch/asynk/rustanddust/game/battles/BattleTest.java
@@ -11,10 +11,12 @@ import ch.asynk.rustanddust.engine.Orientation;
public class BattleTest extends BattleCommon
{
+ private Zone usExit;
+
public BattleTest(Factory factory)
{
super(factory);
- name = "Beta Test";
+ name = "* Beta Test *";
mapType = Factory.MapType.MAP_00;
}
@@ -31,7 +33,7 @@ public class BattleTest extends BattleCommon
map.turnDone();
usPlayer.turnEnd();
gePlayer.turnEnd();
- currentPlayer = usPlayer;
+ currentPlayer = gePlayer;
}
@Override
@@ -45,23 +47,35 @@ public class BattleTest extends BattleCommon
if (usPlayer.unitsLeft() == 0)
return gePlayer;
- if (gePlayer.getTurnDone() <= 8)
+ if (gePlayer.getTurnDone() <= 4)
return null;
usPlayer.objectivesWon = map.objectivesCount(Army.US);
gePlayer.objectivesWon = map.objectivesCount(Army.GE);
- if (usPlayer.objectivesWon >= gePlayer.objectivesWon) {
+ if (usPlayer.objectivesWon > gePlayer.objectivesWon)
return usPlayer;
- } else {
+ if (usPlayer.objectivesWon < gePlayer.objectivesWon)
return gePlayer;
- }
+
+ return null;
}
@Override
public boolean hasReinforcement()
{
- return false;
+ if (currentPlayer.is(Army.GE))
+ return false;
+ if (currentPlayer.getCurrentTurn() != 2)
+ return false;
+
+ Zone usEntry = new Zone(map, 1);
+ usEntry.allowedMoves = (Orientation.SOUTH.s | Orientation.SOUTH_EAST.s | Orientation.SOUTH_WEST.s);
+ usEntry.add(map.getHex(12, 6));
+ addEntryZone(usEntry);
+ addReinforcement(usPlayer, usEntry, usExit, UnitId.US_WOLVERINE);
+
+ return true;
}
@Override
@@ -69,50 +83,44 @@ public class BattleTest extends BattleCommon
{
super.setup();
- map.addHoldObjective(5, 2, Army.NONE);
- map.addObjective(11, 7, Army.US);
-
- Zone usEntry = new Zone(map, 10);
- usEntry.orientation = Orientation.SOUTH;
- usEntry.add(map.getHex(8, 0));
- usEntry.add(map.getHex(9, 0));
- usEntry.add(map.getHex(8, 1));
- usEntry.add(map.getHex(9, 1));
- usEntry.add(map.getHex(9, 2));
- usEntry.add(map.getHex(10, 2));
- usEntry.add(map.getHex(9, 3));
- usEntry.add(map.getHex(10, 3));
- usEntry.add(map.getHex(10, 4));
- usEntry.add(map.getHex(11, 4));
- addEntryZone(usEntry);
- addReinforcement(usPlayer, usEntry, UnitId.US_SHERMAN, true, false);
- addReinforcement(usPlayer, usEntry, UnitId.US_SHERMAN);
- addReinforcement(usPlayer, usEntry, UnitId.US_SHERMAN);
- addReinforcement(usPlayer, usEntry, UnitId.US_SHERMAN);
- addReinforcement(usPlayer, usEntry, UnitId.US_WOLVERINE, true, false);
- addReinforcement(usPlayer, usEntry, UnitId.US_WOLVERINE);
- addReinforcement(usPlayer, usEntry, UnitId.US_PERSHING);
- addReinforcement(usPlayer, usEntry, UnitId.US_PRIEST);
-
- Zone geEntry = new Zone(map, 8);
+ map.addObjective(5, 2, Army.NONE);
+ map.addHoldObjective(5, 3, Army.NONE);
+ map.addObjective(3, 4, Army.NONE);
+ map.addHoldObjective(3, 3, Army.NONE);
+
+ 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);
+ setUnit(map, gePlayer, UnitId.GE_INFANTRY, 1, 2, Orientation.NORTH_WEST, null);
+ setUnit(map, gePlayer, UnitId.GE_KINGTIGER, 1, 1, Orientation.NORTH_WEST, null);
+
+ Zone geEntry = new Zone(map, 6);
geEntry.orientation = Orientation.NORTH;
- geEntry.add(map.getHex(4, 8));
- geEntry.add(map.getHex(5, 8));
- geEntry.add(map.getHex(4, 7));
- geEntry.add(map.getHex(5, 7));
- geEntry.add(map.getHex(3, 6));
- geEntry.add(map.getHex(4, 6));
- geEntry.add(map.getHex(3, 5));
- geEntry.add(map.getHex(4, 5));
+ geEntry.add(map.getHex(1, 2));
+ geEntry.add(map.getHex(1, 1));
+ geEntry.add(map.getHex(3, 3));
+ geEntry.add(map.getHex(3, 4));
addEntryZone(geEntry);
- addReinforcement(gePlayer, geEntry, UnitId.GE_PANZER_IV, true, false);
- addReinforcement(gePlayer, geEntry, UnitId.GE_PANZER_IV);
- addReinforcement(gePlayer, geEntry, UnitId.GE_PANZER_IV);
- addReinforcement(gePlayer, geEntry, UnitId.GE_TIGER);
- addReinforcement(gePlayer, geEntry, UnitId.GE_WESPE);
- addReinforcement(gePlayer, geEntry, UnitId.GE_AT_GUN);
addReinforcement(gePlayer, geEntry, UnitId.GE_AT_GUN);
+ currentPlayer = usPlayer;
+ usExit = new Zone(map, 9);
+ usExit.orientation = Orientation.NORTH;
+ usExit.add(map.getHex(11, 4));
+ usExit.add(map.getHex(11, 5));
+ usExit.add(map.getHex(12, 6));
+ addExitZone(usExit);
+
+ usPlayer.casualty(factory.getUnit(UnitId.US_SHERMAN, true, false));
+ setUnit(map, usPlayer, UnitId.US_PRIEST, 7, 6, Orientation.SOUTH_EAST, usExit);
+ setUnit(map, usPlayer, UnitId.US_SHERMAN, 8, 4, Orientation.SOUTH, false, true, usExit);
+ setUnit(map, usPlayer, UnitId.US_SHERMAN, 7, 3, Orientation.SOUTH, true, false, usExit);
+ setUnit(map, usPlayer, UnitId.US_WOLVERINE, 11, 7, Orientation.SOUTH_EAST, usExit);
+ setUnit(map, usPlayer, UnitId.US_PERSHING, 6, 5, Orientation.SOUTH, usExit);
+ setUnit(map, usPlayer, UnitId.US_INFANTRY, 5, 3, Orientation.NORTH_EAST, usExit);
+ setUnit(map, usPlayer, UnitId.US_AT_GUN, 6, 1, Orientation.SOUTH, usExit);
+
return this.map;
}
}