net.sf.colossus.server
Class PenaltyOption

java.lang.Object
  extended by net.sf.colossus.server.PenaltyOption
All Implemented Interfaces:
java.lang.Comparable<PenaltyOption>

final class PenaltyOption
extends java.lang.Object
implements java.lang.Comparable<PenaltyOption>

Holds the information for one possible strike penalty, including the null no-penalty option.

Author:
David Ripton

Field Summary
private  java.util.Set<BattleHex> carryTargets
           
private  int dice
           
private  Game game
           
private static java.util.logging.Logger LOGGER
           
private  int strikeNumber
           
private  Creature striker
           
private  Creature target
           
 
Constructor Summary
PenaltyOption(Game game, Creature striker, Creature target, int dice, int strikeNumber)
           
 
Method Summary
(package private)  void addCarryTarget(BattleHex carryTarget)
           
(package private)  void addCarryTargets(java.util.Set<BattleHex> targets)
           
 int compareTo(PenaltyOption other)
          Sort first by ascending dice, then by descending strike number, then by striker and target.
 boolean equals(java.lang.Object object)
          Do not consider carryTargets.
(package private)  java.util.Set<BattleHex> getCarryTargets()
           
(package private)  int getDice()
           
(package private)  int getStrikeNumber()
           
(package private)  Creature getStriker()
           
(package private)  Creature getTarget()
           
 int hashCode()
          Do not consider carryTargets.
(package private)  int numCarryTargets()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

LOGGER

private static final java.util.logging.Logger LOGGER

game

private final Game game

striker

private final Creature striker

target

private final Creature target

carryTargets

private final java.util.Set<BattleHex> carryTargets

dice

private final int dice

strikeNumber

private final int strikeNumber
Constructor Detail

PenaltyOption

PenaltyOption(Game game,
              Creature striker,
              Creature target,
              int dice,
              int strikeNumber)
Method Detail

getStriker

Creature getStriker()

getTarget

Creature getTarget()

getDice

int getDice()

getStrikeNumber

int getStrikeNumber()

addCarryTarget

void addCarryTarget(BattleHex carryTarget)

addCarryTargets

void addCarryTargets(java.util.Set<BattleHex> targets)

getCarryTargets

java.util.Set<BattleHex> getCarryTargets()

numCarryTargets

int numCarryTargets()

compareTo

public int compareTo(PenaltyOption other)
Sort first by ascending dice, then by descending strike number, then by striker and target. Do not consider carryTargets.

Specified by:
compareTo in interface java.lang.Comparable<PenaltyOption>

equals

public boolean equals(java.lang.Object object)
Do not consider carryTargets.

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Do not consider carryTargets.

Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object