Class LegionClientSide

java.lang.Object
net.sf.colossus.game.Legion
net.sf.colossus.client.LegionClientSide
All Implemented Interfaces:
IOracleLegion

public final class LegionClientSide extends Legion implements IOracleLegion
Client-side version of a legion.
Author:
David Ripton
  • Field Details

  • Constructor Details

  • Method Details

    • getNode

      private PredictSplitNode getNode(String markerId)
    • getNode

      private PredictSplitNode getNode()
    • getHeight

      public int getHeight()
      Description copied from class: Legion
      Returns the number of creatures in this legion.
      Specified by:
      getHeight in interface IOracleLegion
      Overrides:
      getHeight in class Legion
      Returns:
      the number of creatures in the legion
    • getCreatures

      public 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. 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.
      Overrides:
      getCreatures in class Legion
    • getContents

      private List<String> getContents()
      Return an immutable copy of the legion's contents, in sorted order. TODO get rid of this string-based version in favor of the typesafe ones
    • contains

      public boolean contains(String creatureName)
      A less typesafe version of Legion.contains(CreatureType). TODO deprecate and remove
      Specified by:
      contains in interface IOracleLegion
    • numCreature

      public int numCreature(String creatureName)
      TODO get rid of string-based version
      Specified by:
      numCreature in interface IOracleLegion
    • getImageNames

      public List<String> getImageNames()
      Return a list of Strings. Use the proper string for titans and unknown creatures.
    • getCertainties

      public List<Boolean> getCertainties()
      Return a list of Booleans.
    • getPlayer

      public PlayerClientSide getPlayer()
      Description copied from class: Legion
      Retrieves the player this legion belongs to.
      Overrides:
      getPlayer in class Legion
      Returns:
      The matching player. Never null.
    • addCreature

      public void addCreature(CreatureType creature)
      Add a new creature to this legion.
      Specified by:
      addCreature in class Legion
    • removeCreature

      public void removeCreature(CreatureType creature)
      Specified by:
      removeCreature in class Legion
    • revealCreatures

      void revealCreatures(List<CreatureType> creatures)
      Reveal creatures in this legion, some of which already may be known.
    • split

      void split(int childHeight, Legion child, int turn)
    • merge

      void merge(Legion splitoff)
    • getPointValue

      public int getPointValue()
      Return the point value of suspected contents of this legion.
      Specified by:
      getPointValue in class Legion
    • getCertainPointValue

      public int getCertainPointValue()
      Return the total point value of those creatures of this legion which are certain.
    • numUncertainCreatures

      public int numUncertainCreatures()