diff options
| author | Jérémy Zurcher <jeremy@asynk.ch> | 2014-11-05 12:14:57 +0100 | 
|---|---|---|
| committer | Jérémy Zurcher <jeremy@asynk.ch> | 2014-11-05 12:14:57 +0100 | 
| commit | 0f77f2ff98a8128e18044eb34d2c76234ebe8749 (patch) | |
| tree | 5298694a8d13dc27f08e2c461fe4fc66ea091831 /core/src/ch | |
| parent | 3fdaaa05538525e828067e0eb4b91e7758ba023c (diff) | |
| download | RustAndDust-0f77f2ff98a8128e18044eb34d2c76234ebe8749.zip RustAndDust-0f77f2ff98a8128e18044eb34d2c76234ebe8749.tar.gz | |
Pawn,Unit: add enter(int cost)
Diffstat (limited to 'core/src/ch')
| -rw-r--r-- | core/src/ch/asynk/tankontank/engine/Pawn.java | 1 | ||||
| -rw-r--r-- | core/src/ch/asynk/tankontank/game/Unit.java | 14 | 
2 files changed, 14 insertions, 1 deletions
| diff --git a/core/src/ch/asynk/tankontank/engine/Pawn.java b/core/src/ch/asynk/tankontank/engine/Pawn.java index 23cbfa4..79a382d 100644 --- a/core/src/ch/asynk/tankontank/engine/Pawn.java +++ b/core/src/ch/asynk/tankontank/engine/Pawn.java @@ -64,6 +64,7 @@ public abstract class Pawn implements Moveable, Disposable      public abstract boolean canAttack(Pawn other);      public abstract boolean canAssistAttackWithoutLos(); +    public abstract void enter(int cost);      public abstract void move(int cost);      public abstract void rotate(Orientation o);      public abstract void attack(Pawn target); diff --git a/core/src/ch/asynk/tankontank/game/Unit.java b/core/src/ch/asynk/tankontank/game/Unit.java index 64af758..2bea006 100644 --- a/core/src/ch/asynk/tankontank/game/Unit.java +++ b/core/src/ch/asynk/tankontank/game/Unit.java @@ -52,6 +52,7 @@ public class Unit extends HeadedPawn      public int def;      public int cdef;      public int mp; +    public int mpLeft;      public UnitType type;      public UnitId id;      private boolean hasMoved; @@ -69,6 +70,7 @@ public class Unit extends HeadedPawn          this.rng = range;          this.def = defense;          this.mp = movementPoints; +        mpLeft = mp;          this.id = id;          this.type = type;          this.hasMoved = false; @@ -84,6 +86,7 @@ public class Unit extends HeadedPawn          this.def = defense;          this.cdef = concealedDefense;          this.mp = movementPoints; +        mpLeft = mp;          this.id = id;          this.type = type;          this.hasMoved = false; @@ -99,7 +102,7 @@ public class Unit extends HeadedPawn      @Override      public int getMovementPoints()      { -        return mp; +        return mpLeft;      }      @Override @@ -201,10 +204,18 @@ public class Unit extends HeadedPawn      }      @Override +    public void enter(int cost) +    { +        if (cost > mp) System.err.println("ERROR: Movement point exceeded: " + cost + "/" + mp + " please report"); +        mpLeft -= cost; +    } + +    @Override      public void move(int cost)      {          hasMoved = true;          if (cost > mp) System.err.println("ERROR: Movement point exceeded: " + cost + "/" + mp + " please report"); +        mpLeft = 0;      }      @Override @@ -216,6 +227,7 @@ public class Unit extends HeadedPawn      @Override      public void reset()      { +        mpLeft = mp;          hasFired = false;          hasMoved = false;      } | 
