diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2014-10-18 07:34:12 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2014-10-18 07:34:12 +0200 |
commit | 92137bf36283ad1c5d972b138484b02cc5c3ce7a (patch) | |
tree | 8072a141f9849ac77bb67b53481f0efca2b709e2 /core/src/ch/asynk/tankontank/game/battles | |
parent | 215e467bbbbff4a5bc5836faf4fa476834575390 (diff) | |
download | RustAndDust-92137bf36283ad1c5d972b138484b02cc5c3ce7a.zip RustAndDust-92137bf36283ad1c5d972b138484b02cc5c3ce7a.tar.gz |
add Battle battles/BattleCommon battles/BattleFake
Diffstat (limited to 'core/src/ch/asynk/tankontank/game/battles')
-rw-r--r-- | core/src/ch/asynk/tankontank/game/battles/BattleCommon.java | 43 | ||||
-rw-r--r-- | core/src/ch/asynk/tankontank/game/battles/BattleFake.java | 80 |
2 files changed, 123 insertions, 0 deletions
diff --git a/core/src/ch/asynk/tankontank/game/battles/BattleCommon.java b/core/src/ch/asynk/tankontank/game/battles/BattleCommon.java new file mode 100644 index 0000000..ed7a82c --- /dev/null +++ b/core/src/ch/asynk/tankontank/game/battles/BattleCommon.java @@ -0,0 +1,43 @@ +package ch.asynk.tankontank.game.battles; + +import java.util.Random; + +import ch.asynk.tankontank.game.Army; +import ch.asynk.tankontank.game.Battle; + +public abstract class BattleCommon implements Battle +{ + protected final static Random random = new Random(); + + protected String name; + protected String description; + protected Army firstArmy; + protected Army secondArmy; + protected Factory factory; + + public BattleCommon(Factory factory) + { + this.factory = factory; + } + + public String getName() + { + return name; + } + + public String getDescription() + { + return description; + } + + public void randomizeArmies() + { + if (random.nextInt(2) == 0) { + firstArmy = Army.US; + secondArmy = Army.GE; + } else { + firstArmy = Army.GE; + secondArmy = Army.US; + } + } +} diff --git a/core/src/ch/asynk/tankontank/game/battles/BattleFake.java b/core/src/ch/asynk/tankontank/game/battles/BattleFake.java new file mode 100644 index 0000000..19dcec7 --- /dev/null +++ b/core/src/ch/asynk/tankontank/game/battles/BattleFake.java @@ -0,0 +1,80 @@ +package ch.asynk.tankontank.game.battles; + +import java.util.Random; + +import com.badlogic.gdx.math.GridPoint2; + +import ch.asynk.tankontank.game.Map; +import ch.asynk.tankontank.game.Army; +import ch.asynk.tankontank.game.Player; +import ch.asynk.tankontank.game.Unit.UnitId; +import ch.asynk.tankontank.engine.Orientation; + +public class BattleFake extends BattleCommon +{ + public BattleFake(Factory factory) + { + super(factory); + randomizeArmies(); + } + + @Override + public Map getMap() + { + return factory.getMap(Factory.MapType.MAP_A); + } + + @Override + public Player getFirstPlayer() + { + return factory.getPlayer(firstArmy); + } + + @Override + public Player getSecondPlayer() + { + return factory.getPlayer(secondArmy); + } + + @Override + public void setup(Map map, Player a, Player b) + { + Player gePlayer; + Player usPlayer; + + if (a.isEnemy(Army.GE)) { + usPlayer = a; + gePlayer = b; + } else { + usPlayer = b; + gePlayer = a; + } + Orientation o = Orientation.NORTH; + GridPoint2 p = new GridPoint2(); + + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_TIGER), p.set(4, 7), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_TIGER), p.set(3, 6), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV), p.set(3, 5), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV_HQ), p.set(2, 4), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV), p.set(2, 3), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV), p.set(1, 2), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV_HQ), p.set(1, 1), o)); + gePlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.GE_PANZER_IV), p.set(0, 0), o)); + + o = Orientation.SOUTH; + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_WOLVERINE), p.set(13, 8), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_WOLVERINE), p.set(12, 7), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_PRIEST), p.set(12, 6), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN), p.set(11, 5), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN_HQ), p.set(11, 4), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN), p.set(10, 3), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN), p.set(10, 2), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN_HQ), p.set(9, 1), o)); + usPlayer.addUnit(map.setPawnAt(factory.getUnit(UnitId.US_SHERMAN), p.set(9, 0), o)); + } + + public boolean checkVictory() + { + return false; + } +} |