Class 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 Detail

      • LOGGER

        private static final java.util.logging.Logger LOGGER
      • game

        private final Game game
      • striker

        private final Creature striker
      • 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

      • 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