Class Mek
- All Implemented Interfaces:
Serializable,ICarryable,Transporter,InGameObject,CombatRole,ForceAssignable,ITechnology,ITurnOrdered,PhaseUpdated,RoundUpdated,ActiveHeatSinkController,BTObject,Deployable,Fortifiable,RubbleClearer,Targetable
- Direct Known Subclasses:
MekWithArms,QuadMek
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class megamek.common.units.Entity
Entity.InvalidSourceBuildReasonNested classes/interfaces inherited from interface megamek.common.equipment.ICarryable
ICarryable.CarriedObjectDamageAllocation -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intprotected booleanprotected booleanContains a mapping of locations which are blocked when carrying cargo in the "key" locationprotected booleanstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final String[]static final intstatic final intstatic final intstatic final String[]static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intprotected intprotected static int[]static final Stringstatic final Stringstatic final intstatic final intstatic final intstatic final String[]static final intstatic final String[]static final intstatic final intstatic final intprotected intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intprotected intprotected intprotected EntityMovementModestatic final Stringstatic final intstatic final intstatic final intstatic final intstatic final intstatic final String[]Fields inherited from class megamek.common.units.Entity
_isEMId, abandonmentAnnouncedRound, ALTERNATE_MASC_FAILURE, ALTERNATE_MASC_FAILURE_ENHANCED, altitude, ammoList, armorTechLevel, armorTechRating, armorTonnage, armorType, armsFlipped, asewAffectedTurns, aTracker, baVDNINeedsFeedbackMessage, BLOOD_STALKER_TARGET_CLEARED, bMASCWentUp, bombList, boobyTrapInitiated, bSuperchargerWentUp, C3_NETWORK_ID_SEPARATOR, c3CompanyMasterIndex, c3Master, c3NetIdString, camouflage, canUnstickByJumping, carcass, chassis, clanChassisName, climbing, climbingLevelsChosen, consecutiveRHSUses, convertingNow, coolFromExternal, crits, damageThisPhase, damageThisRound, dangling, delta_distance, designValid, destroyed, displacementAttack, DMG_CRIPPLED, DMG_HEAVY, DMG_LIGHT, DMG_MODERATE, DMG_NONE, dodging, DOES_NOT_TRACK_HEAT, done, doomed, eiShutdown, elevation, empInterferenceHeat, empInterferenceRounds, empShutdownRounds, engineHitsThisPhase, engineTechRating, equipmentList, ETYPE_AERO, ETYPE_AEROSPACE_FIGHTER, ETYPE_ARMLESS_MEK, ETYPE_BATTLEARMOR, ETYPE_BATTLEFIELD_SUPPORT_ASSET, ETYPE_BIPED_MEK, ETYPE_BUILDING_ENTITY, ETYPE_COMBAT_VEHICLE_ESCAPE_POD, 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, isC3ecmAffected, 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, MAX_NOVA_CEWS_NODES, military, miscList, mixedTech, model, moved, movedLastRound, movementMode, mpUsed, mpUsedLastRound, mulId, narcPods, nCrew, nMarines, nMASCLevel, nPassenger, nSuperchargerLevel, OBSOLETE_UNKNOWN_MARKER, omni, owner, ownerId, pendingAbandon, pendingINarcPods, pendingNarcPods, previousMovementMode, prone, published, reckless, reportedVDNIFeedbackThisPhase, rhsWentUp, rolledForEngineExplosion, searchlightIsActive, searchlightOverride, 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, techFaction, techLevel, tmTracker, totalWeaponList, traitorId, twistedPhase, underwaterRounds, unjammingRAC, UNLIMITED_JUMP_DOWN, usedMASC, usedRHSLastTurn, usedSearchlight, usedSupercharger, useManualBV, vectors, walkMP, weaponBayList, weaponGroupList, weaponList, weight, wigeBonus, yearFields inherited from interface megamek.common.units.Fortifiable
DUG_IN_FORTIFYING_FIRST, DUG_IN_FORTIFYING_LAST, DUG_IN_NONE, FORTIFY_LOGGERFields inherited from interface megamek.common.interfaces.ITechnology
DATE_ES, DATE_NONE, DATE_PSFields inherited from interface megamek.common.units.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_I_NARC_POD, TYPE_MINEFIELD_CLEAR, TYPE_MINEFIELD_DELIVER, TYPE_SATURATION, TYPE_SEARCHLIGHT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidFor clan units that get automatic Clan CASE, adds clan CASE in every location that has potentially explosive equipment (this includes uncharged PPC Capacitors).voidaddClanCaseOptOut(int location) Opts out of automatic Clan CASE for the given location.voidAdd the critical slots necessary for a standard cockpit.voidvoidAdd the critical slots necessary for a compact gyro.voidaddCoolantFailureAmount(int amount) This is implemented in subclasses, do nothing in generalvoidvoidAdd the critical slots necessary for the mek's engine.voidaddEngineSinks(int totalSinks, String sinkName) base for adding engine sinks.voidaddEngineSinks(int totalSinks, EquipmentFlag heatSinkFlag) Adds heat sinks to the engine.voidaddEngineSinks(int totalSinks, EquipmentFlag heatSinkFlag, boolean clan) Adds heat sinks to the engine.voidaddEngineSinks(String sinkName, int toAllocate) add heat sinks into the engineAdd in any piloting skill modsMounted<?> addEquipment(EquipmentType etype, EquipmentType etype2, int loc, boolean omniPod, boolean armored) voidaddEquipment(Mounted<?> mounted, int loc, boolean rearMounted) Mounts the specified weapon in the specified location.voidaddEquipment(Mounted<?> mounted, int loc, boolean rearMounted, int critSlot) Mounts the specified weapon in the specified location.booleanaddGyro()Add the critical slots necessary for a standard gyro.voidAdd the critical slots necessary for a heavy-duty gyro.voidAdd the critical slots necessary for an industrial cockpit.voidAdd the critical slots necessary for an industrial primitive cockpit.voidAdd the critical slots necessary for a small cockpit.voidSome entities will always have certain transporters.voidAdd the critical slots necessary for an industrial cockpit.voidvoidAdd the critical slots necessary for a small cockpit.voidvoidvoidAdd the critical slots necessary for a standard gyro.voidprotected voidaddSystemTechAdvancement(CompositeTechLevel techLevel) Incorporate dates for components that are not in the equipment list, such as engines and structure.addTargCompWithoutSlots(MiscType etype, int loc, boolean omniPod, boolean armored) Adds equipment without adding slots for it.voidaddTorsoMountedCockpit(boolean vrpp) Add the critical slots necessary for a torso-mounted cockpit.voidAdd the critical slots necessary for an extra-light gyro.booleanCheck for vulnerability to anti-TSM munitions.applyEdgeToHitLocation(HitData originalHit, int table, int side, int aimedLocation, AimingMode aimingMode, int cover) For units that can use Edge to re-roll hits, determine whether to do so (if possible).voidapplyFrankenMekDonorLocationArmor(int location, Mek donor) voidbooleanvoidSet the internal structure to the appropriate value for the Mek's weight classprotected intUsed to set this Mek's original walk mpbooleanDetermines if this Mek can announce abandonment per TacOps:AR p.165.booleanChecks whether this unit can announce abandonment of its crew in the End Phase.booleanbooleanCan this entity change secondary facing at all?booleanbooleancanDFA()booleanA MekWarrior can always eject while alive and aboard.booleanbooleancanFall(boolean gyroLegDamage) QuadVees and LAMs may not have to make PSRs to avoid falling depending on their mode, and Meks using tracks for movement do not have to make PSRs for damage to gyro or leg actuators.abstract booleanvoidcheckUnstall(Vector<Report> vPhaseReport) Check for uninstalling of this Entity's engine (only used for ICE-powered 'Meks).voidClears all Clan CASE opt-out locations.voidRemove all cockpit critical slots from the mek.voidRemove all engine critical slots from the mek.voidclearFrankenMekLocationSource(int location) voidRemove all gyro critical slots from the mek.intclipSecondaryFacing(int dir) Return the nearest valid direction to torso twist inintCount the number of destroyed or breached legs on the MekintcountLegActuatorCrits(int loc) Count non-hip leg actuator critsintintdamageCowl(int amount) Damages the remaining cowl armor, if any, by the given amount.intReturns the number of destroyed heat sinks.voiddestroyLocation(int loc) Marks all equipment in a location on this entity as destroyed.voiddestroyLocation(int loc, boolean blownOff) Marks all equipment in a location on this entity as destroyed.doCheckEngineStallRoll(Vector<Report> vPhaseReport) Possibly do a ICE-Engine stall PSR (only intended for Meks, both Industrial and Battle).booleandoRISCEmergencyCoolantCheckFor(Vector<Report> vDesc, HashMap<Integer, List<CriticalSlot>> vCriticalSlots) return if a RISC emergency coolant failed its rollintintdoubleprotected doubleintgetArmor(int loc, boolean rear) Returns the amount of armor in the location specified.doubleintgetArmorForReal(int loc, boolean rear) intgetBARRating(int loc) Return the BAR-rating of this Entity's armorMethod that returns the mapping between locations which, if cargo is carried, block other locations from firing.Returns an unmodifiable view of the set of locations opted out of automatic Clan CASE.Convenience function that returns the critical slot containing the cockpitstatic StringgetCockpitDisplayString(int inType) intDeprecated, for removal: This API element is subject to removal in a future version.intDeprecated, for removal: This API element is subject to removal in a future version.static TechAdvancementgetCockpitTechAdvancement(int cockpitType) intstatic intgetCockpitTypeForString(String inType) static StringgetCockpitTypeString(int inCockpitType) static StringgetCockpitTypeString(int cockpitType, boolean industrial) return - the base construction option tech advancementintHow many times TacOps coolant failure has occurred, which is also the reduction in heat sinking capacityintdoublegetCost(CalculationReport calcReport, boolean ignoreAmmo) Calculates and returns the C-bill cost of the unit.intgetCrewForCockpitSlot(int loc, CriticalSlot cs) Determines which crew slot is associated with a particular cockpit critical.intgetDependentLocation(int loc) Gets the location that is destroyed recursively.protected OptionalIntgetDirectionalTorsoMountArc(Mounted<?> mounted) Computes the firing arc for a weapon in a Directional Torso Mount (BMM p.83).intgetDugIn()intReturns extra heat generated by engine critsintlongintgetFrankenMekInternalForLocation(int location) getFrankenMekLocationSourceDisplayName(int location) getFrankenMekLocationSourceType(int location) intgetFrankenMekStructureCriticalSlots(int location) Returns the CO:p212 fallback structure crit count.getFrankenMekStructureEquipment(int location) getFrankenMekStructureName(int location) intgetFrankenMekStructureTechLevel(int location) intgetFrankenMekStructureTonnage(int location) intgetFrankenMekStructureType(int location) doublegetFrankenMekStructureWeightFraction(int location) static TechAdvancementintCalculates a "generic" Battle Value that is based on the average of all units of this type and tonnage.intintstatic StringgetGyroDisplayString(int inType) intdoublestatic TechAdvancementgetGyroTechAdvancement(int gyroType) intOnly Meks have Gyros but this helps keep the code a bit cleaner.static intgetGyroTypeForString(String inType) static StringgetGyroTypeShortString(int inGyroType) static StringgetGyroTypeString(int inGyroType) intReturns the about of heat that the entity can sink each turn.intgetHeatCapacity(boolean radicalHeatSink) intgetHeatCapacity(boolean includePartialWing, boolean includeRadicalHeatSink) intReturns the name of the heat sinks mounted on this 'Mek.intstatic TechAdvancementstatic intgetInnerLocation(int location) Returns the location that transferred damage or crits will go to from a given location.intgetInternal(int loc) Returns the amount of internal structure in the location specified, or ARMOR_NA, or ARMOR_DESTROYED.intgetJumpHeat(int movedMP) get the heat generated by this Entity when jumping for a certain amount of MPintgetJumpMP(MPCalculationSetting mpCalculationSetting) intReturns the type of jump jet system the Mek has.protected abstract doubleinthow many levels did this Mek fall this turn?getLocationDamage(int loc) intThe maximum elevation change the entity can crossintgetMaxElevationDown(int currElevation) Returns the maximum number of downward elevation changes a unit can make.intgetMaximumFrankenMekStructureTonnageForConstruction(int location) intgetMechanicalJumpBoosterMP(MPCalculationSetting mpCalculationSetting) getMovementAbbr(EntityMovementType movementType) Returns the name of the type of movement used.getMovementString(EntityMovementType movementType) Returns the name of the type of movement used.getMtf()Get an '.mtf' file representation of the Mek.intintgetOArmor(int loc, boolean rear) Returns the original amount of armor in the location specified.intintintgetPartialWingJumpAtmosphereBonus(MPCalculationSetting mpCalculationSetting) intgetPartialWingJumpBonus(Mounted<?> mount) intgetPartialWingJumpBonus(Mounted<?> mount, MPCalculationSetting mpCalculationSetting) Gives the bonus to Jump MP conferred by a Mek partial wing.intdoubleReturns a multiplier that combines multiplicative construction cost modifiers for this Entity.getRawSystemName(int index) intReturns the recovery time for this entity in minutes.static TechAdvancementintintintDepends on engine typeintgetRunMP(MPCalculationSetting mpCalculationSetting) getRunMPasString(boolean gameState) Returns this entity's running/flank mp as a string.intget the gravity limit for ground movementbooleanintDepends on engine typeintgetSprintMP(MPCalculationSetting mpCalculationSetting) Returns this entity's sprinting MP, modified according to the given setting.intUsed to determine the draw priority of different Entity subclasses.intget the heat generated by this Entity when standing stillgetStealthModifier(int range, Entity ae) Determine the stealth modifier for firing at this unit from the given range.intgetStructureType(int location) Returns the internal structure type used in this location.getSystemName(int index) static TechAdvancementgetTechAdvancement(long etype, boolean primitive, boolean industrial, int weightClass) intGets the location that excess damage transfers todoubleThe modifier for picking objects up based on the unit having TSMintintget the heat generated by this Entity when walking/cruisingintgetWeaponArc(int weaponNumber) Returns the Compute.ARC that the weapon fires into.Returns the values ofEntity.getWeaponList()plus any weapons added by handheld weapons.protected intbooleanReturns whether this unit has an active Enhanced Imaging (EI) cockpit system.booleanbooleanhasActiveTSM(boolean includeIndustrial) Checks whether any type of TSM is active.booleanbooleanReturns true if any location is opted out of automatic Clan CASE.booleanbooleanbooleanbooleanbooleandoes this Mek have a chameleon light polarization shield?booleanReturns true if this Mek has any Clan CASE equipment mounted.booleanhasClaw(int location) Check to see if a Mek has a claw in one of its armsbooleanUnits with a cockpit command console provide an initiative bonus to their side, provided that the commander is not currently functioning as pilot, the unit has advanced fire control, and the unit is heavy or assault weight class.booleanbooleanhasCompositeStructure(int location) does this Mek have composite internal structure in this location?booleanhasCowl()booleanbooleanReturns true if this Mek has the Damage Interrupt Circuit cockpit modification installed.booleanbooleanbooleanDoes this Mek have an extended retractable blade in working condition?booleanbooleanbooleanChecks if this entity has any equipment set to a Ghost Targets mode, without checking PSR success, spaceborne status, or shutdown state.booleanhasHarJelIIIIn(int loc) Does this Mek have an undamaged HarJel system in this location?booleanhasHarJelIIIn(int loc) Does this Mek have an undamaged HarJel system in this location?booleanReturns true if the entity has a hip crit.booleanbooleandoes this Mek have industrial TSM=booleanCheck whether a Mek has intact heat-dissipating armor in every location thus protecting it from external heat sources like fires or magmabooleanDeprecated, for removal: This API element is subject to removal in a future version.booleanbooleanbooleanabstract booleanbooleandoes this Mek have a null-sig-system?booleanhasRearArmor(int loc) Does this location have rear armor?booleanhasReinforcedStructure(int location) does this Mek have reinforced internal structure in this location?booleanhasRetractedBlade(int loc) Does the entity have a retracted blade in the given location? Only true for biped MeksbooleanbooleanDoes this Mek have tracks? Used for tracks as industrial equipment; QuadVees return false.booleanhasTSM(boolean includePrototype) Check for whether the Mek has triple strength myomerbooleandoes this Mek have a void-sig-system?booleanChecks if this entity has a working backhoe.booleanReturns true if this Mek has a working (installed and not disabled) Damage Interrupt Circuit.intReturns the number of heat sinks, functional or not.intheatSinks(boolean countPrototypes) Returns the number of heat sinks, functional or not.intheight()Return the height of this Mek above the terrain.intUsed to for cost calculations.voidvoidinitializeRearArmor(int val, int loc) Initializes the rear armor on the Mek.protected HitDatainnerRollHitLocation(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) booleanReturns true if this Mek has been abandoned - the crew has exited but the Mek itself is not destroyed.booleanisArm(int loc) booleanisArmorDamagedThisTurn(int loc) did the armor in this location take damage which did not destroy it at least once this turn? this is used to decide whether to trigger Harjel II/IIIbooleanbooleanbooleanDoes the Mek have a functioning Chameleon Light Polarization Field? For a CLPS to be functioning it must be on and the unit can't have mounted mechanized BattleArmor.booleanDoes the Mek Chameleon Light Polarization Field turned on? This is used for heat generation purposes.booleanReturns whether this unit is a chassis-familiarity-eligible type for MekHQ's Familiarity systembooleanshould this Mek check for a critical hit at the end of turn due to being an industrial Mek and having been the target of a successful physical attack or for fallingbooleanisClanCaseOptedOut(int location) Returns true if the given location has been opted out of automatic Clan CASE.booleanbooleanbooleanbooleanbooleanbooleanReturns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258.booleanisCrippled(boolean checkCrew) Returns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258.booleanReturns true if the Damage Interrupt Circuit is currently disabled.booleanReturns TRUE if the entity has been heavily damaged.booleanReturns TRUE if the entity has been lightly damaged.booleanReturns TRUE if the entity has been moderately damaged.booleanbooleanPretty much anybody's eligible for movement.booleanTanks and certain other units can get a +1 bonus to MP if their move is entirely on pavement.booleanbooleanbooleanbooleanOnly Meks have gyros, but this helps keep the code a bit cleaner.booleando we have a half-hit hardened armor point in the location struck by this?booleanIs this an Industrial Mek?booleanReturns true when this object is an Industrial Mek or of type IM for Alpha Strike.booleandid this Mek just moved into water that would kill it because we lack environmental sealing?booleanbooleanisLocationDeadly(Coords c, int boardId) Returns true if the specified hex exists and has terrain that is deadly to this unit.booleanisLocationProhibited(Coords c, int testBoardId, int testElevation) Returns true when the given location cannot legally be entered or deployed into by this unit at the given elevation or altitude.booleanisMek()Returns true when this object is a Mek (Industrial Mek or BattleMek) or of type BM/IM for Alpha Strike.booleanDoes the Mek have a functioning null signature system, or a void sig that is acting as a null sig because of externally carried BA?booleanDetermine if this unit has an active null-signature system.booleanisPermanentlyImmobilized(boolean checkCrew) This method returns true if a unit is permanently immobilized either because its crew is dead/gone or because of damagebooleanbooleanDetermine if the unit can be repaired, or only harvested for spares.booleanisSecondaryArcWeapon(int weaponId) Returns true if this weapon fires into the secondary facing arc.booleanbooleanIs this Entity's ICE Engine stalled?booleanDetermine if this unit has an active and working stealth system.booleanDetermine if this unit has an active and working stealth system.booleanbooleanisSystemIntact(int system) Deprecated, for removal: This API element is subject to removal in a future version.booleanisValidSecondaryFacing(int dir) Can this Mek torso twist in the given direction?booleanDoes the Mek have a functioning void signature system?booleanDoes the Mek have a functioning void signature system?joinLocationAbbr(List<Integer> locations, int limit) Joins the abbreviations for the locations into a String with / as the separator.static intleastRestrictiveLoc(int location1, int location2) find the least restrictive location of the two locations passed inprotected intlegCount()booleanlegHasHipCrit(int loc) Return true is the location is a leg and has a hip critvoidlinkFrankenMekLocationToSource(int location, String sourceDisplayName) voidlinkFrankenMekLocationToSource(int location, String sourceDisplayName, String sourceType) voidLoad the given unit.booleanlocationIsLeg(int loc) Returns true if the location in question is a legbooleanlocationIsTorso(int loc) Returns true if the location in question is a torso locationintReturns the number of locations in the entitystatic intmostRestrictiveLoc(int location1, int location2) Returns the location with the most restrictive firing arc for a weapon.voidnewRound(int roundNumber) Start a new roundnextConversionMode(EntityMovementMode afterMode) Entities that can convert movement modes (LAMs, QuadVees) report the next mode to assume when a convert movement command is processed.voidremoveClanCaseOptOut(int location) Removes the Clan CASE opt-out for the given location.booleanremovePartialCoverHits(int location, int cover, int side) voidReset count of TacOps coolant failures to zero (no loss)voidSwitches every heat sink mount (including prototype double heat sinks and Freezers) back on.static intrestrictScore(int location) Helper function designed to give relative restrictiveness of locations.rollHitLocation(int table, int side) Rolls up a hit locationrollHitLocation(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) Wrapper that handles applying Edge (if allowed).voidsetActiveSinksNextRound(int sinks) Bulk control for heat sink activation: switches individual heat sink mounts On or Off so that the given number of sinks remains active.voidsetArmor(int val, int loc, boolean rear) Sets the amount of armor in the location specified.voidsetArmorDamagedThisTurn(int loc, boolean tookDamage) did the armor in this location take damage which did not destroy it at least once this turn? this is used to decide whether to trigger Harjel II/IIIvoidsetAutoEject(boolean autoEject) voidvoidsetCheckForCrit(boolean check) voidsetCockpitStatus(int state) voidsetCockpitType(int type) voidsetCondEjectAmmo(boolean condEjectAmmo) voidsetCondEjectCTDest(boolean condEjectCTDest) voidsetCondEjectEngine(boolean condEjectEngine) voidsetCondEjectHeadshot(boolean condEjectHeadshot) voidsetCoolingFlawActive(boolean flawActive) voidsetDICDisabled(boolean disabled) Sets the disabled state of the Damage Interrupt Circuit.voidsetDugIn(int stage) voidset this Mek'sEnginevoidsetFrankenMek(boolean frankenMek) voidsetFrankenMekStructureTonnage(int location, int tonnage) voidsetFrankenMekStructureTonnageForConstruction(int location, int tonnage) voidsetFrankenMekStructureType(int location, int structureType, int structureTechLevel) voidsetFrankenMekStructureType(int location, EquipmentType structure) voidsetFullHeadEject(boolean fullHeadEject) voidsetGrappled(int id, boolean attacker) voidsetGrappledThisRound(boolean grappled) voidsetGrappleSide(int side) voidsetGyroType(int type) voidsetHardenedArmorDamaged(HitData hit, boolean damaged) voidsetHasDamagedCoolantSystem(boolean hit) abstract voidsetInternal(int head, int ct, int t, int arm, int leg) Sets the internal structure for the Mek.voidsetJustMovedIntoIndustrialKillingWater(boolean moved) set if this Mek just moved into water that would kill it because of the lack of environmental sealingvoidsetLevelsFallen(int levels) voidsetOmni(boolean omni) OmniMeks have handles for Battle Armor squads to latch onto.voidvoidsetRiscHeatSinkOverrideKit(boolean heatSinkKit) voidsetRubbleClearTarget(Coords target) voidsetRubbleClearTurnsCompleted(int turns) voidsetRubbleClearTurnsRequired(int turns) voidsetShouldDieAtEndOfTurnBecauseOfWater(boolean moved) set if this Mek should die at the end of turn because it's an IndustrialMek without environmental sealing that moved into water last round and stayed there?voidsetStalled(boolean stalled) Set if this Mek's ICE Engine is stalled or not should only be used for industrial Meks carrying an ICE enginevoidsetTechLevel(int techLevel) Sets the tech level for this Entity.intshieldAbsorptionDamage(int damage, int location, boolean rear) booleanshould this Mek die at the end of turn because it's an IndustrialMek without environmental sealing that moved into water last round and stayed there?voidvoidvoidsyncMatchingFrankenMekStructureTonnageToChassis(int matchingTonnage) protected HitDatatac(int table, int side, int location, int cover, boolean rear) Called when a thru-armor-crit is rolled.intReturns the number of (working) jump jets mounted in the torsos.booleanUsed to identify a target that tracks heat buildup (Meks, ASFs, and small craft).voidunlinkFrankenMekLocationSourceIfChanged(int location) Generates a vector containing reports on all useful information about this entity.Methods inherited from class megamek.common.units.Entity
activateRadicalHS, addAttackedByThisTurn, addBeenDetectedBy, addBeenSeenBy, addBomb, addBomb, addConditionBonuses, addCritical, addCritical, addCritical, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addEquipment, addFailedEquipment, addFiringSolution, addGhostTargetDefensiveBonus, addGhostTargetOffensiveBonus, addGroundAttackedByThisTurn, addIMPHits, addKill, addOffBoardObserver, addPassedThrough, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addPilotingModifierForTerrain, addRoofRack, addSensorContact, addTargetedBySwarm, addTechComponent, addTowedUnit, addTransporter, addTransporter, addTsempHitThisTurn, addWeaponGroup, applyDamage, applyGravityEffectsOnMP, applyMagneticPulse, armorStringFor, assignAMS, assignTMAMS, assignWeaponQuirk, attachINarcPod, attachNarcPod, braceLocation, C3MasterIs, calcElevation, calcElevation, calculateBattleValue, calculateBattleValue, calculateBattleValue, calculateBattleValue, calculateFreeC3MNodes, calculateFreeC3Nodes, canActivateBloodStalker, canAssist, canBePickedUp, canBrace, canFall, canFireWeapon, canFlee, canFlee, canFleeFrom, canFleeInState, canFlipArms, canGoDown, canGoDown, canGoHullDown, canGoUp, canHide, canInitiateInfantryVsInfantryCombat, canLayDemolitionCharges, canLayMine, canLoad, canLoad, canLoad, canonUnitWithInvalidBuild, canPerformGroundSalvageOperations, canPerformSpaceSalvageOperations, canPickupCarryableObject, canPickupGroundObject, canRam, canReinforceInfantryVsInfantry, canShutdownEi, canSpot, canTow, canTransferCriticalSlots, canUnjamRAC, canUnstickByJumping, changeHeatBuildup, checkBogDown, checkDislodgeSwarmers, checkForMASCFailure, checkForSuperchargerFailure, checkGetUp, checkGunningIt, checkLandingInHeavyWoods, checkLandingOnBlackIce, checkLandingOnIce, checkLandingWithDamage, checkLandingWithPrototypeJJ, checkMovedTooFast, checkMovementInBuilding, checkRecklessMove, checkRubbleMove, checkRunningWithDamage, checkSideSlip, checkSkid, checkSprintingWithMASCAndSupercharger, checkSprintingWithMASCXorSupercharger, checkTurnModeFailure, checkUsingOverdrive, checkWaterMove, checkWaterMove, chooseSide, clearAttackedByThisTurn, clearBombs, clearDestroyedNarcPods, clearDetectedBy, clearFiringSolutions, clearHeatBreakdown, clearInfantryCombatState, clearNarcAndiNarcPods, clearPartialRepairs, clearSeenBy, clearSensorContacts, climbMode, countEquipment, countForStrengthSum, countMisc, countPartialRepairs, countQuirks, countQuirks, countWeaponQuirks, countWorkingMisc, countWorkingMisc, countWorkingMisc, crewCanLeave, critStateCount, damage, damageBayDoor, damagedJumpJets, damageDockCollar, damageDoorRecovery, damagedSCMCritCount, damageSystem, damageSystem, deactivateRadicalHS, deployOffBoard, destroy, destroyOneSearchlight, destroyRetractableBlade, disconnectUnit, doBattleValueCalculation, doomedInAtmosphere, doomedInExtremeTemp, doomedInSpace, doomedInVacuum, doomedOnGround, dropCarriedObject, dropCarriedObject, dropGroundObjects, elevationOccupied, elevationOccupied, endOfTurnCargoInteraction, entityIsQuad, equals, extendBlade, factionTechLevel, findTargetedDisplacement, firstArmorIndex, fixElevation, formatHeat, gameOptions, generalName, generateDisplayName, generateShortName, getAbandonmentAnnouncedRound, getActiveAMS, getActiveSensor, getActiveSubEntities, getActiveUMUCount, getActiveVibrobladeHeat, getActiveVibrobladeHeat, getAllGyroCodeName, getAllowedPhysicalAttacks, getAllTowedUnits, getAllUMUCount, getAlreadyTwisted, getAlternateCost, getAltitude, getAmmo, getAmmo, getAmmo, getAnyTypeMaxJumpMP, getArmedMPBoosters, getArmor, getArmor, getArmoredComponentTechAdvancement, getArmorForReal, getArmorRemainingPercent, getArmorString, getArmorString, getArmorTechLevel, getArmorTechRating, getArmorType, getArmorWeight, getArmorWeight, getArmsFlipped, getASEWAffected, getAttackedByThisTurn, getAttackingEntity, getBadCriticalSlots, getBAPRange, getBase64Icon, getBaseAvailability, getBaseChassisFireConWeight, getBaseChassisValue, getBaseEngineValue, getBasePilotingRoll, getBasePilotingRoll, getBay, getBayByAmmo, getBayById, getBayLoadedUnitIds, getBayPersonnel, getBloodStalkerTarget, getBlueShieldRounds, getBoardId, getBoardLocation, getBodyLocation, getBombLoadout, getBombLoadout, getBombs, getBombs, getBoobyTrap, getBoobyTrapDamage, getBraceMPCost, getBvCalculator, getC3ecmAffected, getC3iNextUUIDAsString, getC3Master, getC3MasterId, getC3MasterIsUUIDAsString, getC3NetId, getC3Top, getC3UUIDAsString, getCamouflage, getCamouflageOrElse, getCamouflageOrElse, getCamouflageOrElseOwners, getCargoMpReduction, getCarriedObject, getCarriedObjects, getChassis, getClanChassisName, getClimbingLevelsChosen, getClubs, getCollarById, getCommonDate, getCommonDateRange, getConnectedUnits, getConsecutiveRHSUses, getConversionMode, getCost, getCrew, getCritical, getCriticalSlots, getCustomWeaponOrder, getCustomWeaponOrder, getDamagedCriticalSlots, getDamageLevel, getDamageLevel, getDamageReductionFromModularArmor, getDefaultPickupLocations, getDeployRound, getDisplacementAttack, getDisplayName, getDistinctCarriedObjects, getDockingCollars, getDocks, getDocks, getDropCargoLocationMap, getDroppableUnits, getDuplicateMarker, getEarliestTechDate, getEarliestTechDateAndEra, getECCMInfo, getECCMStrength, getECMInfo, getECMRange, getECMStrength, getElevation, getEMPInterferenceRounds, getEMPShutdownRounds, getEmptyCriticalSlots, getEngine, 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, getForceGeneratorAvailability, getForceId, getForceString, getForwardArc, getFreeC3iUUID, getFreeNC3UUID, getFullChassis, getGame, getGaveKillCredit, getGhostTargetDefensiveBonus, getGhostTargetOffensiveBonus, getGhostTargetOverride, getGhostTargetRoll, getGhostTargetRollMoS, getGoodCriticalSlots, getGroundAttackedByThisTurn, getHeading, getHeat, getHeatBreakdown, getHeatFiringModifier, getHeatInArc, getHeatMPReduction, getHeight, getHiddenActivationPhase, getHitchCarrying, getHitchLocations, getHitCriticalSlots, getHittableCriticalSlots, getIcon, getId, getImpLastTurn, getImpMpReduction, getImpToHitModifier, getINarcPodsAttached, getIndividualWeaponList, getInfantryCombatTargetId, getInfantryCombatTurnCount, getInitialBV, getInternal, getInternalBombLoadout, getInternalForReal, getInternalRemainingPercent, getInternalString, getIntroductionDate, getIntroductionDate, getIntroductionDateAndEra, getInvalidSourceBuildReasons, getIsJumpingNow, getJumpMP, getJumpMPWithTerrain, getKillerId, getKillNumber, getKills, getLabArmorTonnage, getLabTotalArmorPoints, getLastTarget, getLastTargetDisplayName, getLaunchableDropships, getLaunchableFighters, getLaunchableSmallCraft, getLoadedKeepers, getLoadedTrailers, getLoadedUnits, getLocationAbbr, getLocationAbbr, getLocationAbbreviations, getLocationFromAbbr, getLocationName, getLocationName, getLocationNames, getLocationStatus, getLongRangeModifier, getLOSRangeModifier, getMagneticPulseRounds, getManualBV, getMASC, getMASCTarget, getMASCTurns, getMaxElevationDown, getMaxWeaponRange, getMaxWeaponRange, getMechanicalJumpBoosterMP, getMediumRangeModifier, getMisc, getMisc, getMiscEquipment, getMissionRoles, getMixedTechAdvancement, getModel, getMotiveSideMod, getMovedBackwards, getMovementBeforeSkidPSRModifier, getMovementMode, getMovementModeAsString, getMPBoosters, getMPBoosters, getMpUsedLastRound, getMulId, getNC3NextUUIDAsString, getNCrew, getNeuralInterfaceMode, getNewRoundNovaNetworkString, getNextSensor, getNMarines, getNoOfSlots, getNPassenger, getNumberOfCriticalSlots, getNumberOfCriticalSlots, getNumberOfCriticalSlots, getNumberOfCriticalSlots, getNumberOfShields, getOArmor, getOArmor, getObsoleteQuirkValue, getObsoleteRepairModifier, getObsoleteResaleModifier, getObsoleteYear, getObsoleteYearForModifiers, getObsoleteYears, getOccupiedCoords, getOccupiedHex, getOffBoardDirection, getOffBoardDistance, getOInternal, getOInternal, getOmniAdvancement, getOmniAdvancement, getOriginalBuildYear, getOriginalChassis, getOriginalJumpMP, getOriginalJumpMP, getOriginalModel, getOriginalNovaC3NetId, getOriginalRunMP, getOriginalUnitFileUUID, getOriginalWalkMP, getOwner, getOwnerId, getPartialRepairs, getPassedThrough, getPassedThroughBoardId, getPassedThroughFacing, getPassengerCapacityWithoutBayCrew, getPatchworkArmorAdvancement, getPendingVariableRangeTargetingMode, getPickedUpMekWarriors, getPickupLocationMap, getPlayerPickedPassThrough, getPodMountedTroopCarryingSpace, getPosition, getPowerAmplifierWeight, getPriorPosition, getProductionDate, getProductionDate, getProductionDateRange, getPrototypeDate, getPrototypeDate, getPrototypeRangeDate, getPublished, getPublishedSources, getQuirkIniBonus, getQuirkList, getQuirks, getRearArc, getRecoveryTurn, getReintroductionDate, getReintroductionDate, getRemovalCondition, getRetreatedDirection, getRole, getRunMP, getRunMPasString, getRunMPWithoutMASC, getSearchlightOverride, getSecondaryFacing, getSecondaryPositions, getSelfDestructedThisTurn, getSelfDestructing, getSelfDestructInitiated, getSensorCheck, getSensorContacts, getSensors, getShortName, getShortNameRaw, getShortRangeModifier, getSource, getSources, getSpotTargetId, getSprintMP, getSprintMPWithOneMASC, getSprintMPWithoutMASC, 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, getTCPInitiativeBonus, getTechBase, getTechBaseDescription, getTechBaseDescriptions, getTechFaction, getTechLevel, getTechLevelYear, getTechLevelYears, getTechRating, getTilesetModeString, getTMTracker, getTonnage, getTotalAmmoOfType, getTotalArmor, getTotalInternal, getTotalMunitionsOfType, getTotalOArmor, getTotalOInternal, getTotalWeaponList, getTowedBy, getTowing, getTractor, getTraitorId, getTransferLocation, getTransportBays, getTransportId, getTransports, getTroopCarryingSpace, getTrooperAtLocation, getTsempEffect, getTsempHitsThisTurn, getUnitFileUUID, getUnitNumber, getUnitsUnloadableFromBays, getUnitsUnloadableFromNonBays, getUnloadableUnits, getUnused, getUnused, getUnusedString, getUnusedString, getUseManualBV, getValidBraceLocations, getValidHalfWeightPickupLocations, getVariableRangeTargetingMode, getVariableRangeTargetingModifier, getVector, getVectors, getVelocity, getVibroClaws, getWalkMP, getWalkMP, getWeapon, getWeaponBayList, getWeaponFiringHeight, getWeaponFiringPosition, getWeaponGroupList, getWeaponList, getWeapons, getWeaponSortOrder, getWeight, getWeightClass, getWeightClassName, getWhoCanDetect, getWhoCanSee, getYear, hasAbility, hasAbility, hasActivatedRadicalHS, hasActiveBlueShield, hasActiveDNI, hasActiveECCM, hasActiveECM, hasActiveECM, hasActiveNovaCEWS, hasAimModeTargComp, hasAnyC3System, hasAnyTypeNarcPodsAttached, hasArcFired, hasArmoredChassis, hasArtillery, hasBadLegs, hasBAP, hasBAP, hasBARArmor, hasBattleArmorHandles, hasBoobyTrap, hasBoostedC3, hasC3, hasC3i, hasC3M, hasC3MM, hasC3S, hasCase, hasCASEII, hasCASEII, hasDamagedRHS, hasDetectedEntity, hasDisplacementAttack, hasDNICockpitMod, hasDNIImplant, hasDNIInducedHardToPilot, hasDroneOs, hasECM, hasEiCockpit, hasEmbeddedIcon, hasEMPInterferenceHeat, hasEngine, hasEntityScopedPreEndDeclaration, hasEnvironmentalSealing, hasETypeFlag, hasExternalSearchlight, hasFallen, hasFiredTsemp, hasFiringSolutionFor, hasFleeZone, hasFlotationHull, hasFrontMountedBulldozer, hasFrontMountedSaw, hasFunctionalArmAES, hasGhostTargets, hasHardenedArmor, hasHarJelIn, hashCode, hasHierarchicalC3, hasINarcPodsAttached, hasInfernoAmmo, hasLegActuatorCrit, hasLinkedMGA, hasLoweredShield, hasLoweredShield, hasMinesweeper, hasMisc, hasMisc, hasMisc, hasModularArmor, hasModularArmor, hasMulId, hasNarcPodsAttached, hasNavalC3, hasNhC3, hasNoDefenseShield, hasNovaCEWS, hasObsoleteQuirk, hasOccupiedHex, hasOriginalBuildYear, hasPatchworkArmor, hasQuirk, hasRaisedShield, hasRaisedShield, hasRearMountedBulldozer, hasRHSWentUp, hasSCM, hasSearchlight, hasSeenEntity, hasSensorContactFor, hasShield, hasStealth, hasSystem, hasTAG, hasTargComp, hasTCPAimedShotCapability, hasUMU, hasUndamagedCriticalSlots, hasUnloadedUnitsFromBays, hasUsedRHSLastTurn, hasVariableRangeTargeting, hasViableWeapons, hasVibroblades, hasWorkingBulldozer, hasWorkingMisc, hasWorkingMisc, hasWorkingMisc, hasWorkingMisc, hasWorkingRadicalHS, hasWorkingSCM, hasWorkingSystem, hitAllCriticalSlots, incrementInfantryCombatTurnCount, incrementMASCAndSuperchargerLevels, initializeArmor, initializeInternal, initMilitary, initTechAdvancement, isActive, isActive, isActiveOption, isAeroLandedOnGroundMap, isAeroSensorDestroyed, isAirborne, isAirborneAeroOnGroundMap, isAirborneVTOLorWIGE, isAssaultDropInProgress, isAttackingThisTurn, isBATaserShutdown, isBoardable, isBoardProhibited, isBoardProhibited, isBoobyTrapInitiated, isBracing, isC3CompanyCommander, isC3IndependentMaster, isCanon, isCapitalFighter, isCapitalFighter, isCapitalScale, isCaptured, isCarcass, isCarryableObject, isChainWhipGrappled, isCharging, isClan, isClanArmor, isClearingMinefield, isClearingWoods, isClimbing, isCommander, isConvertingNow, isDangling, isDeployed, isDesignValid, isDestroyed, isDetectedByEnemy, isDone, isDoomed, isDropping, isEiShutdown, isElevationValid, isEligibleFor, isEligibleForArtyAutoHitHexes, isEligibleForFiring, isEligibleForInfantryVsInfantry, isEligibleForOffboard, isEligibleForPhysical, isEligibleForPreEndDeclarations, isEligibleForTargetingPhase, isEnemyOf, isEvading, isEverSeenByEnemy, isFindingClub, isFiredTsempThisTurn, isFirefighter, isGhostTargetCapable, isHidden, isHullDown, isIlluminated, isImmobile, isImmobile, isImmobileForJump, isImpEcmAffected, isINarcedBy, isINarcedWith, isInBuilding, isInDemolishableStructureHex, isInfantryCombatAttacker, isInfantryCombatWantsWithdrawal, isIntroLevel, isInvulnerable, isJumpingWithMechanicalBoosters, isLargeCraft, isLayingMines, isLoadableThisTurn, isLocationBad, isLocationBlownOff, isLocationBlownOffThisPhase, isLocationDoomed, isLocationProhibited, isLocationProhibited, isLocationProhibited, isLocationProhibited, isLocationTrulyDestroyed, isMakingDfa, isMakingVTOLGroundAttack, isManualShutdown, isMASCUsed, isMilitary, isMixedTech, isNarcedBy, isNaval, isNeuralInterfaceEnabled, isNeuralInterfaceFullTracking, isNightwalker, isNOE, isNonCanonBySource, isNonCanonBySource, isNotCrewedEntityType, isNuclearHardened, isObsoleteInYear, isOffBoard, isOffBoardObserved, isOmni, isOnAtmosphericGroundMap, isPartOfFighterSquadron, isPendingAbandon, isPodMountedTransport, isPowerReverse, isProne, isPushing, isRamming, isReckless, isSalvage, isSelectableThisTurn, isSensorReturn, isShutDownThisPhase, isSpaceborne, isSpotting, isStartupThisPhase, isStuck, isSufferingEMI, isSuperchargerUsed, isSurfaceNaval, isTargetable, isTargetOfDisplacementAttack, isTractor, isTrailer, isTransported, isTrapped, isUncrewed, isUnderwater, isUnjammingRAC, isUnloadedThisTurn, isUnofficial, isUsingManAce, isUsingSearchlight, isVisibleToEnemy, isWeaponBlockedAt, isWeaponBlockedByTowing, isWeaponOrderChanged, isWeaponValidForPhase, itemOppositeTech, load, load, load, loadAllWeapons, loadDefaultCustomWeaponOrder, loadedUnitsHaveActiveECM, loadQuirks, loadWeapon, loadWeapon, loadWeaponWithSameAmmo, loadWeaponWithSameAmmo, locationHasCase, madePointblankShot, maxGroundObjectTonnage, modifyPhysicalDamageForMeleeSpecialist, needsRollToStand, newPhase, newRoundNovaNetSwitch, newRoundVariableRangeSwitch, onSameC3NetworkAs, onSameC3NetworkAs, ownerHasDemolitionCharge, passedOver, passedThrough, passedThroughPrevious, passedWithin, performManualShutdown, performManualStartup, pickUp, pickupCarryableObject, postProcessFacingChange, processPickupStep, processPickupStepEntity, recalculateTechAdvancement, recordedTechLevel, recover, refreshLocations, regenerateUnitFileUUID, relHeight, reloadEmptyWeapons, removeAllINarcPods, removeAllTransporters, removeCriticalSlots, removeFiringSolution, removeINarcPod, removeMisc, removeSensorContact, removeTowedUnit, removeTransporter, resetBayDoors, resetBays, resetBombAttacks, resetFiringArcs, resetPickedUpMekWarriors, resetTransporter, restore, rollMovementInBuilding, scmCritStateCount, setAbandonmentAnnouncedRound, setAlreadyTwisted, setAltitude, setArcFired, setArmor, setArmor, setArmorTechLevel, setArmorTechLevel, setArmorTechRating, setArmorTechRating, setArmorTonnage, setArmorType, setArmorType, setArmorType, setArmorType, setArmsFlipped, setArmsFlipped, setASEWAffected, setAssaultDropInProgress, setBARRating, setBARRating, setBaseChassisFireConWeight, setBATaserShutdown, setBloodStalkerTarget, setBoardId, setBoobyTrapInitiated, setBraceLocation, setC3ecmAffected, setC3iNextUUIDAsString, setC3Master, setC3Master, setC3MasterIsUUIDAsString, setC3NetId, setC3NetId, setC3NetIdSelf, setC3UUID, setC3UUIDAsString, setCamouflage, setCanon, setCanUnstickByJumping, setCaptured, setCarcass, setCarefulStand, setCarriedObjects, setChassis, setClanChassisName, setClearingMinefield, setClearingWoods, setClimbing, setClimbingLevelsChosen, setClimbMode, setCommander, setConsecutiveRHSUses, setConversionMode, setConvertingNow, setCrew, setCritical, setCustomWeaponOrder, setCustomWeaponOrder, setDangling, setDeployed, setDeployRound, setDesignValid, setDestroyed, setDetectedByEnemy, setDisplacementAttack, setDisplayName, setDone, setDoomed, setDuplicateMarker, setEiShutdown, setElevation, setEMI, setEMPInterference, setEMPShutdownRounds, setEngineTechRating, setEngineTechRating, setEvading, setEverSeenByEnemy, setExternalId, setExternalIdAsString, setExternalSearchlight, setFacing, setFallen, setFindingClub, setFiredTsempThisTurn, setFleeZone, setForceGeneratorAvailability, setForceId, setForceString, setGame, setGameOptions, setHasDamagedRHS, setHasFiredTsemp, setHidden, setHiddenActivationPhase, setHullDown, setIcon, setId, setIGame, setIlluminated, setImpLastTurn, setInfantryCombatAttacker, setInfantryCombatTargetId, setInfantryCombatTurnCount, setInfantryCombatWantsWithdrawal, setInitialBV, setInternal, setInternal, setInvalidSourceBuildReasons, setIsJumpingNow, setJumpingWithMechanicalBoosters, setLandedAssaultDrop, setLastTarget, setLastTargetDisplayName, setLayingMines, setLoadedKeepers, setLoadedThisTurn, setLocationBlownOff, setLocationBlownOffThisPhase, setLocationStatus, setLocationStatus, setMadePointblankShot, setMagneticPulseHit, setManualBV, setManualShutdown, setMASCUsed, setMissionRoles, setMixedTech, setModel, setMovedBackwards, setMovementMode, setMulId, setNC3NextUUIDAsString, setNCrew, setNeverDeployed, setNewRoundNovaNetworkString, setNextSensor, setNMarines, setNPassenger, setOffBoard, setOriginalBuildYear, setOriginalJumpMP, setOriginalWalkMP, setOwner, setOwnerId, setPassedThrough, setPassedThroughBoardId, setPassedThroughFacing, setPendingAbandon, setPendingVariableRangeTargetingMode, setPlayerPickedPassThrough, setPosition, setPosition, setPowerReverse, setProne, setPublished, setPublishedSources, setQuirks, setRamming, setRapidFire, setReckless, setRecoveryTurn, setRemovalCondition, setRetreatedDirection, setSalvage, setSearchlightOverride, setSearchlightState, setSecondaryFacing, setSecondaryFacing, setSelfDestructedThisTurn, setSelfDestructing, setSelfDestructInitiated, setShutDown, setShutDownThisPhase, setSource, setSources, 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, setTechFaction, setTowedBy, setTowing, setTractor, setTraitorId, setTransportId, setTsempEffect, setTurnInterrupted, setUnitFileUUID, setUnitNumber, setUnitRole, setUnjammingRAC, setUnloaded, setUsedRHSLastTurn, setUsedSearchlight, setUseManualBV, setVariableRangeTargetingMode, setVectors, setVisibleToEnemy, setWeaponHit, setWeaponOrderChanged, setWeaponSortOrder, setWeight, setWhoCanDetect, setWhoCanSee, setWigeLiftoffHover, setYear, shouldDeploy, shouldOffBoardDeploy, shouldUseEdge, sideTable, sideTable, sideTable, sideTable, sideTableRam, sideTableRam, slotNumber, specificName, statusToString, statusToString, statusToString, storeOriginalUnitData, storeSavedUnitData, taserShutdown, toggleConversionMode, toString, towUnit, turnWasInterrupted, unload, updateBays, updateDuplicateMarkerAfterDelete, usedSearchlight, usedTag, usesTurnMode, usesWeaponBays, wasLoadedThisTurn, wasNeverDeployed, wasStruck, weaponFired, weaponFiredFrom, whichBay, wigeLiftoffHoverMethods inherited from class megamek.common.turns.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, setInitiativeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface megamek.common.units.BTObject
hasAerodyneSpheroidDistinction, isAero, isAerodyne, isAerospace, isAerospaceFighter, isAerospaceSV, isBattleArmor, isBattlefieldSupportAsset, isBattleMek, isCombatVehicle, isConventionalFighter, isConventionalInfantry, isDropShip, isFighter, isFixedWingSupport, isGround, isHandheldWeapon, isInfantry, isJumpShip, isLargeAerospace, isObjectiveMarker, isProtoMek, isQuadMek, isSingleUnit, isSmallCraft, isSpaceStation, isSpheroid, isSupportVehicle, isTripodMek, isUnitGroup, isVehicle, isWarShipMethods inherited from interface megamek.common.interfaces.CombatRole
hasRoleMethods inherited from interface megamek.common.interfaces.ForceAssignable
partOfForceMethods inherited from interface megamek.common.units.Fortifiable
advanceFortifyRound, beginFortify, cancelFortify, getFortifyStage, getFortifyTotalStages, getShortName, isFortifyExtendedThisRound, isFortifying, isFortifyOnFinalStageMethods inherited from interface megamek.common.equipment.ICarryable
getCarriedObjectDamageAllocation, targetForArmHitToHitCarriedObjectMethods inherited from interface megamek.common.game.InGameObject
hasOwnerMethods inherited from interface megamek.common.interfaces.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, isLegalMethods inherited from interface megamek.common.units.RubbleClearer
bankRubbleClearTurn, beginClearingRubble, cancelClearingRubble, isClearingRubbleMethods inherited from interface megamek.common.units.Targetable
isBomber, isBuildingEntityOrGunEmplacement, isHexBeingBombed, isOnBoardMethods inherited from interface megamek.common.equipment.Transporter
alwaysDamageCargoIfTransportHit, canTow, getCarryables, getNameForRecordSheets, getNumberLoadedThisTurn, getNumberUnloadedThisTurn, getTransporterType, hardpointCost, setEntity
-
Field Details
-
SYSTEM_LIFE_SUPPORT
public static final int SYSTEM_LIFE_SUPPORT- See Also:
-
SYSTEM_SENSORS
public static final int SYSTEM_SENSORS- See Also:
-
SYSTEM_COCKPIT
public static final int SYSTEM_COCKPIT- See Also:
-
SYSTEM_ENGINE
public static final int SYSTEM_ENGINE- See Also:
-
SYSTEM_GYRO
public static final int SYSTEM_GYRO- See Also:
-
ACTUATOR_SHOULDER
public static final int ACTUATOR_SHOULDER- See Also:
-
ACTUATOR_UPPER_ARM
public static final int ACTUATOR_UPPER_ARM- See Also:
-
ACTUATOR_LOWER_ARM
public static final int ACTUATOR_LOWER_ARM- See Also:
-
ACTUATOR_HAND
public static final int ACTUATOR_HAND- See Also:
-
ACTUATOR_HIP
public static final int ACTUATOR_HIP- See Also:
-
ACTUATOR_UPPER_LEG
public static final int ACTUATOR_UPPER_LEG- See Also:
-
ACTUATOR_LOWER_LEG
public static final int ACTUATOR_LOWER_LEG- See Also:
-
ACTUATOR_FOOT
public static final int ACTUATOR_FOOT- See Also:
-
systemNames
-
LOC_HEAD
public static final int LOC_HEAD- See Also:
-
LOC_CENTER_TORSO
public static final int LOC_CENTER_TORSO- See Also:
-
LOC_RIGHT_TORSO
public static final int LOC_RIGHT_TORSO- See Also:
-
LOC_LEFT_TORSO
public static final int LOC_LEFT_TORSO- See Also:
-
LOC_RIGHT_ARM
public static final int LOC_RIGHT_ARM- See Also:
-
LOC_LEFT_ARM
public static final int LOC_LEFT_ARM- See Also:
-
LOC_RIGHT_LEG
public static final int LOC_RIGHT_LEG- See Also:
-
LOC_LEFT_LEG
public static final int LOC_LEFT_LEG- See Also:
-
LOC_CENTER_LEG
public static final int LOC_CENTER_LEG- See Also:
-
COCKPIT_OFF
public static final int COCKPIT_OFF- See Also:
-
COCKPIT_ON
public static final int COCKPIT_ON- See Also:
-
COCKPIT_AIMED_SHOT
public static final int COCKPIT_AIMED_SHOT- See Also:
-
GYRO_UNKNOWN
public static final int GYRO_UNKNOWN- See Also:
-
GYRO_STANDARD
public static final int GYRO_STANDARD- See Also:
-
GYRO_XL
public static final int GYRO_XL- See Also:
-
GYRO_COMPACT
public static final int GYRO_COMPACT- See Also:
-
GYRO_HEAVY_DUTY
public static final int GYRO_HEAVY_DUTY- See Also:
-
GYRO_NONE
public static final int GYRO_NONE- See Also:
-
GYRO_SUPERHEAVY
public static final int GYRO_SUPERHEAVY- See Also:
-
GYRO_STRING
-
GYRO_SHORT_STRING
-
COCKPIT_UNKNOWN
public static final int COCKPIT_UNKNOWN- See Also:
-
COCKPIT_STANDARD
public static final int COCKPIT_STANDARD- See Also:
-
COCKPIT_SMALL
public static final int COCKPIT_SMALL- See Also:
-
COCKPIT_COMMAND_CONSOLE
public static final int COCKPIT_COMMAND_CONSOLE- See Also:
-
COCKPIT_TORSO_MOUNTED
public static final int COCKPIT_TORSO_MOUNTED- See Also:
-
COCKPIT_DUAL
public static final int COCKPIT_DUAL- See Also:
-
COCKPIT_INDUSTRIAL
public static final int COCKPIT_INDUSTRIAL- See Also:
-
COCKPIT_PRIMITIVE
public static final int COCKPIT_PRIMITIVE- See Also:
-
COCKPIT_PRIMITIVE_INDUSTRIAL
public static final int COCKPIT_PRIMITIVE_INDUSTRIAL- See Also:
-
COCKPIT_SUPERHEAVY
public static final int COCKPIT_SUPERHEAVY- See Also:
-
COCKPIT_SUPERHEAVY_TRIPOD
public static final int COCKPIT_SUPERHEAVY_TRIPOD- See Also:
-
COCKPIT_TRIPOD
public static final int COCKPIT_TRIPOD- See Also:
-
COCKPIT_INTERFACE
public static final int COCKPIT_INTERFACE- See Also:
-
COCKPIT_VRRP
public static final int COCKPIT_VRRP- See Also:
-
COCKPIT_QUADVEE
public static final int COCKPIT_QUADVEE- See Also:
-
COCKPIT_SUPERHEAVY_INDUSTRIAL
public static final int COCKPIT_SUPERHEAVY_INDUSTRIAL- See Also:
-
COCKPIT_SUPERHEAVY_COMMAND_CONSOLE
public static final int COCKPIT_SUPERHEAVY_COMMAND_CONSOLE- See Also:
-
COCKPIT_SMALL_COMMAND_CONSOLE
public static final int COCKPIT_SMALL_COMMAND_CONSOLE- See Also:
-
COCKPIT_TRIPOD_INDUSTRIAL
public static final int COCKPIT_TRIPOD_INDUSTRIAL- See Also:
-
COCKPIT_SUPERHEAVY_TRIPOD_INDUSTRIAL
public static final int COCKPIT_SUPERHEAVY_TRIPOD_INDUSTRIAL- See Also:
-
COCKPIT_STRING
-
COCKPIT_SHORT_STRING
-
FULL_HEAD_EJECT_STRING
- See Also:
-
RISC_HEAT_SINK_OVERRIDE_KIT
- See Also:
-
BLOCKED_FIRING_LOCATIONS
Contains a mapping of locations which are blocked when carrying cargo in the "key" location -
JUMP_UNKNOWN
public static final int JUMP_UNKNOWN- See Also:
-
JUMP_NONE
public static final int JUMP_NONE- See Also:
-
JUMP_STANDARD
public static final int JUMP_STANDARD- See Also:
-
JUMP_IMPROVED
public static final int JUMP_IMPROVED- See Also:
-
JUMP_PROTOTYPE
public static final int JUMP_PROTOTYPE- See Also:
-
JUMP_DISPOSABLE
public static final int JUMP_DISPOSABLE- See Also:
-
JUMP_PROTOTYPE_IMPROVED
public static final int JUMP_PROTOTYPE_IMPROVED- See Also:
-
HAS_FALSE
public static final int HAS_FALSE- See Also:
-
HAS_UNKNOWN
public static final int HAS_UNKNOWN- See Also:
-
HAS_TRUE
public static final int HAS_TRUE- See Also:
-
gyroType
protected int gyroType -
cockpitType
protected int cockpitType -
FRANKEN_MEK_STRUCTURE_HYBRID
- See Also:
-
EMERGENCY_COOLANT_SYSTEM_FAILURE
protected static int[] EMERGENCY_COOLANT_SYSTEM_FAILURE -
nCoolantSystemLevel
protected int nCoolantSystemLevel -
bCoolantWentUp
protected boolean bCoolantWentUp -
bUsedCoolantSystem
protected boolean bUsedCoolantSystem -
bDamagedCoolantSystem
protected boolean bDamagedCoolantSystem -
nCoolantSystemMOS
protected int nCoolantSystemMOS -
originalMovementMode
-
-
Constructor Details
-
Mek
public Mek()Construct a new, blank, Mek. -
Mek
public Mek(int inGyroType, int inCockpitType)
-
-
Method Details
-
canEjectCrew
public boolean canEjectCrew()A MekWarrior can always eject while alive and aboard.- Overrides:
canEjectCrewin classEntity
-
getUnitType
public int getUnitType()- Specified by:
getUnitTypein classEntity- See Also:
-
defaultCrewType
- Overrides:
defaultCrewTypein classEntity
-
cannotStandUpFromHullDown
public abstract boolean cannotStandUpFromHullDown()- Returns:
- True if this Mek can NOT stand up from hull down. Checks leg and gyro damage.
-
hasCowl
public boolean hasCowl()- Returns:
- True if this Mek has the Cowl quirk and quirks are used in the present game.
-
damageCowl
public int damageCowl(int amount) Damages the remaining cowl armor, if any, by the given amount. Returns the amount of excess damage that is left after deducting cowl armor. This method tests if the unit has Cowl and quirks are being used.- Parameters:
amount- The incoming damage- Returns:
- The damage left after deducting the cowl's remaining armor, if any
-
getInnerLocation
public static int getInnerLocation(int location) Returns the location that transferred damage or crits will go to from a given location. -
mostRestrictiveLoc
public static int mostRestrictiveLoc(int location1, int location2) Returns the location with the most restrictive firing arc for a weapon. -
leastRestrictiveLoc
public static int leastRestrictiveLoc(int location1, int location2) find the least restrictive location of the two locations passed in -
restrictScore
public static int restrictScore(int location) Helper function designed to give relative restrictiveness of locations. Used for finding the most restrictive firing arc for a weapon. -
setOmni
public void setOmni(boolean omni) OmniMeks have handles for Battle Armor squads to latch onto. Please note, this method should only be called during this Mek's construction.Overrides
Entity#setOmni(boolean) -
setTechLevel
public void setTechLevel(int techLevel) Description copied from class:EntitySets the tech level for this Entity.- Overrides:
setTechLevelin classEntity- Parameters:
techLevel- The tech level, it must be one of theTechConstants.
-
isFrankenMek
public boolean isFrankenMek() -
setFrankenMek
public void setFrankenMek(boolean frankenMek) -
initializeFrankenMekStructure
public void initializeFrankenMekStructure() -
getFrankenMekStructureTonnage
public int getFrankenMekStructureTonnage(int location) -
setFrankenMekStructureTonnage
public void setFrankenMekStructureTonnage(int location, int tonnage) -
setFrankenMekStructureTonnageForConstruction
public void setFrankenMekStructureTonnageForConstruction(int location, int tonnage) -
syncFrankenMekStructureTonnageToChassis
public void syncFrankenMekStructureTonnageToChassis() -
syncMatchingFrankenMekStructureTonnageToChassis
public void syncMatchingFrankenMekStructureTonnageToChassis(int matchingTonnage) -
syncFrankenMekCenterTorsoTonnageToChassis
public void syncFrankenMekCenterTorsoTonnageToChassis() -
getMaximumFrankenMekStructureTonnageForConstruction
public int getMaximumFrankenMekStructureTonnageForConstruction(int location) -
getFrankenMekStructureType
public int getFrankenMekStructureType(int location) -
getFrankenMekStructureTechLevel
public int getFrankenMekStructureTechLevel(int location) -
getFrankenMekStructureEquipment
-
getFrankenMekStructureCriticalSlots
public int getFrankenMekStructureCriticalSlots(int location) Returns the CO:p212 fallback structure crit count. Existing donor crit distributions take precedence. -
setFrankenMekStructureType
public void setFrankenMekStructureType(int location, int structureType, int structureTechLevel) -
getFrankenMekLocationSourceDisplayName
-
getFrankenMekLocationSourceType
-
linkFrankenMekLocationToSource
-
linkFrankenMekLocationToSource
-
clearFrankenMekLocationSource
public void clearFrankenMekLocationSource(int location) -
unlinkFrankenMekLocationSourceIfChanged
public void unlinkFrankenMekLocationSourceIfChanged(int location) -
applyFrankenMekDonorLocationArmor
-
setFrankenMekStructureType
-
hasHybridFrankenMekStructure
public boolean hasHybridFrankenMekStructure() -
getFrankenMekStructureDisplayName
-
getFrankenMekStructureName
-
hasMismatchedFrankenMekLegs
public boolean hasMismatchedFrankenMekLegs() -
hasMismatchedTonnageFrankenMekLegs
public boolean hasMismatchedTonnageFrankenMekLegs() -
getFrankenMekStructureWeightFraction
public double getFrankenMekStructureWeightFraction(int location) -
getFrankenMekInternalForLocation
public int getFrankenMekInternalForLocation(int location) -
applyFrankenMekInternalStructure
public void applyFrankenMekInternalStructure() -
setBAGrabBars
public void setBAGrabBars() -
setProtoMekClampMounts
public void setProtoMekClampMounts() -
addIntrinsicTransporters
public void addIntrinsicTransporters()Some entities will always have certain transporters. This method is overloaded to support that.- Overrides:
addIntrinsicTransportersin classEntity
-
load
Description copied from class:EntityLoad the given unit. -
locations
public int locations()Returns the number of locations in the entity -
newRound
public void newRound(int roundNumber) Description copied from class:EntityStart a new round- Specified by:
newRoundin interfaceRoundUpdated- Overrides:
newRoundin classEntity- Parameters:
roundNumber- theintnumber of the new round
-
getDugIn
public int getDugIn()- Specified by:
getDugInin interfaceFortifiable- Returns:
- the current dug-in stage (
Fortifiable.DUG_IN_NONEor one of theDUG_IN_FORTIFYING_*stages).
-
setDugIn
public void setDugIn(int stage) - Specified by:
setDugInin interfaceFortifiable- Parameters:
stage- the dug-in stage to set
-
getFortifyState
- Specified by:
getFortifyStatein interfaceFortifiable- Returns:
- the per-unit fortification damage tracker.
-
hasWorkingBackhoe
public boolean hasWorkingBackhoe()Description copied from class:EntityChecks if this entity has a working backhoe.A backhoe provides fieldworks (fortification) ability and, under the unofficial rule, can clear rubble more slowly than a bulldozer. By default, entities do not have a backhoe; vehicles and Meks can mount one.
- Overrides:
hasWorkingBackhoein classEntity- Returns:
trueif this Mek has a working backhoe (F_CLUB/S_BACKHOE), used for fieldworks and the unofficial backhoe rubble-clearing rule
-
getRubbleClearTarget
- Specified by:
getRubbleClearTargetin interfaceRubbleClearer- Returns:
- the rubble hex this unit is clearing, or
nullif it is not clearing rubble
-
setRubbleClearTarget
- Specified by:
setRubbleClearTargetin interfaceRubbleClearer- Parameters:
target- the rubble hex being cleared, ornullto stop clearing
-
getRubbleClearTurnsCompleted
public int getRubbleClearTurnsCompleted()- Specified by:
getRubbleClearTurnsCompletedin interfaceRubbleClearer- Returns:
- the number of turns of clearing banked so far
-
setRubbleClearTurnsCompleted
public void setRubbleClearTurnsCompleted(int turns) - Specified by:
setRubbleClearTurnsCompletedin interfaceRubbleClearer- Parameters:
turns- the number of turns of clearing banked so far
-
getRubbleClearTurnsRequired
public int getRubbleClearTurnsRequired()- Specified by:
getRubbleClearTurnsRequiredin interfaceRubbleClearer- Returns:
- the total number of turns this rubble hex needs to be cleared
-
setRubbleClearTurnsRequired
public void setRubbleClearTurnsRequired(int turns) - Specified by:
setRubbleClearTurnsRequiredin interfaceRubbleClearer- Parameters:
turns- the total number of turns the clearing takes
-
currentFortifyHealthSignature
public int currentFortifyHealthSignature()- Specified by:
currentFortifyHealthSignaturein interfaceFortifiable- Returns:
- the health signature used to detect damage between fortifying turns: total armor plus internal structure. Any loss between turns lowers this and marks the turn as interrupted.
-
locationIsTorso
public boolean locationIsTorso(int loc) Returns true if the location in question is a torso location -
locationIsLeg
public boolean locationIsLeg(int loc) Returns true if the location in question is a leg- Overrides:
locationIsLegin classEntity- Parameters:
loc- the location to check.- Returns:
- True if the given location is a leg location; this can only be true on Meks.
-
countBadLegs
public int countBadLegs()Count the number of destroyed or breached legs on the Mek -
atLeastOneBadLeg
public boolean atLeastOneBadLeg()- Returns:
- true if the Mek has at least one leg that is destroyed or breached.
-
hasHipCrit
public boolean hasHipCrit()Returns true if the entity has a hip crit.- Overrides:
hasHipCritin classEntity
-
legHasHipCrit
public boolean legHasHipCrit(int loc) Return true is the location is a leg and has a hip crit -
isSystemIntact
Deprecated, for removal: This API element is subject to removal in a future version.This function returns true iff the system is in perfect condition.- Parameters:
system- the system to check- Returns:
- false if the system is damaged.
-
countLegActuatorCrits
public int countLegActuatorCrits(int loc) Count non-hip leg actuator crits -
getStructureType
public int getStructureType(int location) Returns the internal structure type used in this location. -
hasCompositeStructure
public boolean hasCompositeStructure(int location) does this Mek have composite internal structure in this location? -
hasReinforcedStructure
public boolean hasReinforcedStructure(int location) does this Mek have reinforced internal structure in this location? -
hasJumpBoosters
Deprecated, for removal: This API element is subject to removal in a future version.does this Mek have working jump boosters? -
hasExtendedRetractableBlade
public boolean hasExtendedRetractableBlade()Does this Mek have an extended retractable blade in working condition? -
hasRetractedBlade
public boolean hasRetractedBlade(int loc) Does the entity have a retracted blade in the given location? Only true for biped Meks -
hasTSM
public boolean hasTSM(boolean includePrototype) Check for whether the Mek has triple strength myomer- Parameters:
includePrototype- Whether to include prototype TSM in the check. Prototype TSM does not have a movement bonus or a required heat level.- Returns:
- Whether the Mek has TSM
-
antiTSMVulnerable
public boolean antiTSMVulnerable()Description copied from class:EntityCheck for vulnerability to anti-TSM munitions. ATSM affects Meks with prototype TSM and any industrial TSM created before 3050, and conventional infantry with TSM implants.- Overrides:
antiTSMVulnerablein classEntity- Returns:
- Whether the unit is affected by ATSM munitions
-
hasActiveTSM
public boolean hasActiveTSM() -
hasActiveTSM
public boolean hasActiveTSM(boolean includeIndustrial) Checks whether any type of TSM is active. Industrial and prototype are always on. Standard is on when heat level is >= 9.- Parameters:
includeIndustrial- Whether to include industrial TSM in the check- Returns:
- Whether the Mek has some form of TSM and it's active
-
getTSMPickupModifier
public double getTSMPickupModifier()The modifier for picking objects up based on the unit having TSM- Returns:
- 2.0 if the entity has active TSM, 1.0 otherwise
-
hasIndustrialTSM
public boolean hasIndustrialTSM()does this Mek have industrial TSM= -
hasNullSig
public boolean hasNullSig()does this Mek have a null-sig-system? -
hasVoidSig
public boolean hasVoidSig()does this Mek have a void-sig-system? -
hasTracks
public boolean hasTracks()Does this Mek have tracks? Used for tracks as industrial equipment; QuadVees return false. -
hasChameleonShield
public boolean hasChameleonShield()does this Mek have a chameleon light polarization shield? -
getStandingHeat
public int getStandingHeat()Description copied from class:Entityget the heat generated by this Entity when standing still- Overrides:
getStandingHeatin classEntity
-
setEngine
set this Mek'sEngine -
calculateWalk
protected int calculateWalk()Used to set this Mek's original walk mp- Returns:
- these units calculated walking speed, dependent on engine rating and weight
-
getWalkHeat
public int getWalkHeat()Description copied from class:Entityget the heat generated by this Entity when walking/cruising- Overrides:
getWalkHeatin classEntity
-
getRunMP
-
getRunMPasString
Returns this entity's running/flank mp as a string.- Overrides:
getRunMPasStringin classEntity- Parameters:
gameState- Set this totrueto include information about the current state of equipment like MASC.- Returns:
- A string like
9(15)ifgameStateisfalseor there is no currentGame, or a string like9(15) MASC:0(3+)otherwise.
-
getRunHeat
public int getRunHeat()Depends on engine type- Overrides:
getRunHeatin classEntity
-
getSprintMP
Description copied from class:EntityReturns this entity's sprinting MP, modified according to the given setting. For units that can't sprint, this is equal to the modified run/flank MP.- Overrides:
getSprintMPin classEntity- Returns:
- This entity's modified sprinting MP
-
getRunningGravityLimit
public int getRunningGravityLimit()Description copied from class:Entityget the gravity limit for ground movement- Overrides:
getRunningGravityLimitin classEntity
-
getSprintHeat
public int getSprintHeat()Depends on engine type- Overrides:
getSprintHeatin classEntity
-
getJumpMP
-
getOriginalMechanicalJumpBoosterMP
public int getOriginalMechanicalJumpBoosterMP()- Returns:
- The jump MP for the Mek's mechanical jump boosters, unmodified by damage, other equipment (shields) or any other effects.
-
getMechanicalJumpBoosterMP
- Overrides:
getMechanicalJumpBoosterMPin classEntity- Returns:
- The jump MP for a Mek's mechanical jump boosters, modified as given through the MPCalculationSetting. Returns 0 for non-Meks.
-
hasChainDrape
public boolean hasChainDrape() -
getPartialWingJumpWeightClassBonus
public int getPartialWingJumpWeightClassBonus() -
getPartialWingJumpAtmosphereBonus
public int getPartialWingJumpAtmosphereBonus() -
getPartialWingJumpAtmosphereBonus
-
getPartialWingJumpBonus
Gives the bonus to Jump MP conferred by a Mek partial wing.- Parameters:
mount- The mounted location of the Wing- Returns:
- The Jump MP bonus conferred by the wing
-
getPartialWingJumpBonus
-
getJumpType
public int getJumpType()Returns the type of jump jet system the Mek has.- Overrides:
getJumpTypein classEntity
-
getJumpHeat
public int getJumpHeat(int movedMP) Description copied from class:Entityget the heat generated by this Entity when jumping for a certain amount of MP- Overrides:
getJumpHeatin classEntity- Parameters:
movedMP- the number of movement points spent
-
torsoJumpJets
public int torsoJumpJets()Returns the number of (working) jump jets mounted in the torsos. -
isEligibleForPavementOrRoadBonus
public boolean isEligibleForPavementOrRoadBonus()Description copied from class:EntityTanks and certain other units can get a +1 bonus to MP if their move is entirely on pavement.- Overrides:
isEligibleForPavementOrRoadBonusin classEntity- Returns:
- true if the
Entitygets a movement bonus on pavement
-
nextConversionMode
Description copied from class:EntityEntities that can convert movement modes (LAMs, QuadVees) report the next mode to assume when a convert movement command is processed. This provides a set order for cycling through available modes.- Overrides:
nextConversionModein classEntity- Parameters:
afterMode- The movement mode to convert from.- Returns:
- The next movement mode in the sequence.
-
canFall
public boolean canFall(boolean gyroLegDamage) QuadVees and LAMs may not have to make PSRs to avoid falling depending on their mode, and Meks using tracks for movement do not have to make PSRs for damage to gyro or leg actuators. -
height
public int height()Return the height of this Mek above the terrain. -
addEngineSinks
Adds heat sinks to the engine. Uses clan/normal depending on the currently set techLevel -
addEngineSinks
Adds heat sinks to the engine. Adds either the engine capacity, or the entire number of heat sinks, whichever is less -
addEngineSinks
base for adding engine sinks. Newer method allows externals to say how much are engine HS.- Parameters:
totalSinks- the amount of heats inks to add to the enginesinkName- theStringdetermining the type of heatsink to add. must be a lookup name of a HeatSinkType
-
addEngineSinks
add heat sinks into the engine- Parameters:
sinkName- theStringdetermining the type of heatsink to add. must be a lookup name of a HeatSinkTypetoAllocate- Number of hs to add to the Engine.
-
getEngineCritHeat
public int getEngineCritHeat()Returns extra heat generated by engine crits- Overrides:
getEngineCritHeatin classEntity- Returns:
- The extra heat generated by engine crits.
-
heatSinks
public int heatSinks()Returns the number of heat sinks, functional or not. -
heatSinks
public int heatSinks(boolean countPrototypes) Returns the number of heat sinks, functional or not.- Parameters:
countPrototypes- Set TRUE to include Prototype Heat Sinks in the total.
-
damagedHeatSinks
public int damagedHeatSinks()Returns the number of destroyed heat sinks. -
getHeatSinkTypeName
Returns the name of the heat sinks mounted on this 'Mek. -
getHeatCapacity
public int getHeatCapacity()Returns the about of heat that the entity can sink each turn.- Overrides:
getHeatCapacityin classEntity
-
getHeatCapacity
public int getHeatCapacity(boolean radicalHeatSink) - Overrides:
getHeatCapacityin classEntity
-
getHeatCapacity
public int getHeatCapacity(boolean includePartialWing, boolean includeRadicalHeatSink) -
getHeatCapacityWithWater
public int getHeatCapacityWithWater()- Overrides:
getHeatCapacityWithWaterin classEntity- Returns:
- The amount of heat that the entity can sink each turn, factoring in whether the entity is standing in water.
-
tracksHeat
public boolean tracksHeat()Description copied from interface:TargetableUsed to identify a target that tracks heat buildup (Meks, ASFs, and small craft).- Specified by:
tracksHeatin interfaceTargetable- Returns:
- Whether the target tracks heat buildup.
-
getMovementString
Returns the name of the type of movement used. This is Mek-specific.- Specified by:
getMovementStringin classEntity
-
getMovementAbbr
Returns the name of the type of movement used. This is Mek-specific.- Specified by:
getMovementAbbrin classEntity
-
canChangeSecondaryFacing
public boolean canChangeSecondaryFacing()Description copied from class:EntityCan this entity change secondary facing at all?- Specified by:
canChangeSecondaryFacingin classEntity
-
isValidSecondaryFacing
public boolean isValidSecondaryFacing(int dir) Can this Mek torso twist in the given direction?- Specified by:
isValidSecondaryFacingin classEntity
-
clipSecondaryFacing
public int clipSecondaryFacing(int dir) Return the nearest valid direction to torso twist in- Specified by:
clipSecondaryFacingin classEntity- Returns:
- the closest valid secondary facing.
-
hasRearArmor
public boolean hasRearArmor(int loc) Description copied from class:EntityDoes this location have rear armor?- Overrides:
hasRearArmorin classEntity
-
getArmor
public int getArmor(int loc, boolean rear) Returns the amount of armor in the location specified. Mek version, handles rear armor. -
getArmorForReal
public int getArmorForReal(int loc, boolean rear) - Overrides:
getArmorForRealin classEntity
-
getOArmor
public int getOArmor(int loc, boolean rear) Returns the original amount of armor in the location specified. Mek version, handles rear armor. -
setArmor
public void setArmor(int val, int loc, boolean rear) Sets the amount of armor in the location specified. Mek version, handles rear armor. -
initializeRearArmor
public void initializeRearArmor(int val, int loc) Initializes the rear armor on the Mek. Sets the original and starting point of the armor to the same number. -
setHardenedArmorDamaged
- Overrides:
setHardenedArmorDamagedin classEntity
-
isHardenedArmorDamaged
Description copied from class:Entitydo we have a half-hit hardened armor point in the location struck by this?- Overrides:
isHardenedArmorDamagedin classEntity
-
setArmorDamagedThisTurn
public void setArmorDamagedThisTurn(int loc, boolean tookDamage) did the armor in this location take damage which did not destroy it at least once this turn? this is used to decide whether to trigger Harjel II/III -
isArmorDamagedThisTurn
public boolean isArmorDamagedThisTurn(int loc) did the armor in this location take damage which did not destroy it at least once this turn? this is used to decide whether to trigger Harjel II/III -
getWeaponArc
public int getWeaponArc(int weaponNumber) Returns the Compute.ARC that the weapon fires into.- Specified by:
getWeaponArcin classEntity- Parameters:
weaponNumber- integer equipment number, index from equipment list- Returns:
- arc the specified weapon is in
-
getDirectionalTorsoMountArc
Computes the firing arc for a weapon in a Directional Torso Mount (BMM p.83).The mount behaves like a turret: it always fires into a forward arc, but that arc is measured against the unit's (secondary) facing plus the mount's facing offset (see
ComputeArc.getFacingandMounted.getDirectionalMountFacing()). The 2-point version restricts the offset to forward or rear; the 3-point quad turret may rotate to any of the six facings. The mount therefore returnsARC_FORWARDand the direction is conveyed entirely by the offset, exactly as Mek turret-mounted weapons work.- Parameters:
mounted- the weapon being checked- Returns:
ARC_FORWARDif this weapon is in a Directional Torso Mount, otherwise an emptyOptionalInt
-
isSecondaryArcWeapon
public boolean isSecondaryArcWeapon(int weaponId) Returns true if this weapon fires into the secondary facing arc. If false, assume it fires into the primary.- Specified by:
isSecondaryArcWeaponin classEntity
-
joinLocationAbbr
Description copied from class:EntityJoins the abbreviations for the locations into a String with / as the separator. If the number of locations exceeds the provided limit, the result is abbreviated. By default, the abbreviation is simply an asterisk, but Meks have specific abbreviations locations that include all torso or leg positions.- Overrides:
joinLocationAbbrin classEntity- Parameters:
locations- A list of location indiceslimit- The maximum number of locations to show in full- Returns:
- A string formatted for display that shows the locations
-
rollHitLocation
Description copied from class:EntityRolls up a hit location- Specified by:
rollHitLocationin classEntity
-
rollHitLocation
public HitData rollHitLocation(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) Wrapper that handles applying Edge (if allowed).- Specified by:
rollHitLocationin classEntity- Returns:
- HitData, possibly re-rolled once (once!) with Edge.
-
applyEdgeToHitLocation
public HitData applyEdgeToHitLocation(HitData originalHit, int table, int side, int aimedLocation, AimingMode aimingMode, int cover) For units that can use Edge to re-roll hits, determine whether to do so (if possible).- Parameters:
originalHit- the hit to consider using Edge on.
-
innerRollHitLocation
protected HitData innerRollHitLocation(int table, int side, int aimedLocation, AimingMode aimingMode, int cover) -
tac
Called when a thru-armor-crit is rolled. Checks the game options and either returns no critical hit, rolls a floating crit, or returns a TAC in the specified location. -
getTransferLocation
Gets the location that excess damage transfers to- Specified by:
getTransferLocationin classEntity
-
getDependentLocation
public int getDependentLocation(int loc) Description copied from class:EntityGets the location that is destroyed recursively. That is, one location outwards.- Overrides:
getDependentLocationin classEntity
-
setInternal
public abstract void setInternal(int head, int ct, int t, int arm, int leg) Sets the internal structure for the Mek.- Parameters:
head- headct- center torsot- right/left torsoarm- right/left armleg- right/left leg
-
autoSetInternal
public void autoSetInternal()Set the internal structure to the appropriate value for the Mek's weight class- Specified by:
autoSetInternalin classEntity
-
hasClanCaseEquipped
public boolean hasClanCaseEquipped()Returns true if this Mek has any Clan CASE equipment mounted. -
isClanCaseOptedOut
public boolean isClanCaseOptedOut(int location) Returns true if the given location has been opted out of automatic Clan CASE. -
addClanCaseOptOut
public void addClanCaseOptOut(int location) Opts out of automatic Clan CASE for the given location. -
removeClanCaseOptOut
public void removeClanCaseOptOut(int location) Removes the Clan CASE opt-out for the given location. -
clearClanCaseOptOut
public void clearClanCaseOptOut()Clears all Clan CASE opt-out locations. -
hasAnyClanCaseOptOut
public boolean hasAnyClanCaseOptOut()Returns true if any location is opted out of automatic Clan CASE. -
getClanCaseOptOutLocations
Returns an unmodifiable view of the set of locations opted out of automatic Clan CASE. -
addClanCase
public void addClanCase()Description copied from class:EntityFor clan units that get automatic Clan CASE, adds clan CASE in every location that has potentially explosive equipment (this includes uncharged PPC Capacitors).As clan CASE does not need critical slots, this method does not perform checks whether other CASE types are already present on a location.
This method does nothing by default and must be overridden for unit types that get Clan CASE.
- Overrides:
addClanCasein classEntity
-
addTargCompWithoutSlots
public MiscMounted addTargCompWithoutSlots(MiscType etype, int loc, boolean omniPod, boolean armored) throws LocationFullException Adds equipment without adding slots for it. Specifically for targeting computers, which when loaded from a file don't have a correct size and get loaded slot by slot- Throws:
LocationFullException
-
addEquipment
public Mounted<?> addEquipment(EquipmentType etype, EquipmentType etype2, int loc, boolean omniPod, boolean armored) throws LocationFullException - Throws:
LocationFullException
-
addEquipment
public void addEquipment(Mounted<?> mounted, int loc, boolean rearMounted) throws LocationFullException Mounts the specified weapon in the specified location.- Overrides:
addEquipmentin classEntity- Parameters:
mounted- The new equipmentloc- The location; may be Entity.LOC_NONErearMounted- True to make the equipment rear-facing- Throws:
LocationFullException- When the location is full
-
addEquipment
public void addEquipment(Mounted<?> mounted, int loc, boolean rearMounted, int critSlot) throws LocationFullException Mounts the specified weapon in the specified location.- Overrides:
addEquipmentin classEntity- Throws:
LocationFullException
-
getWeaponListWithHHW
Description copied from class:EntityReturns the values ofEntity.getWeaponList()plus any weapons added by handheld weapons.- Overrides:
getWeaponListWithHHWin classEntity
-
getTechAdvancement
public static TechAdvancement getTechAdvancement(long etype, boolean primitive, boolean industrial, int weightClass) -
getConstructionTechAdvancement
Description copied from class:Entityreturn - the base construction option tech advancement- Specified by:
getConstructionTechAdvancementin classEntity
-
getIndustrialAdvFireConTA
-
getCockpitTechAdvancement
-
getCockpitTechAdvancement
-
getGyroTechAdvancement
-
getGyroTechAdvancement
-
getFullHeadEjectAdvancement
-
getRiscHeatSinkOverrideKitAdvancement
-
addSystemTechAdvancement
Description copied from class:EntityIncorporate dates for components that are not in the equipment list, such as engines and structure.- Overrides:
addSystemTechAdvancementin classEntity
-
getCost
Description copied from class:EntityCalculates 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. -
getPriceMultiplier
public double getPriceMultiplier()Description copied from class:EntityReturns 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:
getPriceMultiplierin classEntity
-
implicitClanCASE
public int implicitClanCASE()Description copied from class:EntityUsed to for cost calculations. Though the TM rules allow a Clan unit to be designed without CASE, MM assumes that CASE is present in any location that has explosive equipment.- Overrides:
implicitClanCASEin classEntity- Returns:
- The number of locations protected by Clan CASE beyond what is explicitly mounted.
-
getActuatorCost
public double getActuatorCost() -
getArmActuatorCost
protected double getArmActuatorCost() -
getLegActuatorCost
protected abstract double getLegActuatorCost() -
victoryReport
Description copied from class:EntityGenerates a vector containing reports on all useful information about this entity.- Specified by:
victoryReportin classEntity
-
addEntityBonuses
Add in any piloting skill mods- Specified by:
addEntityBonusesin classEntity
-
getMaxElevationChange
public int getMaxElevationChange()Description copied from class:EntityThe maximum elevation change the entity can cross- Overrides:
getMaxElevationChangein classEntity
-
getMaxElevationDown
public int getMaxElevationDown(int currElevation) Description copied from class:EntityReturns the maximum number of downward elevation changes a unit can make. For some units (namely, WiGEs), this can depend upon their current elevation (since elevation determines if the WiGEs is using WiGE movement or not).- Overrides:
getMaxElevationDownin classEntity
-
isStealthActive
public boolean isStealthActive()Determine if this unit has an active and working stealth system. (stealth can be active and not working when under ECCM)Subclasses are encouraged to override this method.
- Overrides:
isStealthActivein classEntity- Returns:
trueif this unit has a stealth system that is currently active,falseif there is no stealth system or if it is inactive.
-
isStealthOn
public boolean isStealthOn()Determine if this unit has an active and working stealth system. (stealth can be active and not working when under ECCM)Subclasses are encouraged to override this method.
- Overrides:
isStealthOnin classEntity- Returns:
trueif this unit has a stealth system that is currently active,falseif there is no stealth system or if it is inactive.
-
isNullSigActive
public boolean isNullSigActive()Does the Mek have a functioning null signature system, or a void sig that is acting as a null sig because of externally carried BA?- Overrides:
isNullSigActivein classEntity- Returns:
trueif this unit has a null signature system that is currently active,falseif there is no stealth system or if it is inactive.
-
isNullSigOn
public boolean isNullSigOn()Description copied from class:EntityDetermine if this unit has an active null-signature system.Subclasses are encouraged to override this method.
- Overrides:
isNullSigOnin classEntity- Returns:
trueif this unit has a null signature system that is currently active,falseif there is no stealth system or if it is inactive.
-
isVoidSigActive
public boolean isVoidSigActive()Does the Mek have a functioning void signature system?- Overrides:
isVoidSigActivein classEntity- Returns:
trueif this unit has a void signature system that is currently active,falseif there is no stealth system or if it is inactive.
-
isVoidSigOn
public boolean isVoidSigOn()Does the Mek have a functioning void signature system?- Overrides:
isVoidSigOnin classEntity- Returns:
trueif this unit has a void signature system that is currently active,falseif there is no stealth system or if it is turned off.
-
isChameleonShieldActive
public boolean isChameleonShieldActive()Does the Mek have a functioning Chameleon Light Polarization Field? For a CLPS to be functioning it must be on and the unit can't have mounted mechanized BattleArmor.- Overrides:
isChameleonShieldActivein classEntity- Returns:
trueif this unit has a void signature system that is currently active,falseif there is no stealth system or if it is inactive.
-
isChameleonShieldOn
public boolean isChameleonShieldOn()Does the Mek Chameleon Light Polarization Field turned on? This is used for heat generation purposes. A CLPS can be on and generating heat but not providing any benefit if the unit has mechanized BattleArmor.- Overrides:
isChameleonShieldOnin classEntity- Returns:
trueif this unit has a void signature system that is currently active,falseif there is no stealth system or if it is inactive.
-
getStealthModifier
Determine the stealth modifier for firing at this unit from the given range. If the value supplied forrangeis not one of theEntityclass range constants, anIllegalArgumentExceptionwill be thrown.Subclasses are encouraged to override this method.
- Overrides:
getStealthModifierin classEntity- Parameters:
range- - anintvalue that must match one of theComputeclass range constants.ae- - entity making the attack- Returns:
- a
TargetRollvalue that contains the stealth modifier for the given range.
-
isRepairable
public boolean isRepairable()Determine if the unit can be repaired, or only harvested for spares.- Overrides:
isRepairablein classEntity- Returns:
- A
booleanthat istrueif the unit can be repaired (given enough time and parts); if this value isfalse, the unit is only a source of spares. - See Also:
-
canCharge
public boolean canCharge() -
canDFA
public boolean canDFA() -
getNumberOfSinks
public int getNumberOfSinks()- Returns:
- the total number of sinks
-
hasDoubleHeatSinks
public boolean hasDoubleHeatSinks() -
hasLaserHeatSinks
public boolean hasLaserHeatSinks() -
setActiveSinksNextRound
public void setActiveSinksNextRound(int sinks) Bulk control for heat sink activation: switches individual heat sink mounts On or Off so that the given number of sinks remains active. Like all activation/deactivation, the change is declared now and takes effect in the End Phase (the mounts' pending modes apply at the round rollover). Prototype double heat sinks and Freezers are not part of this counter (matchinggetNumberOfSinks()); they can be switched individually via their equipment mode. The value arrives from a client packet, so out-of-range requests are clamped (mirroringAero.setActiveSinksNextRound(int)): a negative count deactivates every sink, a count above the number of operable sinks activates every sink.- Specified by:
setActiveSinksNextRoundin interfaceActiveHeatSinkController- Parameters:
sinks- the number of heat sinks that should be active next round
-
getActiveSinks
public int getActiveSinks()- Specified by:
getActiveSinksin interfaceActiveHeatSinkController- Returns:
- the number of operable heat sinks that are currently switched on (prototype double heat sinks and
Freezers excluded, matching
getNumberOfSinks())
-
resetSinks
public void resetSinks()Switches every heat sink mount (including prototype double heat sinks and Freezers) back on. -
getActiveSinksNextRound
public int getActiveSinksNextRound()- Specified by:
getActiveSinksNextRoundin interfaceActiveHeatSinkController- Returns:
- the number of operable heat sinks that will be switched on next round, taking pending mode changes into account (prototype double heat sinks and Freezers excluded)
-
hasEjectSeat
public boolean hasEjectSeat()- Returns:
- unit has an ejection seat
-
isAutoEject
public boolean isAutoEject()- Returns:
- Returns the autoEject.
-
setAutoEject
public void setAutoEject(boolean autoEject) - Parameters:
autoEject- The autoEject to set.
-
isCondEjectAmmo
public boolean isCondEjectAmmo()- Returns:
- Conditional Ejection Ammo
-
setCondEjectAmmo
public void setCondEjectAmmo(boolean condEjectAmmo) - Parameters:
condEjectAmmo- The condEjectAmmo to set.
-
isCondEjectEngine
public boolean isCondEjectEngine()- Returns:
- Conditional Ejection Engine
-
setCondEjectEngine
public void setCondEjectEngine(boolean condEjectEngine) - Parameters:
condEjectEngine- The condEjectEngine to set.
-
isCondEjectCTDest
public boolean isCondEjectCTDest()- Returns:
- Conditional Ejection CTDest
-
setCondEjectCTDest
public void setCondEjectCTDest(boolean condEjectCTDest) - Parameters:
condEjectCTDest- The condEjectCTDest to set.
-
isCondEjectHeadshot
public boolean isCondEjectHeadshot()- Returns:
- Conditional Ejection Headshot
-
setCondEjectHeadshot
public void setCondEjectHeadshot(boolean condEjectHeadshot) - Parameters:
condEjectHeadshot- The condEjectHeadshot to set.
-
removePartialCoverHits
public boolean removePartialCoverHits(int location, int cover, int side) - Overrides:
removePartialCoverHitsin classEntity
-
hasActiveEiCockpit
public boolean hasActiveEiCockpit()Description copied from class:EntityReturns whether this unit has an active Enhanced Imaging (EI) cockpit system. The EI implant is the primary requirement (same pattern as DNI viaEntity.isNeuralInterfaceActive(boolean, boolean)). When tracking hardware is disabled (default), the implant alone provides EI benefits. When tracking is enabled, the unit must also have EI cockpit equipment.A voluntarily shut down EI Interface suppresses the system in every neural interface mode. Per IO p.69 a shut down interface "will deactivate the system's benefits, but will also protect the pilot from the negative effects of EI use in combat", so this check cannot be folded into the hardware requirement - the
Pilot Abilities Onlymode never evaluates that argument.- Overrides:
hasActiveEiCockpitin classEntity- Returns:
trueif the unit has an active EI cockpit system
-
getCockpitStatus
Deprecated, for removal: This API element is subject to removal in a future version. -
getCockpitStatusNextRound
Deprecated, for removal: This API element is subject to removal in a future version. -
setCockpitStatus
public void setCockpitStatus(int state) -
getGyroType
public int getGyroType()Description copied from class:EntityOnly Meks have Gyros but this helps keep the code a bit cleaner.- Overrides:
getGyroTypein classEntity- Returns:
-1
-
getCockpitType
public int getCockpitType() -
setGyroType
public void setGyroType(int type) -
setCockpitType
public void setCockpitType(int type) -
getGyroTypeString
-
getCockpitTypeString
-
getCockpitTypeString
-
getGyroTypeString
-
getGyroTypeShortString
-
getCockpitTypeString
-
getGyroTypeForString
-
getCockpitTypeForString
-
getSystemName
-
getRawSystemName
-
getGyroDisplayString
-
getCockpitDisplayString
-
hasAdvancedFireControl
public boolean hasAdvancedFireControl() -
canAssaultDrop
public boolean canAssaultDrop()- Overrides:
canAssaultDropin classEntity
-
isLocationProhibited
Description copied from class:EntityReturns true when the given location cannot legally be entered or deployed into by this unit at the given elevation or altitude. Also returns true when the location doesn't exist. Even when this method returns true, the location need not be deadly to the unit.- Overrides:
isLocationProhibitedin classEntity- Parameters:
c- The position to testtestBoardId- The board to testtestElevation- The elevation or altitude to test- Returns:
- True when the location is illegal to be in for this unit, regardless of elevation
- See Also:
-
isLocationDeadly
- Overrides:
isLocationDeadlyin classEntity
-
isLocationDeadly
Description copied from class:EntityReturns true if the specified hex exists and has terrain that is deadly to this unit. Note: Currently this is only overridden for meks and is missing elevation information which makes it incomplete.- Overrides:
isLocationDeadlyin classEntity
-
getMtf
Get an '.mtf' file representation of the Mek. This string can be directly written to disk as a file and later loaded by the MtfFile class. -
addCockpit
public void addCockpit()Add the critical slots necessary for a standard cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addIndustrialCockpit
public void addIndustrialCockpit()Add the critical slots necessary for an industrial cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addPrimitiveCockpit
public void addPrimitiveCockpit()Add the critical slots necessary for an industrial cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addIndustrialPrimitiveCockpit
public void addIndustrialPrimitiveCockpit()Add the critical slots necessary for an industrial primitive cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addSmallCockpit
public void addSmallCockpit()Add the critical slots necessary for a small cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addInterfaceCockpit
public void addInterfaceCockpit()Add the critical slots necessary for a small cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addCommandConsole
public void addCommandConsole() -
addQuadVeeCockpit
public void addQuadVeeCockpit() -
addDualCockpit
public void addDualCockpit() -
addSuperheavyIndustrialCockpit
public void addSuperheavyIndustrialCockpit() -
addSuperheavyCommandConsole
public void addSuperheavyCommandConsole() -
addSmallCommandConsole
public void addSmallCommandConsole() -
addTorsoMountedCockpit
public void addTorsoMountedCockpit(boolean vrpp) Add the critical slots necessary for a torso-mounted cockpit. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code.- Parameters:
vrpp- if this is a VRPP rather than a standard torso-mounted cockpit
-
getCockpit
Convenience function that returns the critical slot containing the cockpit -
getCrewForCockpitSlot
Determines which crew slot is associated with a particular cockpit critical.- Parameters:
cs- A cockpit critical slot- Returns:
- The crew slot index associated with this critical slot, or -1 to indicate the entire crew.
-
hasCommandConsoleBonus
public boolean hasCommandConsoleBonus()Description copied from class:EntityUnits with a cockpit command console provide an initiative bonus to their side, provided that the commander is not currently functioning as pilot, the unit has advanced fire control, and the unit is heavy or assault weight class.- Overrides:
hasCommandConsoleBonusin classEntity- Returns:
- Whether the Entity qualifies for initiative bonus from cockpit command console.
-
hasGhostTargetEquipment
public boolean hasGhostTargetEquipment()Description copied from class:EntityChecks if this entity has any equipment set to a Ghost Targets mode, without checking PSR success, spaceborne status, or shutdown state. Used for determining turn eligibility in the PRE_FIRING phase (Standard ghost target mode).- Overrides:
hasGhostTargetEquipmentin classEntity- Returns:
- true if the entity has qualifying equipment in a Ghost Targets mode
-
addGyro
public boolean addGyro()Add the critical slots necessary for a standard gyro. Also set the gyro type variable. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code.- Returns:
- false if insufficient critical space
-
addSuperheavyGyro
public void addSuperheavyGyro()Add the critical slots necessary for a standard gyro. Also set the gyro type variable. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addCompactGyro
public void addCompactGyro()Add the critical slots necessary for a compact gyro. Also set the gyro type variable. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addXLGyro
public void addXLGyro()Add the critical slots necessary for an extra-light gyro. Also set the gyro type variable. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addHeavyDutyGyro
public void addHeavyDutyGyro()Add the critical slots necessary for a heavy-duty gyro. Also set the gyro type variable. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
addEngineCrits
public void addEngineCrits()Add the critical slots necessary for the mek's engine. Calling this method before setting a mek's engine object will result in a NPE. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
clearEngineCrits
public void clearEngineCrits()Remove all engine critical slots from the mek. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
clearCockpitCrits
public void clearCockpitCrits()Remove all cockpit critical slots from the mek. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
clearGyroCrits
public void clearGyroCrits()Remove all gyro critical slots from the mek. Note: This is part of the mek creation public API, and might not be referenced by any MegaMek code. -
shieldAbsorptionDamage
public int shieldAbsorptionDamage(int damage, int location, boolean rear) -
hasHarJelIIIn
public boolean hasHarJelIIIn(int loc) Does this Mek have an undamaged HarJel system in this location?- Parameters:
loc- theintlocation to check- Returns:
- a
booleanvalue indicating a present HarJel system
-
hasHarJelIIIIn
public boolean hasHarJelIIIIn(int loc) Does this Mek have an undamaged HarJel system in this location?- Parameters:
loc- theintlocation to check- Returns:
- a
booleanvalue indicating a present HarJel system
-
setGrappled
public void setGrappled(int id, boolean attacker) - Overrides:
setGrappledin classEntity
-
isGrappleAttacker
public boolean isGrappleAttacker()- Overrides:
isGrappleAttackerin classEntity
-
getGrappled
public int getGrappled()- Overrides:
getGrappledin classEntity- Returns:
- The ID of a unit that this unit is grappling or grappled by; Entity.NONE if not grappling anything and not being grappled.
-
isGrappledThisRound
public boolean isGrappledThisRound()- Overrides:
isGrappledThisRoundin classEntity
-
setGrappledThisRound
public void setGrappledThisRound(boolean grappled) - Overrides:
setGrappledThisRoundin classEntity
-
isEligibleForMovement
public boolean isEligibleForMovement()Description copied from class:EntityPretty much anybody's eligible for movement. If the game option is toggled on, inactive and immobile entities are not eligible. OffBoard units are always ineligible- Overrides:
isEligibleForMovementin classEntity- Returns:
- whether the entity is allowed to move
-
destroyLocation
public void destroyLocation(int loc) Description copied from class:EntityMarks all equipment in a location on this entity as destroyed.- Overrides:
destroyLocationin classEntity- Parameters:
loc- The location that is destroyed.
-
destroyLocation
public void destroyLocation(int loc, boolean blownOff) Description copied from class:EntityMarks all equipment in a location on this entity as destroyed.- Overrides:
destroyLocationin classEntity- Parameters:
loc- The location that is destroyed.blownOff- true if the location was blown off
-
setGrappleSide
public void setGrappleSide(int side) - Overrides:
setGrappleSidein classEntity
-
getGrappleSide
public int getGrappleSide()- Overrides:
getGrappleSidein classEntity
-
isCarefulStand
public boolean isCarefulStand()- Overrides:
isCarefulStandin classEntity
-
getCoolantFailureAmount
public int getCoolantFailureAmount()How many times TacOps coolant failure has occurred, which is also the reduction in heat sinking capacity- Overrides:
getCoolantFailureAmountin classEntity
-
addCoolantFailureAmount
public void addCoolantFailureAmount(int amount) Description copied from class:EntityThis is implemented in subclasses, do nothing in general- Overrides:
addCoolantFailureAmountin classEntity- Parameters:
amount- Amount of Coolant to add
-
resetCoolantFailureAmount
public void resetCoolantFailureAmount()Reset count of TacOps coolant failures to zero (no loss)- Overrides:
resetCoolantFailureAmountin classEntity
-
getTotalCommGearTons
public int getTotalCommGearTons()- Overrides:
getTotalCommGearTonsin classEntity- Returns:
- the total tonnage of communications gear in this entity
-
getHQIniBonus
public int getHQIniBonus()- Overrides:
getHQIniBonusin classEntity- Returns:
- the initiative bonus this Entity grants for HQ
-
getBARRating
public int getBARRating(int loc) Description copied from class:EntityReturn the BAR-rating of this Entity's armor- Overrides:
getBARRatingin classEntity- Returns:
- the BAR rating
-
isIndustrial
public boolean isIndustrial()Is this an Industrial Mek?- Returns:
- if this Mek has an industrial inner structure
-
setJustMovedIntoIndustrialKillingWater
public void setJustMovedIntoIndustrialKillingWater(boolean moved) set if this Mek just moved into water that would kill it because of the lack of environmental sealing -
isJustMovedIntoIndustrialKillingWater
public boolean isJustMovedIntoIndustrialKillingWater()did this Mek just moved into water that would kill it because we lack environmental sealing? -
shouldDieAtEndOfTurnBecauseOfWater
public boolean shouldDieAtEndOfTurnBecauseOfWater()should this Mek die at the end of turn because it's an IndustrialMek without environmental sealing that moved into water last round and stayed there? -
setShouldDieAtEndOfTurnBecauseOfWater
public void setShouldDieAtEndOfTurnBecauseOfWater(boolean moved) set if this Mek should die at the end of turn because it's an IndustrialMek without environmental sealing that moved into water last round and stayed there? -
setStalled
public void setStalled(boolean stalled) Set if this Mek's ICE Engine is stalled or not should only be used for industrial Meks carrying an ICE engine -
isStalled
public boolean isStalled()Description copied from class:EntityIs this Entity's ICE Engine stalled? -
isShutDown
public boolean isShutDown()- Overrides:
isShutDownin classEntity
-
doCheckEngineStallRoll
Description copied from class:EntityPossibly do a ICE-Engine stall PSR (only intended for Meks, both Industrial and Battle).- Overrides:
doCheckEngineStallRollin classEntity- Parameters:
vPhaseReport- theReportVectorcontaining the phase reports- Returns:
- a
ReportVectorcontaining the passed in reports, and any additional ones
-
checkUnstall
Description copied from class:EntityCheck for uninstalling of this Entity's engine (only used for ICE-powered 'Meks).- Overrides:
checkUnstallin classEntity- Parameters:
vPhaseReport- theReportVectorcontaining the phase reports
-
isPrimitive
public boolean isPrimitive()- Overrides:
isPrimitivein classEntity- Returns:
- Whether the unit uses primitive or retro tech construction rules
-
hasArmoredCockpit
public boolean hasArmoredCockpit() -
hasArmoredGyro
public boolean hasArmoredGyro() -
hasArmoredEngine
public boolean hasArmoredEngine()- Overrides:
hasArmoredEnginein classEntity
-
isCheckForCrit
public boolean isCheckForCrit()should this Mek check for a critical hit at the end of turn due to being an industrial Mek and having been the target of a successful physical attack or for falling -
getLevelsFallen
public int getLevelsFallen()how many levels did this Mek fall this turn? -
setLevelsFallen
public void setLevelsFallen(int levels) -
setCheckForCrit
public void setCheckForCrit(boolean check) -
isArm
public boolean isArm(int loc) - Returns:
- True if the given location is an arm; always returns false for QuadMeks
-
getArmoredComponentBV
public double getArmoredComponentBV() -
getGyroMultiplier
public double getGyroMultiplier() -
setFullHeadEject
public void setFullHeadEject(boolean fullHeadEject) -
hasFullHeadEject
public boolean hasFullHeadEject() -
setRiscHeatSinkOverrideKit
public void setRiscHeatSinkOverrideKit(boolean heatSinkKit) -
hasRiscHeatSinkOverrideKit
public boolean hasRiscHeatSinkOverrideKit() -
hasDamageInterruptCircuit
public boolean hasDamageInterruptCircuit()Returns true if this Mek has the Damage Interrupt Circuit cockpit modification installed.- Returns:
- true if DIC is installed
-
isDICDisabled
public boolean isDICDisabled()Returns true if the Damage Interrupt Circuit is currently disabled. DIC is disabled by Life Support critical hit or any hit rolling "2" on hit location table.- Returns:
- true if DIC is disabled
-
setDICDisabled
public void setDICDisabled(boolean disabled) Sets the disabled state of the Damage Interrupt Circuit.- Parameters:
disabled- true to disable the DIC
-
hasWorkingDIC
public boolean hasWorkingDIC()Returns true if this Mek has a working (installed and not disabled) Damage Interrupt Circuit.- Returns:
- true if DIC is installed and functional
-
hasMPReducingHardenedArmor
public abstract boolean hasMPReducingHardenedArmor() -
hardenedArmorMPReduction
protected int hardenedArmorMPReduction()- Returns:
- The MP reduction due to hardened armor on this unit; 1 if it has HA, 0 if not.
-
getEngineHits
public int getEngineHits()- Specified by:
getEngineHitsin classEntity
-
getGyroHits
public int getGyroHits() -
isGyroDestroyed
public boolean isGyroDestroyed()Description copied from class:EntityOnly Meks have gyros, but this helps keep the code a bit cleaner.- Overrides:
isGyroDestroyedin classEntity- Returns:
- true if the
Entityis a Mek and has taken enough gyro hits to destroy it
-
getLocationDamage
- Overrides:
getLocationDamagein classEntity
-
isCrippled
public boolean isCrippled()Description copied from class:EntityReturns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258.- Specified by:
isCrippledin classEntity- Returns:
- boolean
-
isCrippled
public boolean isCrippled(boolean checkCrew) Description copied from class:EntityReturns TRUE if the entity meets the requirements for crippling damage as detailed in TW pg 258. Excepting dead or non-existing crew issues- Specified by:
isCrippledin classEntity- Returns:
- boolean
-
canEscape
public boolean canEscape() -
isPermanentlyImmobilized
public boolean isPermanentlyImmobilized(boolean checkCrew) Description copied from class:EntityThis method returns true if a unit is permanently immobilized either because its crew is dead/gone or because of damage- Overrides:
isPermanentlyImmobilizedin classEntity- Returns:
- true if unit is permanently immobile
-
isDmgHeavy
public boolean isDmgHeavy()Description copied from class:EntityReturns TRUE if the entity has been heavily damaged.- Specified by:
isDmgHeavyin classEntity- Returns:
- boolean
-
isDmgModerate
public boolean isDmgModerate()Description copied from class:EntityReturns TRUE if the entity has been moderately damaged.- Specified by:
isDmgModeratein classEntity- Returns:
- boolean
-
isDmgLight
public boolean isDmgLight()Description copied from class:EntityReturns TRUE if the entity has been lightly damaged.- Specified by:
isDmgLightin classEntity- Returns:
- boolean
-
hasCompactHeatSinks
public boolean hasCompactHeatSinks() -
getInternal
public int getInternal(int loc) Description copied from class:EntityReturns the amount of internal structure in the location specified, or ARMOR_NA, or ARMOR_DESTROYED.- Overrides:
getInternalin classEntity
-
isSuperHeavy
public boolean isSuperHeavy()- Overrides:
isSuperHeavyin classEntity- Returns:
- True if this unit counts as superheavy (Combat Vehicles and Meks) or as a Large Support Vehicle.
-
getEntityType
public long getEntityType()- Specified by:
getEntityTypein classEntity
-
isEjectionPossible
public boolean isEjectionPossible()- Overrides:
isEjectionPossiblein classEntity
-
hasClaw
public boolean hasClaw(int location) Check to see if a Mek has a claw in one of its arms- Parameters:
location- (LOC_RIGHT_ARM or LOC_LEFT_ARM)- Returns:
- True/False
-
hasIntactHeatDissipatingArmor
public boolean hasIntactHeatDissipatingArmor()Check whether a Mek has intact heat-dissipating armor in every location thus protecting it from external heat sources like fires or magma- Returns:
- True/False
-
doRISCEmergencyCoolantCheckFor
public boolean doRISCEmergencyCoolantCheckFor(Vector<Report> vDesc, HashMap<Integer, List<CriticalSlot>> vCriticalSlots) return if a RISC emergency coolant failed its roll -
hasDamagedCoolantSystem
public boolean hasDamagedCoolantSystem() -
setHasDamagedCoolantSystem
public void setHasDamagedCoolantSystem(boolean hit) -
getCoolantSystemMOS
public int getCoolantSystemMOS() -
isCoolingFlawActive
public boolean isCoolingFlawActive() -
setCoolingFlawActive
public void setCoolingFlawActive(boolean flawActive) -
getSpriteDrawPriority
public int getSpriteDrawPriority()Description copied from class:EntityUsed to determine the draw priority of different Entity subclasses. This allows different unit types to always be draw above/below other types.- Overrides:
getSpriteDrawPriorityin classEntity
-
isMek
public boolean isMek()Description copied from interface:BTObjectReturns true when this object is a Mek (Industrial Mek or BattleMek) or of type BM/IM for Alpha Strike. Returns false for any type of unit group even if it is of the right type. -
isIndustrialMek
public boolean isIndustrialMek()Description copied from interface:BTObjectReturns true when this object is an Industrial Mek or of type IM for Alpha Strike. Returns false for any type of unit group even if it is of the right type.- Specified by:
isIndustrialMekin interfaceBTObject- Returns:
- True when this is an Industrial Mek (not a BattleMek)
-
getGenericBattleValue
public int getGenericBattleValue()Description copied from class:EntityCalculates 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.
- Specified by:
getGenericBattleValuein classEntity- Returns:
- The generic Battle value for this unit based on its tonnage and type
-
getsAutoExternalSearchlight
public boolean getsAutoExternalSearchlight()- Overrides:
getsAutoExternalSearchlightin classEntity- Returns:
- True for unit types that have an automatic external searchlight (Meks and Tanks).
-
getAllCockpitCodeName
-
getBlockedFiringLocations
Description copied from class:EntityMethod that returns the mapping between locations which, if cargo is carried, block other locations from firing.- Overrides:
getBlockedFiringLocationsin classEntity
-
hasFunctionalLegAES
public boolean hasFunctionalLegAES()- Overrides:
hasFunctionalLegAESin classEntity
-
legCount
protected int legCount()- Returns:
- The number of legs on this Mek (the nominal number, regardless of state or damage, i.e. 2, 3 or 4)
-
getRecoveryTime
public int getRecoveryTime()Description copied from class:EntityReturns the recovery time for this entity in minutes.This method provides the base recovery time required for this entity type. The recovery time represents the duration needed to recover, repair, or prepare the entity after deployment or damage.
Subclasses should override this method to provide entity-specific recovery times based on their type, weight class, or other relevant characteristics.
Manual Reference: CamOps pg 214
- Overrides:
getRecoveryTimein classEntity- Returns:
- The recovery time in minutes. The default implementation returns 60 minutes.
-
canAbandon
public boolean canAbandon()Determines if this Mek can announce abandonment per TacOps:AR p.165. Requirements: must be prone, must be shutdown, must have crew that hasn't ejected, game option must be enabled, and abandonment must not already be pending.- Returns:
- true if this Mek can announce abandonment
-
canAnnounceAbandon
public boolean canAnnounceAbandon()Description copied from class:EntityChecks whether this unit can announce abandonment of its crew in the End Phase. Abandonment is declared in the PREEND_DECLARATIONS phase. The base implementation returnsfalse; unit types that support abandonment (Meks, vehicles, and escape pods) override this.- Overrides:
canAnnounceAbandonin classEntity- Returns:
trueif this unit can announce crew abandonment
-
isAbandoned
public boolean isAbandoned()Returns true if this Mek has been abandoned - the crew has exited but the Mek itself is not destroyed. This is different from ejection which destroys the cockpit.- Overrides:
isAbandonedin classEntity- Returns:
- true if this Mek is crewless but intact
-
isChassisFamiliarityEligible
public boolean isChassisFamiliarityEligible()Description copied from class:EntityReturns whether this unit is a chassis-familiarity-eligible type for MekHQ's Familiarity system- Overrides:
isChassisFamiliarityEligiblein classEntity- Returns:
trueif familiarity is tracked for this unit
-