From df4ea901cc67c389d9327634622a2e83c606a7ce Mon Sep 17 00:00:00 2001 From: Jérémy Zurcher Date: Sun, 30 Nov 2014 00:22:37 +0100 Subject: ObjectiveSet,Map,Hex: visualy differenciate objectives that has to be hold and the others --- core/src/ch/asynk/tankontank/game/Hex.java | 7 ++++--- core/src/ch/asynk/tankontank/game/Map.java | 12 +++++------- core/src/ch/asynk/tankontank/game/ObjectiveSet.java | 2 +- 3 files changed, 10 insertions(+), 11 deletions(-) (limited to 'core/src/ch/asynk/tankontank') diff --git a/core/src/ch/asynk/tankontank/game/Hex.java b/core/src/ch/asynk/tankontank/game/Hex.java index 0abd9d6a..6e89df41 100644 --- a/core/src/ch/asynk/tankontank/game/Hex.java +++ b/core/src/ch/asynk/tankontank/game/Hex.java @@ -29,9 +29,10 @@ public class Hex extends Tile public static final int MOVE = 3; public static final int DIRECTIONS = 4; public static final int ORIENTATION = 5; - public static final int OBJECTIVE = 6; // unclaimed - public static final int OBJECTIVE_GE= 7; - public static final int OBJECTIVE_US= 8; + public static final int OBJECTIVE = 6; + public static final int OBJECTIVE_HOLD = 7; + public static final int OBJECTIVE_GE = 8; + public static final int OBJECTIVE_US = 9; public Terrain terrain; public int roads; diff --git a/core/src/ch/asynk/tankontank/game/Map.java b/core/src/ch/asynk/tankontank/game/Map.java index b059aab6..71f29c76 100644 --- a/core/src/ch/asynk/tankontank/game/Map.java +++ b/core/src/ch/asynk/tankontank/game/Map.java @@ -489,11 +489,12 @@ public abstract class Map extends Board public void showOrientation(Hex hex, Orientation o) { enableOverlayOn(hex, Hex.ORIENTATION, o, true); } public void hideOrientation(Hex hex) { enableOverlayOn(hex, Hex.ORIENTATION, false); } - public void hideObjective(Hex hex) + public void showObjective(Hex hex, Army army, boolean hold) { - enableOverlayOn(hex, Hex.OBJECTIVE, false); - enableOverlayOn(hex, Hex.OBJECTIVE_US, false); - enableOverlayOn(hex, Hex.OBJECTIVE_GE, false); + if (hold) + enableOverlayOn(hex, Hex.OBJECTIVE_HOLD, true); + else + enableOverlayOn(hex, Hex.OBJECTIVE, true); } public void showObjective(Hex hex, Army army) @@ -502,18 +503,15 @@ public abstract class Map extends Board case GE: enableOverlayOn(hex, Hex.OBJECTIVE_GE, true); enableOverlayOn(hex, Hex.OBJECTIVE_US, false); - enableOverlayOn(hex, Hex.OBJECTIVE, false); break; case US: enableOverlayOn(hex, Hex.OBJECTIVE_GE, false); enableOverlayOn(hex, Hex.OBJECTIVE_US, true); - enableOverlayOn(hex, Hex.OBJECTIVE, false); break; case NONE: default: enableOverlayOn(hex, Hex.OBJECTIVE_GE, false); enableOverlayOn(hex, Hex.OBJECTIVE_US, false); - enableOverlayOn(hex, Hex.OBJECTIVE, true); break; } } diff --git a/core/src/ch/asynk/tankontank/game/ObjectiveSet.java b/core/src/ch/asynk/tankontank/game/ObjectiveSet.java index 2a4f3eec..ab827f61 100644 --- a/core/src/ch/asynk/tankontank/game/ObjectiveSet.java +++ b/core/src/ch/asynk/tankontank/game/ObjectiveSet.java @@ -21,7 +21,7 @@ public class ObjectiveSet extends HashMap implements MoveToAnima public void add(Hex hex, Army army, boolean persistent) { put(hex, new Objective(army, persistent)); - map.showObjective(hex, army); + map.showObjective(hex, army, !persistent); } public int count(Army army) -- cgit v1.2.3