Package megamek.common
Class BattleArmor
java.lang.Object
megamek.common.TurnOrdered
megamek.common.Entity
megamek.common.Infantry
megamek.common.BattleArmor
- All Implemented Interfaces:
Serializable
,BTObject
,CombatRole
,Deployable
,ForceAssignable
,InGameObject
,ITechnology
,ITurnOrdered
,PhaseUpdated
,RoundUpdated
,Targetable
,Transporter
This class represents a squad or point of battle armor equipped infantry,
sometimes referred to as "Elementals". Much of the behaviour of a battle
armor unit is identical to that of an infantry platoon, and is rather
different from that of a Mek or Tank.
This was originally coded using the legacy programming style of putting
constants first in tests
so the compiler catches the "= for ==" errors.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class megamek.common.Entity
Entity.InvalidSourceBuildReason
Nested classes/interfaces inherited from interface megamek.common.ITechnology
ITechnology.AvailabilityValue, ITechnology.Era, ITechnology.Faction, ITechnology.FactionAffiliation, ITechnology.TechBase, ITechnology.TechRating
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
The internal name for advanced.static final int
/** The maximum number of men in a battle armor squad.static final String
The internal name for basic Stealth armor.static final String
The internal name for Simple Camo equipment.static final int
static final int
static final String
Internal name of the disposable NARC ammo pack.static final String
Internal name of the Inner disposable SRM2 ammo pack.static final String
The internal name for fire-resistant armor.static final String
The internal name for improved Stealth armor.static final int
The location for infantry equipment.static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final String[]
A list of the display names for the different manipulator types.static final int
static final int
static final String[]
A list of the internal names for the different manipulator types.static final String
The internal name for Mimetic armor.static final String
The internal name for the Mine Launcher weapon.static final int
static final int
static final String[]
static final int
The location for mounted equipment on BAstatic final int
static final int
static final int
How many mount locations are possible?protected int
The cost of this unit.static final String
The internal name for Single-Hex ECM equipment.static final String
The internal name for standard Prototype.static final String
The internal name for standard Stealth armor.static final String
The internal name for stealth Prototype.protected static final TechAdvancement[]
Fields inherited from class megamek.common.Infantry
ANTI_MEK_SKILL_NO_GEAR, BRIDGE_ENGINEERS, COMBAT_ENGINEERS, DEMO_ENGINEERS, DUG_IN_COMPLETE, DUG_IN_FORTIFYING1, DUG_IN_FORTIFYING2, DUG_IN_FORTIFYING3, DUG_IN_NONE, DUG_IN_WORKING, FIRE_ENGINEERS, INF_PLT_MAX_MEN, LEG_ATTACK, LOC_FIELD_GUNS, LOC_INFANTRY, MARINES, MINE_ENGINEERS, MOUNTAIN_TROOPS, NUM_SPECIALIZATIONS, originalTrooperCount, PARAMEDICS, PARATROOPS, SCUBA, SENSOR_ENGINEERS, squadCount, STOP_SWARM, SWARM_MEK, SWARM_WEAPON_MEK, TAG_TROOPS, TRENCH_ENGINEERS, turnsLayingExplosives, XCT
Fields inherited from class megamek.common.Entity
_isEMId, ALTERNATE_MASC_FAILURE, ALTERNATE_MASC_FAILURE_ENHANCED, altitude, ammoList, armorTechLevel, armorTechRating, armorTonnage, armorType, armsFlipped, asewAffectedTurns, aTracker, BLOOD_STALKER_TARGET_CLEARED, bMASCWentUp, bombList, boobyTrapInitiated, bSuperchargerWentUp, c3CompanyMasterIndex, c3Master, c3NetIdString, camouflage, canUnstickByJumping, carcass, chassis, clanChassisName, consecutiveRHSUses, convertingNow, coolFromExternal, crits, damageThisPhase, damageThisRound, delta_distance, designValid, destroyed, displacementAttack, DMG_CRIPPLED, DMG_HEAVY, DMG_LIGHT, DMG_MODERATE, DMG_NONE, dodging, DOES_NOT_TRACK_HEAT, done, doomed, elevation, engineHitsThisPhase, engineTechRating, equipmentList, ETYPE_AERO, ETYPE_AEROSPACEFIGHTER, ETYPE_ARMLESS_MEK, ETYPE_BATTLEARMOR, ETYPE_BIPED_MEK, ETYPE_CONV_FIGHTER, ETYPE_DROPSHIP, ETYPE_FIGHTER_SQUADRON, ETYPE_FIXED_WING_SUPPORT, ETYPE_GUN_EMPLACEMENT, ETYPE_HANDHELD_WEAPON, ETYPE_INFANTRY, ETYPE_JUMPSHIP, ETYPE_LAND_AIR_MEK, ETYPE_LARGE_SUPPORT_TANK, ETYPE_MEK, ETYPE_MEKWARRIOR, ETYPE_PROTOMEK, ETYPE_QUAD_MEK, ETYPE_QUADVEE, ETYPE_SMALL_CRAFT, ETYPE_SPACE_STATION, ETYPE_SUPER_HEAVY_TANK, ETYPE_SUPPORT_TANK, ETYPE_SUPPORT_VTOL, ETYPE_TANK, ETYPE_TELEMISSILE, ETYPE_TRIPOD_MEK, ETYPE_VTOL, ETYPE_WARSHIP, externalId, facing, failedEquipmentList, fell, findingClub, firingSolutions, fluff, game, gotPavementOrRoadBonus, GRAPPLE_BOTH, GRAPPLE_LEFT, GRAPPLE_RIGHT, hardenedArmorDamaged, hasDamagedRHS, hasExternalSearchlight, heat, heatBuildup, heatFromExternal, heatSinkCoolantFailureFactor, hiddenActivationPhase, hullDown, icon, id, iGame, illuminated, iNarcPods, incomingGuidedAttacks, infernos, initialBV, inReverse, isCarefulStanding, isHidden, isJumpingNow, jumpMP, killerId, lastTarget, lastTargetDisplayName, layingMines, LOC_DESTROYED, LOC_NONE, locationBlownOff, locationBlownOffThisPhase, m_lNarcedBy, m_lPendingNarc, madePointblankShot, manualBV, manualShutdown, MASC_FAILURE, MAX_C3_NODES, MAX_C3i_NODES, military, miscList, mixedTech, model, moved, movedLastRound, movementMode, mpUsed, mpUsedLastRound, mulId, narcPods, nCrew, nMarines, nMASCLevel, nPassenger, nSuperchargerLevel, omni, owner, ownerId, pendingINarcPods, pendingNarcPods, previousMovementMode, prone, reckless, rolledForEngineExplosion, searchlightIsActive, sec_facing, secondaryPositions, selfDestructedThisTurn, selfDestructing, selfDestructInitiated, sensorContacts, shutDown, shutdownByBATaser, shutDownThisPhase, source, spotting, STARTING_ANY_NONE, startupThisPhase, struck, structuralTechRating, structureTechLevel, structureType, stuckInSwamp, TA_ARMORED_COMPONENT, TA_MIXED_TECH, TA_OMNI, TA_PATCHWORK_ARMOR, taggedBy, targetBay, taserFeedBackRounds, taserInterference, taserInterferenceHeat, taserInterferenceRounds, taserShutdownRounds, techLevel, tmTracker, totalWeaponList, traitorId, twistedPhase, underwaterRounds, unjammingRAC, UNLIMITED_JUMP_DOWN, usedMASC, usedSearchlight, usedSupercharger, useManualBV, vectors, walkMP, weaponBayList, weaponGroupList, weaponList, weight, wigeBonus, year
Fields inherited from interface megamek.common.ITechnology
DATE_ES, DATE_NONE, DATE_PS
Fields inherited from interface megamek.common.Targetable
TYPE_BLDG_IGNITE, TYPE_BLDG_TAG, TYPE_BUILDING, TYPE_ENTITY, TYPE_FLARE_DELIVER, TYPE_FUEL_TANK, TYPE_FUEL_TANK_IGNITE, TYPE_HEX_AERO_BOMB, TYPE_HEX_ARTILLERY, TYPE_HEX_BOMB, TYPE_HEX_CLEAR, TYPE_HEX_EXTINGUISH, TYPE_HEX_IGNITE, TYPE_HEX_SCREEN, TYPE_HEX_TAG, TYPE_INARC_POD, TYPE_MINEFIELD_CLEAR, TYPE_MINEFIELD_DELIVER, TYPE_SEARCHLIGHT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addEquipment
(Mounted<?> mounted, int loc, boolean rearMounted) Mounts the specified equipment in the specified location.void
Update the unit to reflect damages taken in this phase.void
Set the troopers in the unit to the appropriate values.int
boolean
boolean
can this BattleArmor ride as Mechanized BA?boolean
boolean
Returns true if thisBattleArmor
can use a detachable weapon pack.boolean
canTransferCriticals
(int loc) Returns true if this location should transfer criticals to the next location inwards.boolean
boolean
static TechAdvancement
int
double
The alternate cost here is used by MekHQ to create costs that reflect just the cost of equipment.double
int
int
getArmor
(int loc, boolean rear) Battle Armor units have no armor on their squad location.String[]
static String
getBaMountLocAbbr
(int loc) int
int
return - the base construction option tech advancementstatic TechAdvancement
getConstructionTechAdvancement
(int weightClass) double
getCost
(CalculationReport calcReport, boolean ignoreAmmo) Calculates and returns the C-bill cost of the unit.long
int
Calculates a "generic" Battle Value that is based on the average of all units of this type and tonnage.int
getInternal
(int loc) Battle Armor units have no internals on their squad location.int
getJumpMP
(MPCalculationSetting mpCalculationSetting) Mounted<?>
Returns theMounted
for the manipulator mounted in the left arm of thisBattleArmor
squad.Returns theEquipmentType
internal name for the manipulator mounted in the left arm of thisBattleArmor
squad.String[]
getLocationDamage
(int loc) String[]
int
Public interface to the BattleArmors long range stealth modifierint
int
int
getMaximumJumpMP
(boolean ignoreEquipment) Returns the maximum jump MP that this BA can have.int
int
Public interface to the BattleArmors medium range stealth modifierReturns the abbreviation of the type of movement used.Returns the name of the type of movement used.protected int[]
Battle Armor units have as many critical slots as they need to hold their equipment.int
getNumAllowedAntiMekWeapons
(int loc) Returns the number of allowed anti-mek weapons the supplied location can mount.int
getNumAllowedAntiPersonnelWeapons
(int loc, int trooper) Returns the number of allowed anti-personnel weapons the location can mount.int
int
getNumCrits
(int loc) int
getOArmor
(int loc, boolean rear) Battle Armor units have no armor on their squad location.int
getOInternal
(int loc) Battle Armor units have no internals on their squad location.int
Returns this entity's original jumping mp.int
int
Mounted<?>
Returns theMounted
for the manipulator mounted in the right arm of thisBattleArmor
squad.Returns theEquipmentType
internal name for the manipulator mounted in the right arm of thisBattleArmor
squad.int
getRunMP
(MPCalculationSetting mpCalculationSetting) int
Get the number of men in the unit (before damage is applied).int
Public interface to the BattleArmors short range stealth modifierint
Used to determine the draw priority of different Entity subclasses.getStealthModifier
(int range, Entity ae) Determine the stealth modifier for firing at this unit from the given range.Returns the name of the stealth Armor used by the BA.int
Battle Armor units don't transfer damage.getTrooperAtLocation
(HitData hit, Entity transport) For level 3 rules, each trooper occupies a specific location precondition: hit is a location covered by BAint
double
int
int
int
Return how many BA vibroclaws thisEntity
is equipped withint
getWalkMP
(MPCalculationSetting mpCalculationSetting) int
getWeaponArc
(int weaponNumber) Returns the Rules.ARC that the weapon, specified by number, fires into.double
int
boolean
return if the BA has any kind of active probeboolean
boolean
hasDWP()
does this BA have an unjettisoned DWP?boolean
boolean
hasHittableCriticals
(int loc) Trooper's equipment dies when they do.boolean
return if this BA has improved sensorsboolean
Convenience method for determining if the BA has magnetic clamps.boolean
boolean
does this ba mount a myomer booster?boolean
Returns true when this object is a BattleArmor unit or of type BA for Alpha Strike.boolean
Determines if the battle armor unit is burdened with un-jettisoned equipment.boolean
boolean
Returns true when this object is a Conventional Infantry unit or of type CI for Alpha Strike.boolean
Returns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258.boolean
Returns TRUE if the entity has been heavily damaged.boolean
Returns TRUE if the entity has been lightly damaged.boolean
Returns TRUE if the entity has been moderately damaged.boolean
Tanks and certain other units can get a +1 bonus to MP if their move is entirely on pavement.boolean
protected boolean
isFieldWeapon
(Mounted<?> equipment) boolean
return if this BA has fire resistant armorboolean
do we have a half-hit hardened armor point in the location struck by this?boolean
boolean
Checks if the unit is hardened against nuclear strikes.boolean
return if this BA has reactive armorboolean
return if this BA has laser reflective armorboolean
Determine if this unit has an active stealth system.boolean
boolean
isTrooperActive
(int trooperNum) boolean
loadWeapon
(WeaponMounted mounted, AmmoMounted mountedAmmo) Tries to load the specified weapon with the specified ammo.boolean
loadWeaponWithSameAmmo
(WeaponMounted mounted, AmmoMounted mountedAmmo) Tries to load the specified weapon with the specified ammo.int
Returns the number of Troopers in the BattleArmor squad, since locations for BattleArmor correspond to the different suits instead of the actual mount locations for equipment.void
newRound
(int roundNumber) Prepare the entity for a new round of action.rollHitLocation
(int table, int side) Rolls up a hit locationrollHitLocation
(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) Battle Armor units can only get hit in undestroyed troopers.rollHitLocation
(int side, int aimedLocation, AimingMode aimingMode, boolean isAttackingConvInfantry) Battle Armor units can only get hit in undestroyed troopers.void
setArmorType
(int armType) void
setChassisType
(int inCT) void
setClanExoWithoutHarjel
(boolean clanExoWithoutHarjel) void
setCost
(int inC) void
setInternal
(int value) Set the troopers in the unit to the given values.void
setIsExoskeleton
(boolean exoskeleton) void
setModularTurret
(boolean modular) void
setTroopers
(int troopers) void
setTurretSize
(int capacity) void
setWeightClass
(int inWC) Methods inherited from class megamek.common.Infantry
activeFieldWeapons, addEntityBonuses, addSystemTechAdvancement, antiTSMVulnerable, calcDamageDivisor, canChangeSecondaryFacing, canCharge, canDFA, checkBogDown, checkBogDown, checkLandingInHeavyWoods, checkSkid, clipSecondaryFacing, createLocalSupport, damageFieldWeapons, damageOrRestoreFieldWeapons, defaultCrewType, getActiveUMUCount, getAllUMUCount, getAntiMekSkill, getArmorDamageDivisor, getArmorDesc, getArmorKit, getCanCallSupport, getCombatEngineerTA, getDamagePerTrooper, getDugIn, getEngineHits, getInternalRemainingPercent, getIsCallingSupport, getMarineTA, getMaxElevationChange, getMotiveTechAdvancement, getMotiveTechAdvancement, getMount, getMountainTA, getMovementModeAsString, getParamedicTA, getParatrooperTA, getPriceMultiplier, getPrimaryWeapon, getPrimaryWeaponDamage, getSecondaryWeapon, getSecondaryWeaponsPerSquad, getSpecializationName, getSpecializations, getSpecializationTooltip, getSquadCount, getSquadSize, getTAGTroopsTA, getTotalCommGearTons, hasActiveFieldArtillery, hasActiveFieldWeapon, hasAntiMekGear, hasDEST, hasEngine, hasFieldWeapon, hasMicrolite, hasPatchworkArmor, hasSneakCamo, hasSneakECM, hasSneakIR, hasSpaceSuit, hasSpecialization, hasSpecialization, hasUMU, hasValidCover, hasViableWeapons, height, initializeInternal, isArmorEncumbering, isCrippled, isElevationValid, isEligibleFor, isEligibleForFiring, isLocationProhibited, isMechanized, isNonMechSCUBA, isSecondaryArcWeapon, isSquad, isTakingCover, isUsingManAce, isValidSecondaryFacing, isXCT, originalFieldWeapons, primaryWeaponDamageCapped, requiredCrewForFieldWeapon, restore, restoreUncrewedFieldWeapons, setArmorDamageDivisor, setArmorEncumbering, setArmorKit, setCanCallSupport, setDEST, setDugIn, setInternal, setIsCallingSupport, setMicrolite, setMotorizedScuba, setMount, setMovementMode, setPrimaryWeapon, setSecondaryWeapon, setSecondaryWeaponsPerSquad, setSneakCamo, setSneakECM, setSneakIR, setSpaceSuit, setSpecializations, setSquadCount, setSquadSize, setTakingCover, setTransportId, victoryReport
Methods inherited from class megamek.common.Entity
addAttackedByThisTurn, addBeenDetectedBy, addBeenSeenBy, addBomb, addBomb, addClanCase, addConditionBonuses, addCoolantFailureAmount, addCritical, addCritical, addCritical, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addFailedEquipment, addFiringSolution, addGroundAttackedByThisTurn, addIMPHits, addKill, addOffBoardObserver, addPassedThrough, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addSensorContact, addTargetedBySwarm, addTechComponent, addTowedUnit, addTransporter, addTransporter, addTsempHitThisTurn, addWeaponGroup, applyGravityEffectsOnMP, armorStringFor, assignAMS, assignTMAMS, assignWeaponQuirk, attachINarcPod, attachNarcPod, braceLocation, C3MasterIs, calcElevation, calcElevation, calculateBattleValue, calculateBattleValue, calculateBattleValue, calculateBattleValue, calculateFreeC3MNodes, calculateFreeC3Nodes, canActivateBloodStalker, canAssist, canBrace, canEscape, canFall, canFall, canFireWeapon, canFlee, canFlee, canFlipArms, canGoDown, canGoDown, canGoHullDown, canGoUp, canLayMine, canLoad, canLoad, canonUnitWithInvalidBuild, canPickupGroundObject, canRam, canSpot, canTow, canUnjamRAC, canUnstickByJumping, checkDislodgeSwarmers, checkForMASCFailure, checkForSuperchargerFailure, checkGetUp, checkGunningIt, checkLandingOnBlackIce, checkLandingOnIce, checkLandingWithDamage, checkLandingWithPrototypeJJ, checkMovedTooFast, checkMovementInBuilding, checkRecklessMove, checkRubbleMove, checkRunningWithDamage, checkSideSlip, checkSprintingWithMASCAndSupercharger, checkSprintingWithMASCXorSupercharger, checkTurnModeFailure, checkUnstall, checkUsingOverdrive, checkWaterMove, checkWaterMove, chooseSide, clearAttackedByThisTurn, clearBombs, clearDestroyedNarcPods, clearDetectedBy, clearFiringSolutions, clearNarcAndiNarcPods, clearPartialRepairs, clearSeenBy, clearSensorContacts, climbMode, countEquipment, countForStrengthSum, countMisc, countPartialRepairs, countQuirks, countQuirks, countWeaponQuirks, countWorkingMisc, countWorkingMisc, countWorkingMisc, critStateCount, damageBayDoor, damagedJumpJets, damageDockCollar, damageDoorRecovery, damagedSCMCritCount, damageSystem, damageSystem, deactivateRadicalHS, deployOffBoard, destroy, destroyLocation, destroyLocation, destroyOneSearchlight, destroyRetractableBlade, disconnectUnit, doBattleValueCalculation, doCheckEngineStallRoll, doomedInAtmosphere, doomedInSpace, doomedOnGround, dropGroundObject, dropGroundObject, dropGroundObjects, elevationOccupied, elevationOccupied, endOfTurnCargoInteraction, entityIsQuad, equals, extendBlade, factionTechLevel, findTargetedDisplacement, fixElevation, formatHeat, gameOptions, generalName, generateDisplayName, generateShortName, getActiveAMS, getActiveSensor, getActiveSubEntities, getActiveVibrobladeHeat, getActiveVibrobladeHeat, getAllGyroCodeName, getAllowedPhysicalAttacks, getAllTowedUnits, getAlreadyTwisted, getAltitude, getAmmo, getAmmo, getAmmo, getAnyTypeMaxJumpMP, getArmedMPBoosters, getArmor, getArmor, getArmoredComponentTechAdvancement, getArmorForReal, getArmorForReal, getArmorRemainingPercent, getArmorString, getArmorString, getArmorTechLevel, getArmorTechRating, getArmorType, getArmorWeight, getArmorWeight, getArmsFlipped, getASEWAffected, getAttackedByThisTurn, getBadCriticals, getBAPRange, getBARRating, getBase64Icon, getBaseAvailability, getBaseChassisFireConWeight, getBaseChassisValue, getBaseEngineValue, getBasePilotingRoll, getBasePilotingRoll, getBay, getBayByAmmo, getBayById, getBayLoadedUnitIds, getBayPersonnel, getBlockedFiringLocations, getBloodStalkerTarget, getBlueShieldRounds, getBoardId, getBodyLocation, getBombLoadout, getBombLoadout, getBombs, getBombs, getBoobyTrap, getBoobyTrapDamage, getBraceMPCost, getBvCalculator, getC3iNextUUIDAsString, getC3Master, getC3MasterId, getC3MasterIsUUIDAsString, getC3NetId, getC3Top, getC3UUIDAsString, getCamouflage, getCamouflageOrElse, getCamouflageOrElse, getCamouflageOrElseOwners, getCargoMpReduction, getCarriedObject, getCarriedObjects, getChassis, getClanChassisName, getClubs, getCollarById, getCommonDate, getCommonDateRange, getConnectedUnits, getConsecutiveRHSUses, getConversionMode, getCoolantFailureAmount, getCost, getCrew, getCritical, getCriticalSlots, getCustomWeaponOrder, getCustomWeaponOrder, getDamagedCriticals, getDamageLevel, getDamageLevel, getDamageReductionFromModularArmor, getDefaultPickupLocations, getDependentLocation, getDeployRound, getDisplacementAttack, getDisplayName, getDistinctCarriedObjects, getDockingCollars, getDocks, getDocks, getDroppableUnits, getDuplicateMarker, getEarliestTechDate, getEarliestTechDateAndEra, getECCMInfo, getECCMStrength, getECMInfo, getECMRange, getECMStrength, getElevation, getEmptyCriticals, getEngine, getEngineCritHeat, getEngineTechRating, getEngineType, getEntityMajorTypeName, getEntityTypeName, getEquipment, getEquipment, getEquipmentForWeaponQuirk, getEquipmentNum, getEquipmentType, getEvasionBonus, getExteriorUnitAt, getExternalBombLoadout, getExternalId, getExternalIdAsString, getExternalUnits, getExtinctionDate, getExtinctionDate, getExtinctionRange, getExtraC3BV, getExtraCommGearTons, getExtremeRangeModifier, getFacing, getFacingName, getFailedEquipment, getFighterBays, getFiringSolutions, getFleeZone, getFluff, getFluffImage, getForceId, getForceString, getForwardArc, getFreeC3iUUID, getFreeNC3UUID, getFullChassis, getGame, getGaveKillCredit, getGhostTargetOverride, getGhostTargetRoll, getGhostTargetRollMoS, getGoodCriticals, getGrappled, getGrappleSide, getGroundAttackedByThisTurn, getGyroType, getHeading, getHeat, getHeatCapacity, getHeatCapacity, getHeatCapacityWithWater, getHeatFiringModifier, getHeatInArc, getHeatMPReduction, getHeight, getHiddenActivationPhase, getHitchCarrying, getHitchLocations, getHitCriticals, getHittableCriticals, getHQIniBonus, getIcon, getId, getINarcPodsAttached, getIndividualWeaponList, getInitialBV, getInternal, getInternalBombLoadout, getInternalForReal, getInternalString, getIntroductionDate, getIntroductionDate, getIntroductionDateAndEra, getInvalidSourceBuildReasons, getIsJumpingNow, getJumpHeat, getJumpMP, getJumpMPWithTerrain, getJumpType, getKillerId, getKillNumber, getKills, getLabArmorTonnage, getLabTotalArmorPoints, getLastTarget, getLastTargetDisplayName, getLaunchableDropships, getLaunchableFighters, getLaunchableSmallCraft, getLoadedKeepers, getLoadedTrailers, getLoadedUnits, getLocationAbbr, getLocationAbbr, getLocationFromAbbr, getLocationName, getLocationName, getLocationStatus, getLongRangeModifier, getLOSRangeModifier, getManualBV, getMASC, getMASCTarget, getMASCTurns, getMaxElevationDown, getMaxElevationDown, getMaxWeaponRange, getMaxWeaponRange, getMechanicalJumpBoosterMP, getMechanicalJumpBoosterMP, getMediumRangeModifier, getMisc, getMisc, getMiscEquipment, getMixedTechAdvancement, getModel, getMotiveSideMod, getMovedBackwards, getMovementBeforeSkidPSRModifier, getMovementMode, getMPBoosters, getMPBoosters, getMpUsedLastRound, getMulId, getNC3NextUUIDAsString, getNCrew, getNewRoundNovaNetworkString, getNextSensor, getNMarines, getNPassenger, getNumberOfCriticals, getNumberOfCriticals, getNumberOfCriticals, getNumberOfCriticals, getNumberOfShields, getOArmor, getOArmor, getOccupiedCoords, getOffBoardDirection, getOffBoardDistance, getOInternal, getOmniAdvancement, getOmniAdvancement, getOriginalBuildYear, getOriginalJumpMP, getOriginalNovaC3NetId, getOriginalRunMP, getOriginalWalkMP, getOwner, getOwnerId, getPartialRepairs, getPassedThrough, getPassedThroughBoardId, getPassedThroughFacing, getPatchworkArmorAdvancement, getPickedUpMekWarriors, getPlayerPickedPassThrough, getPodMountedTroopCarryingSpace, getPosition, getPowerAmplifierWeight, getPriorPosition, getProductionDate, getProductionDate, getProductionDateRange, getPrototypeDate, getPrototypeDate, getPrototypeRangeDate, getQuirkIniBonus, getQuirkList, getQuirks, getRearArc, getRecoveryTurn, getReintroductionDate, getReintroductionDate, getRemovalCondition, getRetreatedDirection, getRole, getRunHeat, getRunMP, getRunMPasString, getRunMPasString, getRunMPwithoutMASC, getRunningGravityLimit, getsAutoExternalSearchlight, getSecondaryFacing, getSecondaryPositions, getSelfDestructedThisTurn, getSelfDestructing, getSelfDestructInitiated, getSensorCheck, getSensorContacts, getSensors, getShortName, getShortNameRaw, getShortRangeModifier, getSource, getSpotTargetId, getSprintHeat, getSprintMP, getSprintMP, getSprintMPwithOneMASC, getSprintMPwithoutMASC, getStandingHeat, getStartingAnyNWx, getStartingAnyNWx, getStartingAnyNWy, getStartingAnyNWy, getStartingAnySEx, getStartingAnySEx, getStartingAnySEy, getStartingAnySEy, getStartingOffset, getStartingOffset, getStartingPos, getStartingPos, getStartingWidth, getStartingWidth, getStaticTechLevel, getStrength, getStructuralTechRating, getStructureTechLevel, getStructureType, getSubEntities, getSuperCharger, getSuperchargerTarget, getSuperchargerTurns, getSwarmAttackerId, getSwarmTargetId, getTaggedBy, getTargetBay, getTargetedBySwarm, getTargetType, getTaserFeedBackRounds, getTaserInterference, getTaserInterferenceHeat, getTaserInterferenceRounds, getTaserShutdownRounds, getTechBase, getTechBaseDescription, getTechBaseDescriptions, getTechLevel, getTechLevelYear, getTechRating, getTilesetModeString, getTMTracker, getTotalAmmoOfType, getTotalArmor, getTotalInternal, getTotalMunitionsOfType, getTotalOArmor, getTotalOInternal, getTotalWeaponList, getTowedBy, getTowing, getTractor, getTraitorId, getTransferLocation, getTransportBays, getTransportId, getTransports, getTroopCarryingSpace, getTsempEffect, getTsempHitsThisTurn, getUnitNumber, getUnitsUnloadableFromBays, getUnitsUnloadableFromNonBays, getUnloadableUnits, getUnused, getUnused, getUnusedString, getUnusedString, getUseManualBV, getValidBraceLocations, getValidHalfWeightPickupLocations, getVector, getVectors, getVelocity, getWalkHeat, getWalkMP, getWeapon, getWeaponBayList, getWeaponGroupList, getWeaponList, getWeapons, getWeaponSortOrder, getWeightClassName, getWhoCanDetect, getWhoCanSee, getYear, hasAbility, hasAbility, hasActivatedRadicalHS, hasActiveBlueShield, hasActiveECCM, hasActiveECM, hasActiveECM, hasActiveEiCockpit, hasActiveNovaCEWS, hasActiveShield, hasActiveShield, hasAimModeTargComp, hasAnyC3System, hasAnyTypeNarcPodsAttached, hasArcFired, hasArmoredChassis, hasArmoredEngine, hasBAP, hasBAP, hasBARArmor, hasBattleArmorHandles, hasBoobyTrap, hasBoostedC3, hasC3, hasC3i, hasC3M, hasC3MM, hasC3S, hasCase, hasCASEII, hasCASEII, hasCommandConsoleBonus, hasDamagedRHS, hasDetectedEntity, hasDisplacementAttack, hasDroneOs, hasECM, hasEmbeddedIcon, hasEnvironmentalSealing, hasETypeFlag, hasExternalSearchlight, hasFallen, hasFiredTsemp, hasFiringSolutionFor, hasFleeZone, hasFlotationHull, hasFunctionalArmAES, hasFunctionalLegAES, hasGhostTargets, hasHardenedArmor, hasHarJelIn, hashCode, hasHierarchicalC3, hasHipCrit, hasINarcPodsAttached, hasInfernoAmmo, hasLegActuatorCrit, hasLinkedMGA, hasMisc, hasMisc, hasMisc, hasModularArmor, hasModularArmor, hasMulId, hasNarcPodsAttached, hasNavalC3, hasNhC3, hasNoDefenseShield, hasNovaCEWS, hasOccupiedHex, hasPassiveShield, hasPassiveShield, hasQuirk, hasRearArmor, hasSCM, hasSearchlight, hasSeenEntity, hasSensorContactFor, hasShield, hasStealth, hasSystem, hasTAG, hasTargComp, hasUndamagedCriticalSlots, hasUnloadedUnitsFromBays, hasVibroblades, hasWorkingMisc, hasWorkingMisc, hasWorkingMisc, hasWorkingMisc, hasWorkingSCM, hasWorkingSystem, hitAllCriticals, implicitClanCASE, incrementMASCAndSuperchargerLevels, initializeArmor, initMilitary, initTechAdvancement, isActive, isActive, isActiveOption, isAeroLandedOnGroundMap, isAeroSensorDestroyed, isAirborne, isAirborneAeroOnGroundMap, isAirborneVTOLorWIGE, isAssaultDropInProgress, isAttackingThisTurn, isBATaserShutdown, isBoardProhibited, isBoardProhibited, isBoobyTrapInitiated, isBracing, isC3CompanyCommander, isC3IndependentMaster, isCanon, isCapitalFighter, isCapitalFighter, isCapitalScale, isCaptured, isCarcass, isCarefulStand, isChainWhipGrappled, isChameleonShieldActive, isChameleonShieldOn, isCharging, isClan, isClanArmor, isClearingMinefield, isCommander, isConvertingNow, isDeployed, isDesignValid, isDestroyed, isDetectedByEnemy, isDone, isDoomed, isDropping, isEjectionPossible, isEligibleForArtyAutoHitHexes, isEligibleForMovement, isEligibleForOffboard, isEligibleForPhysical, isEligibleForTargetingPhase, isEnemyOf, isEvading, isEverSeenByEnemy, isFindingClub, isFiredTsempThisTurn, isGrappleAttacker, isGrappledThisRound, isGyroDestroyed, isHidden, isHullDown, isIlluminated, isImmobile, isImmobile, isImmobileForJump, isINarcedBy, isINarcedWith, isInBuilding, isIntroLevel, isJumpingWithMechanicalBoosters, isLargeCraft, isLayingMines, isLoadableThisTurn, isLocationBad, isLocationBlownOff, isLocationBlownOffThisPhase, isLocationDeadly, isLocationDeadly, isLocationDoomed, isLocationProhibited, isLocationProhibited, isLocationProhibited, isLocationProhibited, isLocationTrulyDestroyed, isMakingDfa, isMakingVTOLGroundAttack, isManualShutdown, isMASCUsed, isMilitary, isMixedTech, isNarcedBy, isNaval, isNightwalker, isNOE, isNullSigActive, isNullSigOn, isOffBoard, isOffBoardObserved, isOmni, isOnAtmosphericGroundMap, isPartOfFighterSquadron, isPermanentlyImmobilized, isPodMountedTransport, isPowerReverse, isPrimitive, isProne, isPushing, isRamming, isReckless, isRepairable, isSalvage, isSelectableThisTurn, isSensorReturn, isShutDown, isShutDownThisPhase, isSpaceborne, isSpotting, isStalled, isStartupThisPhase, isStealthOn, isStuck, isSufferingEMI, isSuperchargerUsed, isSuperHeavy, isSurfaceNaval, isTargetable, isTargetOfDisplacementAttack, isTractor, isTrailer, isTransported, isTrapped, isUnderwater, isUnjammingRAC, isUnloadedThisTurn, isUnofficial, isUsingSearchlight, isVisibleToEnemy, isVoidSigActive, isVoidSigOn, isWeaponBlockedAt, isWeaponBlockedByTowing, isWeaponValidForPhase, isWeapOrderChanged, itemOppositeTech, joinLocationAbbr, load, load, load, load, loadAllWeapons, loadDefaultCustomWeaponOrder, loadedUnitsHaveActiveECM, loadQuirks, loadWeapon, loadWeaponWithSameAmmo, locationHasCase, locationIsLeg, madePointblankShot, maxGroundObjectTonnage, modifyPhysicalDamageForMeleeSpecialist, needsRollToStand, newPhase, newRoundNovaNetSwitch, nextConversionMode, onSameC3NetworkAs, onSameC3NetworkAs, passedOver, passedThrough, passedThroughPrevious, passedWithin, performManualShutdown, performManualStartup, pickUp, pickupGroundObject, postProcessFacingChange, recalculateTechAdvancement, recover, refreshLocations, relHeight, reloadEmptyWeapons, removeAllINarcPods, removeAllTransporters, removeCriticals, removeFiringSolution, removeINarcPod, removeMisc, removePartialCoverHits, removeSensorContact, removeTowedUnit, removeTransporter, resetBayDoors, resetBays, resetBombAttacks, resetCoolantFailureAmount, resetFiringArcs, resetTransporter, rollMovementInBuilding, scmCritStateCount, setAlreadyTwisted, setAltitude, setArcFired, setArmor, setArmor, setArmor, setArmorTechLevel, setArmorTechLevel, setArmorTechRating, setArmorTechRating, setArmorTonnage, setArmorType, setArmorType, setArmorType, setArmsFlipped, setArmsFlipped, setASEWAffected, setAssaultDropInProgress, setBARRating, setBARRating, setBaseChassisFireConWeight, setBATaserShutdown, setBloodStalkerTarget, setBoardId, setBoobyTrapInitiated, setBraceLocation, setC3iNextUUIDAsString, setC3Master, setC3Master, setC3MasterIsUUIDAsString, setC3NetId, setC3NetId, setC3NetIdSelf, setC3UUID, setC3UUIDAsString, setCamouflage, setCanon, setCanUnstickByJumping, setCaptured, setCarcass, setCarefulStand, setCarriedObjects, setChassis, setClanChassisName, setClearingMinefield, setClimbMode, setCommander, setConsecutiveRHSUses, setConversionMode, setConvertingNow, setCrew, setCritical, setCustomWeaponOrder, setCustomWeaponOrder, setDeployed, setDeployRound, setDesignValid, setDestroyed, setDetectedByEnemy, setDisplacementAttack, setDisplayName, setDone, setDoomed, setDuplicateMarker, setElevation, setEMI, setEngine, setEngineTechRating, setEngineTechRating, setEvading, setEverSeenByEnemy, setExternalId, setExternalIdAsString, setExternalSearchlight, setFacing, setFallen, setFindingClub, setFiredTsempThisTurn, setFleeZone, setForceId, setForceString, setGame, setGameOptions, setGrappled, setGrappledThisRound, setGrappleSide, setHardenedArmorDamaged, setHasDamagedRHS, setHasFiredTsemp, setHidden, setHiddenActivationPhase, setHullDown, setIcon, setId, setIGame, setIlluminated, setInitialBV, setInternal, setInvalidSourceBuildReasons, setIsJumpingNow, setJumpingWithMechanicalBoosters, setLandedAssaultDrop, setLastTarget, setLastTargetDisplayName, setLayingMines, setLoadedKeepers, setLoadedThisTurn, setLocationBlownOff, setLocationBlownOffThisPhase, setLocationStatus, setLocationStatus, setMadePointblankShot, setManualBV, setManualShutdown, setMASCUsed, setMixedTech, setModel, setMovedBackwards, setMulId, setNC3NextUUIDAsString, setNCrew, setNeverDeployed, setNewRoundNovaNetworkString, setNextSensor, setNMarines, setNPassenger, setOffBoard, setOmni, setOriginalBuildYear, setOriginalJumpMP, setOriginalWalkMP, setOwner, setOwnerId, setPassedThrough, setPassedThroughBoardId, setPassedThroughFacing, setPlayerPickedPassThrough, setPosition, setPosition, setPowerReverse, setProne, setQuirks, setRamming, setRapidFire, setReckless, setRecoveryTurn, setRemovalCondition, setRetreatedDirection, setSalvage, setSearchlightState, setSecondaryFacing, setSecondaryFacing, setSelfDestructedThisTurn, setSelfDestructing, setSelfDestructInitiated, setShutDown, setShutDownThisPhase, setSource, setSpotTargetId, setSpotting, setStartingAnyNWx, setStartingAnyNWy, setStartingAnySEx, setStartingAnySEy, setStartingOffset, setStartingPos, setStartingWidth, setStartupThisPhase, setStruck, setStructuralTechRating, setStructuralTechRating, setStructureTechLevel, setStructureType, setStructureType, setStuck, setSuperchargerUsed, setSwarmAttackerId, setSwarmTargetId, setTaggedBy, setTargetBay, setTaserFeedback, setTaserInterference, setTaserShutdownRounds, setTechLevel, setTowedBy, setTowing, setTractor, setTraitorId, setTsempEffect, setTurnInterrupted, setUnitNumber, setUnitRole, setUnjammingRAC, setUnloaded, setUsedSearchlight, setUseManualBV, setVectors, setVisibleToEnemy, setWeaponHit, setWeaponSortOrder, setWeapOrderChanged, setWeight, setWhoCanDetect, setWhoCanSee, setWigeLiftoffHover, setYear, shouldDeploy, shouldOffBoardDeploy, shouldUseEdge, sideTable, sideTable, sideTable, sideTable, sideTableRam, sideTableRam, slotNumber, specificName, statusToString, statusToString, statusToString, taserShutdown, toggleConversionMode, toString, towUnit, turnWasInterrupted, unload, updateBays, updateDuplicateMarkerAfterDelete, usedSearchlight, usedTag, usesTurnMode, usesWeaponBays, wasLoadedThisTurn, wasNeverDeployed, wasStruck, weaponFired, weaponFiredFrom, whichBay, wigeLiftoffHover
Methods inherited from class megamek.common.TurnOrdered
clearInitiative, generateTurnOrder, getAeroTurns, getDropshipTurns, getEvenTurns, getInitCompensationBonus, getInitiative, getJumpshipTurns, getMultiTurns, getNormalTurns, getOtherTurns, getSmallCraftTurns, getSpaceStationTurns, getTeleMissileTurns, getWarshipTurns, incrementAeroTurns, incrementDropshipTurns, incrementEvenTurns, incrementJumpshipTurns, incrementMultiTurns, incrementOtherTurns, incrementSmallCraftTurns, incrementSpaceStationTurns, incrementTeleMissileTurns, incrementWarshipTurns, resetAeroTurns, resetDropshipTurns, resetEvenTurns, resetInitiativeCompensation, resetJumpshipTurns, resetMultiTurns, resetOtherTurns, resetSmallCraftTurns, resetSpaceStationTurns, resetTeleMissileTurns, resetWarshipTurns, rollInitAndResolveTies, rollInitAndResolveTies, rollInitiative, rollInitiative, setInitCompensationBonus, setInitiative
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface megamek.common.BTObject
hasAerodyneSpheroidDistinction, isAero, isAerodyne, isAerospace, isAerospaceFighter, isAerospaceSV, isBattleMek, isCarryableObject, isCombatVehicle, isConventionalFighter, isDropShip, isFighter, isFixedWingSupport, isGround, isHandheldWeapon, isIndustrialMek, isInfantry, isJumpShip, isLargeAerospace, isMek, isObjectiveMarker, isProtoMek, isQuadMek, isSingleUnit, isSmallCraft, isSpaceStation, isSpheroid, isSupportVehicle, isTripodMek, isUnitGroup, isVehicle, isWarShip
Methods inherited from interface megamek.common.CombatRole
hasRole
Methods inherited from interface megamek.common.ForceAssignable
partOfForce
Methods inherited from interface megamek.common.InGameObject
hasOwner
Methods inherited from interface megamek.common.ITechnology
calcEraAvailability, calcEraAvailability, calcYearAvailability, calcYearAvailability, calcYearAvailability, findMinimumRulesLevel, findMinimumRulesLevel, getAdvancedRange, getAdvancedRange, getCodeFromIOAbbr, getCodeFromMMAbbr, getCommonDate, getEraAvailabilityName, getEraAvailabilityName, getExperimentalRange, getExperimentalRange, getExtinctionDate, getExtinctionRange, getFullRatingName, getFullRatingName, getIntroductionDate, getProductionDate, getPrototypeDate, getReintroductionDate, getSimpleLevel, getSimpleLevel, getSimpleLevel, getStandardRange, getStandardRange, getTechLevel, getTechLevel, getTechRatingName, isAvailableIn, isAvailableIn, isAvailableIn, isExtinct, isExtinct, isExtinct, isLegal, isLegal
Methods inherited from interface megamek.common.Targetable
getBoardLocation, isBomber, isHexBeingBombed, isOnBoard, tracksHeat
Methods inherited from interface megamek.common.Transporter
canTow, getNumberLoadedThisTurn, getNumberUnloadedThisTurn, getType, hardpointCost
-
Field Details
-
MANIPULATOR_NONE
public static final int MANIPULATOR_NONE- See Also:
-
MANIPULATOR_ARMORED_GLOVE
public static final int MANIPULATOR_ARMORED_GLOVE- See Also:
-
MANIPULATOR_BASIC
public static final int MANIPULATOR_BASIC- See Also:
-
MANIPULATOR_BASIC_MINE_CLEARANCE
public static final int MANIPULATOR_BASIC_MINE_CLEARANCE- See Also:
-
MANIPULATOR_BATTLE
public static final int MANIPULATOR_BATTLE- See Also:
-
MANIPULATOR_BATTLE_MAGNET
public static final int MANIPULATOR_BATTLE_MAGNET- See Also:
-
MANIPULATOR_BATTLE_VIBRO
public static final int MANIPULATOR_BATTLE_VIBRO- See Also:
-
MANIPULATOR_HEAVY_BATTLE
public static final int MANIPULATOR_HEAVY_BATTLE- See Also:
-
MANIPULATOR_HEAVY_BATTLE_MAGNET
public static final int MANIPULATOR_HEAVY_BATTLE_MAGNET- See Also:
-
MANIPULATOR_HEAVY_BATTLE_VIBRO
public static final int MANIPULATOR_HEAVY_BATTLE_VIBRO- See Also:
-
MANIPULATOR_SALVAGE_ARM
public static final int MANIPULATOR_SALVAGE_ARM- See Also:
-
MANIPULATOR_CARGO_LIFTER
public static final int MANIPULATOR_CARGO_LIFTER- See Also:
-
MANIPULATOR_INDUSTRIAL_DRILL
public static final int MANIPULATOR_INDUSTRIAL_DRILL- See Also:
-
MANIPULATOR_TYPE_STRINGS
A list of the internal names for the different manipulator types. The indices in this collection correspond to the MANIPULATOR defines inBattleArmor
. These names should match the internal name for the manipulator's MiscType entry. -
MANIPULATOR_NAME_STRINGS
A list of the display names for the different manipulator types. The indices in this collection correspond to the MANIPULATOR defines inBattleArmor
. These names should match the name for the manipulator's MiscType entry. -
CHASSIS_TYPE_BIPED
public static final int CHASSIS_TYPE_BIPED- See Also:
-
CHASSIS_TYPE_QUAD
public static final int CHASSIS_TYPE_QUAD- See Also:
-
myCost
protected int myCostThe cost of this unit. This value should be set when the unit's file is read. -
DISPOSABLE_SRM2_AMMO
Internal name of the Inner disposable SRM2 ammo pack.- See Also:
-
DISPOSABLE_NARC_AMMO
Internal name of the disposable NARC ammo pack.- See Also:
-
MINE_LAUNCHER
The internal name for the Mine Launcher weapon.- See Also:
-
ADVANCED_ARMOR
The internal name for advanced. -
STANDARD_PROTOTYPE
The internal name for standard Prototype. -
STEALTH_PROTOTYPE
The internal name for stealth Prototype. -
BASIC_STEALTH_ARMOR
The internal name for basic Stealth armor. -
STANDARD_STEALTH_ARMOR
The internal name for standard Stealth armor. -
IMPROVED_STEALTH_ARMOR
The internal name for improved Stealth armor. -
MIMETIC_ARMOR
The internal name for Mimetic armor. -
FIRE_RESISTANT
The internal name for fire-resistant armor. -
CAMO_SYSTEM
The internal name for Simple Camo equipment.- See Also:
-
SINGLE_HEX_ECM
The internal name for Single-Hex ECM equipment.- See Also:
-
BA_MAX_MEN
public static final int BA_MAX_MEN/** The maximum number of men in a battle armor squad.- See Also:
-
LOC_SQUAD
public static final int LOC_SQUADThe location for infantry equipment.- See Also:
-
LOC_TROOPER_1
public static final int LOC_TROOPER_1- See Also:
-
LOC_TROOPER_2
public static final int LOC_TROOPER_2- See Also:
-
LOC_TROOPER_3
public static final int LOC_TROOPER_3- See Also:
-
LOC_TROOPER_4
public static final int LOC_TROOPER_4- See Also:
-
LOC_TROOPER_5
public static final int LOC_TROOPER_5- See Also:
-
LOC_TROOPER_6
public static final int LOC_TROOPER_6- See Also:
-
MOUNT_LOC_NONE
public static final int MOUNT_LOC_NONEThe location for mounted equipment on BA- See Also:
-
MOUNT_LOC_BODY
public static final int MOUNT_LOC_BODY- See Also:
-
MOUNT_LOC_RARM
public static final int MOUNT_LOC_RARM- See Also:
-
MOUNT_LOC_LARM
public static final int MOUNT_LOC_LARM- See Also:
-
MOUNT_LOC_TURRET
public static final int MOUNT_LOC_TURRET- See Also:
-
MOUNT_LOC_NAMES
-
MOUNT_NUM_LOCS
public static final int MOUNT_NUM_LOCSHow many mount locations are possible?- See Also:
-
TA_BATTLEARMOR
-
-
Constructor Details
-
BattleArmor
public BattleArmor()Generate a new, blank, battle armor unit. Hopefully, we'll be loaded from somewhere.
-
-
Method Details
-
getLocationAbbrs
- Overrides:
getLocationAbbrs
in classInfantry
-
getBaMountLocAbbr
-
getBaMountLocAbbr
-
getLocationNames
- Overrides:
getLocationNames
in classInfantry
-
locations
public int locations()Returns the number of Troopers in the BattleArmor squad, since locations for BattleArmor correspond to the different suits instead of the actual mount locations for equipment. -
getUnitType
public int getUnitType()- Overrides:
getUnitType
in classInfantry
- See Also:
-
exoskeletonTechAdvancement
-
getConstructionTechAdvancement
-
getConstructionTechAdvancement
Description copied from class:Entity
return - the base construction option tech advancement- Overrides:
getConstructionTechAdvancement
in classInfantry
-
getOriginalJumpMP
public int getOriginalJumpMP()Returns this entity's original jumping mp.- Overrides:
getOriginalJumpMP
in classEntity
-
getWalkMP
-
getRunMP
-
hasMyomerBooster
public boolean hasMyomerBooster()does this ba mount a myomer booster?- Returns:
-
getJumpMP
-
getMovementString
Returns the name of the type of movement used. This is Infantry-specific.- Overrides:
getMovementString
in classInfantry
-
getMovementAbbr
Returns the abbreviation of the type of movement used. This is Infantry-specific.- Overrides:
getMovementAbbr
in classInfantry
-
rollHitLocation
public HitData rollHitLocation(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) Battle Armor units can only get hit in undestroyed troopers.- Overrides:
rollHitLocation
in classInfantry
-
rollHitLocation
public HitData rollHitLocation(int side, int aimedLocation, AimingMode aimingMode, boolean isAttackingConvInfantry) Battle Armor units can only get hit in undestroyed troopers.- Parameters:
isAttackingConvInfantry
- Set to true when attacked by CI, as these cannot score TacOps crits
-
rollHitLocation
Description copied from class:Entity
Rolls up a hit location- Overrides:
rollHitLocation
in classInfantry
-
getTrooperAtLocation
For level 3 rules, each trooper occupies a specific location precondition: hit is a location covered by BA- Overrides:
getTrooperAtLocation
in classEntity
-
getTransferLocation
Battle Armor units don't transfer damage.- Overrides:
getTransferLocation
in classInfantry
-
getArmor
public int getArmor(int loc, boolean rear) Battle Armor units have no armor on their squad location. -
getOArmor
public int getOArmor(int loc, boolean rear) Battle Armor units have no armor on their squad location. -
getInternal
public int getInternal(int loc) Battle Armor units have no internals on their squad location.- Overrides:
getInternal
in classInfantry
- See Also:
-
getOInternal
public int getOInternal(int loc) Battle Armor units have no internals on their squad location.- Overrides:
getOInternal
in classInfantry
- See Also:
-
getOriginalTrooperCount
public int getOriginalTrooperCount()- Overrides:
getOriginalTrooperCount
in classInfantry
- Returns:
- The full original strength of this infantry unit; for conventional infantry, this is the original trooper count, for BA the original squad size.
-
autoSetInternal
public void autoSetInternal()Set the troopers in the unit to the appropriate values.- Overrides:
autoSetInternal
in classInfantry
-
setInternal
public void setInternal(int value) Set the troopers in the unit to the given values. -
addEquipment
public void addEquipment(Mounted<?> mounted, int loc, boolean rearMounted) throws LocationFullException Mounts the specified equipment in the specified location.- Overrides:
addEquipment
in classInfantry
- Throws:
LocationFullException
-
getNoOfSlots
protected int[] getNoOfSlots()Battle Armor units have as many critical slots as they need to hold their equipment.- Overrides:
getNoOfSlots
in classInfantry
-
hasHittableCriticals
public boolean hasHittableCriticals(int loc) Trooper's equipment dies when they do.- Overrides:
hasHittableCriticals
in classInfantry
-
newRound
public void newRound(int roundNumber) Prepare the entity for a new round of action.- Specified by:
newRound
in interfaceRoundUpdated
- Overrides:
newRound
in classInfantry
- Parameters:
roundNumber
- theint
number of the new round
-
applyDamage
public void applyDamage()Update the unit to reflect damages taken in this phase.- Overrides:
applyDamage
in classInfantry
-
getShootingStrength
public int getShootingStrength()Get the number of men in the unit (before damage is applied).- Overrides:
getShootingStrength
in classInfantry
- Returns:
- The number of troopers in the platoon before damage of the current phase is applied.
- See Also:
-
setCost
public void setCost(int inC) -
isBurdened
public boolean isBurdened()Determines if the battle armor unit is burdened with un-jettisoned equipment. This can prevent the unit from jumping or using their special Anti-Mek attacks.- Returns:
true
if the unit hasn't jettisoned its equipment yet,false
if it has.
-
canMakeAntiMekAttacks
public boolean canMakeAntiMekAttacks()- Overrides:
canMakeAntiMekAttacks
in classInfantry
- Returns:
- True for all infantry that are allowed AM attacks. Mechanized infantry and infantry units with encumbering armor or field guns are not allowed to make AM attacks, while all other infantry are. Note that a conventional infantry unit without Anti-Mek gear (15 kg per trooper) can still make AM attacks but has a fixed 8 AM skill rating.
-
hasDWP
public boolean hasDWP()does this BA have an unjettisoned DWP?- Returns:
-
canMountDWP
public boolean canMountDWP()Returns true if thisBattleArmor
can use a detachable weapon pack. ABattleArmor
must have 2 or more walking MP and be Medium or heavier to mount DWP. Used in MML!- Returns:
- True if this BA can use a detachable weapon pack
-
getStealthName
Returns the name of the stealth Armor used by the BA. Mostly for MegaMekLab Usage.- Returns:
- name of the stealth armor.
-
getCamoName
-
getShortStealthMod
public int getShortStealthMod()Public interface to the BattleArmors short range stealth modifier- Returns:
- shortStealthMod
-
getMediumStealthMod
public int getMediumStealthMod()Public interface to the BattleArmors medium range stealth modifier- Returns:
- mediumStealthMod
-
getLongStealthMod
public int getLongStealthMod()Public interface to the BattleArmors long range stealth modifier- Returns:
- longStealthMod
-
isEligibleForPavementOrRoadBonus
public boolean isEligibleForPavementOrRoadBonus()Description copied from class:Entity
Tanks and certain other units can get a +1 bonus to MP if their move is entirely on pavement.- Overrides:
isEligibleForPavementOrRoadBonus
in classInfantry
- Returns:
- true if the
Entity
gets a movement bonus on pavement
-
isStealthActive
public boolean isStealthActive()Determine if this unit has an active stealth system.Sub-classes are encouraged to override this method.
- Overrides:
isStealthActive
in classEntity
- Returns:
true
if this unit has a stealth system that is currently active,false
if there is no stealth system or if it is inactive.
-
isMimetic
public boolean isMimetic() -
hasCamoSystem
public boolean hasCamoSystem() -
isStealthy
public boolean isStealthy()- Overrides:
isStealthy
in classInfantry
- Returns:
- True if this infantry has any type of stealth system.
-
getStealthModifier
Determine the stealth modifier for firing at this unit from the given range. If the value supplied forrange
is not one of theEntity
class range constants, anIllegalArgumentException
will be thrown.Sub-classes are encouraged to override this method.
- Overrides:
getStealthModifier
in classInfantry
- Parameters:
range
- - anint
value that must match one of theCompute
class range constants.ae
- - the entity making the attack.- Returns:
- a
TargetRoll
value that contains the stealth modifier for the given range.
-
getCost
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. -
getAlternateCost
public double getAlternateCost()Description copied from class:Infantry
The alternate cost here is used by MekHQ to create costs that reflect just the cost of equipment. The motive costs here are based on the costs associated with an auto-rifle platoon.- Overrides:
getAlternateCost
in classInfantry
- Returns:
- An alternative cost that will be added to the MekSummaryCache - at the moment it is primarily used to rework infantry costs for MekHQ, but it could be applied to other unit types as well - defaults to -1, so there is no confusion.
-
hasEiCockpit
public boolean hasEiCockpit()- Overrides:
hasEiCockpit
in classEntity
-
setWeightClass
public void setWeightClass(int inWC) -
getTrooperWeight
public double getTrooperWeight() -
getWeightClass
public int getWeightClass()- Overrides:
getWeightClass
in classEntity
-
getTroopers
public int getTroopers() -
setTroopers
public void setTroopers(int troopers) -
setChassisType
public void setChassisType(int inCT) -
getChassisType
public int getChassisType() -
canAssaultDrop
public boolean canAssaultDrop()- Overrides:
canAssaultDrop
in classInfantry
-
isNuclearHardened
public boolean isNuclearHardened()Description copied from class:Entity
Checks if the unit is hardened against nuclear strikes.- Overrides:
isNuclearHardened
in classInfantry
- Returns:
- true if this is a hardened unit.
-
isTrooperActive
public boolean isTrooperActive(int trooperNum) -
getNumberActiverTroopers
public int getNumberActiverTroopers() -
getRandomTrooper
public int getRandomTrooper() -
loadWeapon
Description copied from class:Entity
Tries to load the specified weapon with the specified ammo. Returns true if successful, false otherwise.- Overrides:
loadWeapon
in classEntity
-
loadWeaponWithSameAmmo
Description copied from class:Entity
Tries to load the specified weapon with the specified ammo. Returns true if successful, false otherwise.- Overrides:
loadWeaponWithSameAmmo
in classEntity
-
getVibroClaws
public int getVibroClaws()Description copied from class:Entity
Return how many BA vibroclaws thisEntity
is equipped with- Overrides:
getVibroClaws
in classEntity
-
isFireResistant
public boolean isFireResistant()return if this BA has fire resistant armor- Returns:
-
isReflective
public boolean isReflective()return if this BA has laser reflective armor- Returns:
-
isReactive
public boolean isReactive()return if this BA has reactive armor- Returns:
-
hasImprovedSensors
public boolean hasImprovedSensors()return if this BA has improved sensors- Returns:
-
hasActiveProbe
public boolean hasActiveProbe()return if the BA has any kind of active probe- Returns:
-
canTransferCriticals
public boolean canTransferCriticals(int loc) Description copied from class:Entity
Returns true if this location should transfer criticals to the next location inwards. Checks to see that every critical in this location is either already totally destroyed (not just hit) or was never hittable to begin with.- Overrides:
canTransferCriticals
in classEntity
-
canDoMechanizedBA
public boolean canDoMechanizedBA()can this BattleArmor ride as Mechanized BA?- Returns:
-
getWeight
public double getWeight() -
getAlternateWeight
public double getAlternateWeight() -
getWeaponArc
public int getWeaponArc(int weaponNumber) Description copied from class:Entity
Returns the Rules.ARC that the weapon, specified by number, fires into.- Overrides:
getWeaponArc
in classInfantry
- Parameters:
weaponNumber
- integer equipment number, index from equipment list- Returns:
- arc the specified weapon is in
-
isHardenedArmorDamaged
Description copied from class:Entity
do we have a half-hit hardened armor point in the location struck by this?- Overrides:
isHardenedArmorDamaged
in classEntity
- Returns:
-
setIsExoskeleton
public void setIsExoskeleton(boolean exoskeleton) -
isExoskeleton
public boolean isExoskeleton() -
isCrippled
public boolean isCrippled()Description copied from class:Entity
Returns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258.- Overrides:
isCrippled
in classInfantry
- Returns:
- boolean
-
isDmgHeavy
public boolean isDmgHeavy()Description copied from class:Entity
Returns TRUE if the entity has been heavily damaged.- Overrides:
isDmgHeavy
in classInfantry
- Returns:
- boolean
-
isDmgModerate
public boolean isDmgModerate()Description copied from class:Entity
Returns TRUE if the entity has been moderately damaged.- Overrides:
isDmgModerate
in classInfantry
- Returns:
- boolean
-
isDmgLight
public boolean isDmgLight()Description copied from class:Entity
Returns TRUE if the entity has been lightly damaged.- Overrides:
isDmgLight
in classInfantry
- Returns:
- boolean
-
calculateSwarmDamage
public int calculateSwarmDamage() -
isConventionalInfantry
public boolean isConventionalInfantry()Description copied from interface:BTObject
Returns true when this object is a Conventional Infantry unit or of type CI for Alpha Strike. Returns false for any type of unit group even if it is of the right type.- Specified by:
isConventionalInfantry
in interfaceBTObject
- Overrides:
isConventionalInfantry
in classInfantry
- Returns:
- True when this is a Conventional Infantry unit
-
getEntityType
public long getEntityType()- Overrides:
getEntityType
in classInfantry
-
getMaximumJumpMP
public int getMaximumJumpMP() -
getMaximumJumpMP
public int getMaximumJumpMP(boolean ignoreEquipment) Returns the maximum jump MP that this BA can have.- Parameters:
ignoreEquipment
- If true, bonuses from equipment like partial wing and jump booster are ignored. This is important for construction purposes, where we shouldn't allow the JSpinner to select these values.- Returns:
-
getMaximumWalkMP
public int getMaximumWalkMP() -
getMaximumArmorPoints
public int getMaximumArmorPoints() -
setArmorType
public void setArmorType(int armType) - Overrides:
setArmorType
in classEntity
-
getArmCrits
public int getArmCrits() -
getBodyCrits
public int getBodyCrits() -
getTurretCapacity
public int getTurretCapacity() -
setTurretSize
public void setTurretSize(int capacity) -
hasModularTurretMount
public boolean hasModularTurretMount() -
setModularTurret
public void setModularTurret(boolean modular) -
getTotalCrits
public int getTotalCrits() -
getNumCrits
public int getNumCrits(int loc) -
getNumAllowedAntiMekWeapons
public int getNumAllowedAntiMekWeapons(int loc) Returns the number of allowed anti-mek weapons the supplied location can mount. The body can mount a set number of anti-mek weapons and a set number of anti-personnel, however for the arms can mount 2 AP or 1 AP and 1 AM.- Parameters:
loc
-- Returns:
-
getNumAllowedAntiPersonnelWeapons
public int getNumAllowedAntiPersonnelWeapons(int loc, int trooper) Returns the number of allowed anti-personnel weapons the location can mount. The body can mount a set number of anti-mek weapons and a set number of anti-personnel, however the arms can mount 2 AP or 1 AP and 1 AM.- Parameters:
loc
-- Returns:
-
doomedInExtremeTemp
public boolean doomedInExtremeTemp()- Overrides:
doomedInExtremeTemp
in classInfantry
- Returns:
- True when this unit will not survive temperatures outside of -30 to +50 C.
-
doomedInVacuum
public boolean doomedInVacuum()- Overrides:
doomedInVacuum
in classInfantry
- Returns:
- True when this unit will not survive vacuum conditions.
-
hasMagneticClamps
public boolean hasMagneticClamps()Convenience method for determining if the BA has magnetic clamps.- Returns:
- true if the unit has at least one magnetic clamp, else false
-
getLeftManipulatorName
Returns theEquipmentType
internal name for the manipulator mounted in the left arm of thisBattleArmor
squad.- Returns:
-
getRightManipulatorName
Returns theEquipmentType
internal name for the manipulator mounted in the right arm of thisBattleArmor
squad.- Returns:
-
getLeftManipulator
Returns theMounted
for the manipulator mounted in the left arm of thisBattleArmor
squad.- Returns:
-
getRightManipulator
Returns theMounted
for the manipulator mounted in the right arm of thisBattleArmor
squad.- Returns:
-
isClanExoWithoutHarjel
public boolean isClanExoWithoutHarjel() -
setClanExoWithoutHarjel
public void setClanExoWithoutHarjel(boolean clanExoWithoutHarjel) -
getLocationDamage
- Overrides:
getLocationDamage
in classInfantry
-
getSpriteDrawPriority
public int getSpriteDrawPriority()Used to determine the draw priority of different Entity subclasses. This allows different unit types to always be draw above/below other types.- Overrides:
getSpriteDrawPriority
in classInfantry
- Returns:
-
isFieldWeapon
- Overrides:
isFieldWeapon
in classInfantry
- Returns:
- True when the given Mounted is a Field Gun or Artillery. On BA, always returns false.
-
isBattleArmor
public boolean isBattleArmor()Description copied from interface:BTObject
Returns true when this object is a BattleArmor unit or of type BA for Alpha Strike. Returns false for any type of unit group even if it is of the right type.- Returns:
- True when this is a BattleArmor unit
-
firstArmorIndex
public int firstArmorIndex()- Overrides:
firstArmorIndex
in classEntity
- Returns:
- The index of the first armored location (skipping vehicle body, et. al.)
-
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 classInfantry
- Returns:
- The generic Battle value for this unit based on its tonnage and type
-