diff options
Diffstat (limited to 'core/src/ch/asynk/tankontank/game/UnitSet.java')
-rw-r--r-- | core/src/ch/asynk/tankontank/game/UnitSet.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/core/src/ch/asynk/tankontank/game/UnitSet.java b/core/src/ch/asynk/tankontank/game/UnitSet.java new file mode 100644 index 0000000..e4e63c0 --- /dev/null +++ b/core/src/ch/asynk/tankontank/game/UnitSet.java @@ -0,0 +1,35 @@ +package ch.asynk.tankontank.game; + +import java.util.Collection; +import java.util.LinkedHashSet; + +import ch.asynk.tankontank.engine.Pawn; + +public class UnitSet extends LinkedHashSet<Unit> +{ + private final Map map; + + public UnitSet(Map map, int n) + { + super(n); + this.map = map; + } + + @SuppressWarnings("unchecked") + public Collection<Pawn> asPawns() + { + return (Collection) this; + } + + public Unit first() + { + if (isEmpty()) return null; + return iterator().next(); + } + + public void enable(int i, boolean enable) + { + for (Unit unit : this) + unit.enableOverlay(i, enable); + } +} |