Class SpaceStation

All Implemented Interfaces:
Serializable, ICarryable, Transporter, InGameObject, CombatRole, ForceAssignable, ITechnology, ITurnOrdered, PhaseUpdated, RoundUpdated, ActiveHeatSinkController, BTObject, Deployable, IAero, IBomber, Targetable

public class SpaceStation extends Jumpship
Since:
Jun 17, 2007
See Also:
  • Field Details

    • MODULAR_MINIMUM_WEIGHT

      public static final double MODULAR_MINIMUM_WEIGHT
      A station over this weight in may be built as a modular station.
      See Also:
  • Constructor Details

    • SpaceStation

      public SpaceStation()
  • Method Details

    • getUnitType

      public int getUnitType()
      Overrides:
      getUnitType in class Jumpship
      See Also:
    • getConstructionTechAdvancement

      public TechAdvancement getConstructionTechAdvancement()
      Description copied from class: Entity
      return - the base construction option tech advancement
      Overrides:
      getConstructionTechAdvancement in class Jumpship
    • getKFAdapterTA

      public static TechAdvancement getKFAdapterTA()
    • getModularTA

      public static TechAdvancement getModularTA()
    • setModularOrKFAdapter

      public void setModularOrKFAdapter(boolean modularOrKFAdapter)
      Designates whether this is a modular space station
      Parameters:
      modularOrKFAdapter - Whether the space station can be transported by jumpship.
    • isModularOrKFAdapter

      public boolean isModularOrKFAdapter()
      Returns:
      True if this space station has a modular construction or has a KF adapter for stations less than 100kt, otherwise false.
    • isModular

      public boolean isModular()
    • hasKFAdapter

      public boolean hasKFAdapter()
    • getCost

      public double getCost(CalculationReport calcReport, boolean ignoreAmmo)
      Description copied from class: Entity
      Calculates and returns the C-bill cost of the unit. The parameter ignoreAmmo can be used to include or exclude ("dry cost") the cost of ammunition on the unit. A report for the cost calculation will be written to the given calcReport.
      Overrides:
      getCost in class Jumpship
      Parameters:
      calcReport - A CalculationReport to write the report for the cost calculation to
      ignoreAmmo - When true, the cost of ammo on the unit will be excluded from the cost
      Returns:
      The cost in C-Bills of the 'Mek in question.
    • getPriceMultiplier

      public double getPriceMultiplier()
      Description copied from class: Entity
      Returns a multiplier that combines multiplicative construction cost modifiers for this Entity.

      This includes only modifiers that apply to an Entity's final, total cost (e.g. - the 1.25x modifier for being an omni-unit, or the 32.0x for being an aerodyne DropShip). It does NOT include multipliers that only apply to a sub-part of the unit (e.g. the weight based multiplier that applies to a vehicle's internal structure cost).

      This allows MekHQ to scale the price of a Unit's Parts in a more appropriate manner.

      Defaults to 1.0

      Overrides:
      getPriceMultiplier in class Jumpship
    • getECMRange

      public int getECMRange()
      Description copied from class: Aero
      What's the range of the ECM equipment?
      Overrides:
      getECMRange in class Jumpship
      Returns:
      the int range of this unit's ECM. This value will be Entity.NONE if no ECM is active.
    • isBattleStation

      public boolean isBattleStation()
      Overrides:
      isBattleStation in class Jumpship
    • getBVTypeModifier

      public double getBVTypeModifier()
      Description copied from class: Aero
      Not used directly but is overwritten in 5 other classes.
      Overrides:
      getBVTypeModifier in class Jumpship
      Returns:
      BV Type Modifier.
    • getEntityType

      public long getEntityType()
      Overrides:
      getEntityType in class Jumpship
    • isJumpShip

      public boolean isJumpShip()
      Description copied from interface: BTObject
      Returns true when this object is a JumpShip (but not a Space Station nor a WarShip). Returns false for any type of unit group.
      Specified by:
      isJumpShip in interface BTObject
      Overrides:
      isJumpShip in class Jumpship
      Returns:
      True when this is a JumpShip
    • isSpaceStation

      public boolean isSpaceStation()
      Description copied from interface: BTObject
      Returns true when this object is a SpaceStation (but not a WarShip nor a JumpShip). Returns false for any type of unit group.
      Returns:
      True when this is a SpaceStation
    • getGenericBattleValue

      public int getGenericBattleValue()
      Description copied from class: Entity
      Calculates a "generic" Battle Value that is based on the average of all units of this type and tonnage. The purpose of this generic Battle Value is to allow a comparison of this unit's actual BV to that for units of its class. This can be used to balance forces without respect to unit or pilot quality.

      The generic BV values are calculated by a statistical elasticity model based on all data from the MegaMek database.

      Overrides:
      getGenericBattleValue in class Jumpship
      Returns:
      The generic Battle value for this unit based on its tonnage and type