public final class LegionClientSide extends Legion implements IOracleLegion
Legion.AcquirableDecision| Modifier and Type | Field and Description |
|---|---|
private static java.util.logging.Logger |
LOGGER |
private PredictSplitNode |
myNode |
angelsToAcquire, decisions, ORDER_TITAN_THEN_POINTS, ORDER_TITAN_THEN_POINTS_THEN_MARKER| Constructor and Description |
|---|
LegionClientSide(Player player,
java.lang.String markerId,
MasterHex hex) |
| Modifier and Type | Method and Description |
|---|---|
void |
addCreature(CreatureType creature)
Add a new creature to this legion.
|
boolean |
contains(java.lang.String creatureName)
A less typesafe version of
Legion.contains(CreatureType). |
int |
getCertainPointValue()
Return the total point value of those creatures of this legion
which are certain.
|
java.util.List<java.lang.Boolean> |
getCertainties()
Return a list of Booleans.
|
private java.util.List<java.lang.String> |
getContents()
Return an immutable copy of the legion's contents, in sorted order.
|
java.util.List<? extends Creature> |
getCreatures()
We don't use the creature list in this class yet, so we override this
to use the one from the
PredictSplitNode. |
int |
getHeight()
Returns the number of creatures in this legion.
|
java.util.List<java.lang.String> |
getImageNames()
Return a list of Strings.
|
private PredictSplitNode |
getNode() |
private PredictSplitNode |
getNode(java.lang.String markerId) |
PlayerClientSide |
getPlayer()
Retrieves the player this legion belongs to.
|
int |
getPointValue()
Return the point value of suspected contents of this legion.
|
(package private) void |
merge(Legion splitoff) |
int |
numCreature(java.lang.String creatureName)
TODO get rid of string-based version
|
int |
numUncertainCreatures() |
void |
removeCreature(CreatureType creature) |
(package private) void |
revealCreatures(java.util.List<CreatureType> creatures)
Reveal creatures in this legion, some of which already may be known.
|
(package private) void |
split(int childHeight,
Legion child,
int turn) |
canFlee, contains, equals, findEligibleAngels, getCreatureTypes, getCurrentHex, getEntrySide, getLongMarkerId, getMarkerId, getRecruit, getSkipThisTime, getTitan, getVisitedThisPhase, hashCode, hasMoved, hasRecruited, hasSummonable, hasTeleported, hasTitan, numCreature, numLords, numRangestrikers, setCurrentHex, setEntrySide, setMoved, setRecruit, setSkipThisTime, setTeleported, setupAcquirableDecisions, setVisitedThisPhase, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitcontains, numCreatureprivate static final java.util.logging.Logger LOGGER
private PredictSplitNode myNode
private PredictSplitNode getNode(java.lang.String markerId)
private PredictSplitNode getNode()
public int getHeight()
LegiongetHeight in interface IOracleLegiongetHeight in class Legionpublic java.util.List<? extends Creature> getCreatures()
PredictSplitNode.
TODO fix this, particularly the use of creature names in here. Note that
the current version also has the issue that every time this method
is called a new list with new creatures is created, which will break
identity checks.getCreatures in class Legionprivate java.util.List<java.lang.String> getContents()
public boolean contains(java.lang.String creatureName)
Legion.contains(CreatureType).
TODO deprecate and removecontains in interface IOracleLegionpublic int numCreature(java.lang.String creatureName)
numCreature in interface IOracleLegionpublic java.util.List<java.lang.String> getImageNames()
public java.util.List<java.lang.Boolean> getCertainties()
public PlayerClientSide getPlayer()
Legionpublic void addCreature(CreatureType creature)
addCreature in class Legionpublic void removeCreature(CreatureType creature)
removeCreature in class Legionvoid revealCreatures(java.util.List<CreatureType> creatures)
void split(int childHeight,
Legion child,
int turn)
void merge(Legion splitoff)
public int getPointValue()
getPointValue in class Legionpublic int getCertainPointValue()
public int numUncertainCreatures()