From b2c746a1340f44056d27c11e25a835f5e5feef8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Fri, 21 Nov 2014 17:04:38 +0100 Subject: add game.Objective --- core/src/ch/asynk/tankontank/game/Objective.java | 48 ++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 core/src/ch/asynk/tankontank/game/Objective.java diff --git a/core/src/ch/asynk/tankontank/game/Objective.java b/core/src/ch/asynk/tankontank/game/Objective.java new file mode 100644 index 0000000..f7a6c3b --- /dev/null +++ b/core/src/ch/asynk/tankontank/game/Objective.java @@ -0,0 +1,48 @@ +package ch.asynk.tankontank.game; + +public class Objective +{ + protected Army curArmy; + protected Army prevArmy; + private boolean persistent; + + public Objective(Army army, boolean persistent) + { + this.curArmy = army; + this.prevArmy = army; + this.persistent = persistent; + } + + public boolean is(Army army) + { + return (curArmy == army); + } + + public Army army() + { + return curArmy; + } + + public boolean set(Army army) + { + if (army == curArmy) + return false; + prevArmy = curArmy; + curArmy = army; + return true; + } + + public boolean unset() + { + if (persistent) + return false; + revert(); + return true; + } + + public Army revert() + { + curArmy = prevArmy; + return curArmy; + } +} -- cgit v1.1-2-g2b99