Package megamek.common.weapons.missiles
Class MissileWeapon
java.lang.Object
megamek.common.equipment.EquipmentType
megamek.common.equipment.WeaponType
megamek.common.weapons.Weapon
megamek.common.weapons.AmmoWeapon
megamek.common.weapons.missiles.MissileWeapon
- All Implemented Interfaces:
Serializable,ITechnology
- Direct Known Subclasses:
ATMWeapon,BombISRL10,BombISRLP10,CLIATMWeapon,ISC3RemoteSensorLauncher,LRMWeapon,LRTWeapon,MMLWeapon,MRMWeapon,NarcWeapon,PrototypeRLWeapon,RLWeapon,SRMWeapon,SRTWeapon,ThunderboltWeapon
- See Also:
-
Field Summary
Fields inherited from class megamek.common.weapons.Weapon
MODE_AC_RAPID, MODE_AC_SINGLE, MODE_AMS_MANUAL, MODE_AMS_OFF, MODE_AMS_ON, MODE_CAP_LASER_AAA, MODE_CAP_MISSILE_BEARING_EXT, MODE_CAP_MISSILE_BEARING_LONG, MODE_CAP_MISSILE_BEARING_MED, MODE_CAP_MISSILE_BEARING_SHORT, MODE_CAP_MISSILE_TELE_OPERATED, MODE_CAP_MISSILE_WAYPOINT, MODE_CAP_MISSILE_WAYPOINT_BEARING_EXT, MODE_CAP_MISSILE_WAYPOINT_BEARING_LONG, MODE_CAP_MISSILE_WAYPOINT_BEARING_MED, MODE_CAP_MISSILE_WAYPOINT_BEARING_SHORT, MODE_CAPITAL_BRACKET_40, MODE_CAPITAL_BRACKET_60, MODE_CAPITAL_BRACKET_80, MODE_FLAMER_DAMAGE, MODE_FLAMER_HEAT, MODE_GAUSS_POWERED_DOWN, MODE_GAUSS_POWERED_UP, MODE_INDIRECT_HEAT, MODE_INFERNO, MODE_MISSILE_INDIRECT, MODE_NORMAL, MODE_POINT_DEFENSE, MODE_PPC_CHARGE, MODE_RAC_FIVE_SHOT, MODE_RAC_FOUR_SHOT, MODE_RAC_SIX_SHOT, MODE_RAC_THREE_SHOT, MODE_RAC_TWO_SHOT, MODE_UAC_ULTRAFields inherited from class megamek.common.equipment.WeaponType
AIRBORNE_WEAPON_RANGES, ammoType, atClass, baDamageClass, BF_CLASS_AC, BF_CLASS_CAPITAL, BF_CLASS_CAPITAL_MISSILE, BF_CLASS_FLAK, BF_CLASS_IATM, BF_CLASS_LRM, BF_CLASS_MML, BF_CLASS_REL, BF_CLASS_SRM, BF_CLASS_STANDARD, BF_CLASS_SUBCAPITAL, BF_CLASS_TORPEDO, capital, CLASS_AC, CLASS_AMS, CLASS_AR10, CLASS_ARTILLERY, CLASS_ATM, CLASS_CAPITAL_AC, CLASS_CAPITAL_GAUSS, CLASS_CAPITAL_LASER, CLASS_CAPITAL_MD, CLASS_CAPITAL_MISSILE, CLASS_CAPITAL_PPC, CLASS_GAUSS, CLASS_LASER, CLASS_LBX_AC, CLASS_LRM, CLASS_MML, CLASS_MORTAR, CLASS_MRM, CLASS_NONE, CLASS_PLASMA, CLASS_POINT_DEFENSE, CLASS_PPC, CLASS_PULSE_LASER, CLASS_ROCKET_LAUNCHER, CLASS_SCREEN, CLASS_SRM, CLASS_SUB_CAPITAL_CANNON, CLASS_TELE_MISSILE, CLASS_THUNDERBOLT, damage, DAMAGE_ARTILLERY, DAMAGE_BY_CLUSTER_TABLE, DAMAGE_SPECIAL, DAMAGE_VARIABLE, damageLong, damageMedium, damageShort, explosionDamage, extAV, extremeRange, F_AC, F_AERO_WEAPON, F_ALT_BOMB, F_AMS, F_AMS_BAY, F_ANTI_SHIP, F_ARROW_IV, F_ARTEMIS_COMPATIBLE, F_ARTILLERY, F_ATM, F_AUTO_TARGET, F_B_POD, F_BA_INDIVIDUAL, F_BA_WEAPON, F_BALLISTIC, F_BOMB_WEAPON, F_BOMBAST_LASER, F_BURST_FIRE, F_C3M, F_C3MBS, F_CRUISE_MISSILE, F_CWS, F_DIRECT_FIRE, F_DIVE_BOMB, F_DOUBLE_ONE_SHOT, F_ENERGY, F_ER_FLAMER, F_EXTINGUISHER, F_FLAMER, F_GAUSS, F_HAG, F_HEAT_AS_DICE, F_HEAT_VARIABLE, F_HVAC, F_HYPER, F_INCENDIARY_NEEDLES, F_INDIRECT_FIRE, F_INF_AA, F_INF_ARCHAIC, F_INF_BURST, F_INF_CLIMBING_CLAWS, F_INF_DISPOSABLE, F_INF_ENCUMBER, F_INF_NONPENETRATING, F_INF_POINT_BLANK, F_INF_SUPPORT, F_INFANTRY, F_INFANTRY_ATTACK, F_INFANTRY_ONLY, F_INFERNO, F_LARGE_MISSILE, F_LASER, F_LRM, F_M_POD, F_MASS_DRIVER, F_MEK_MORTAR, F_MEK_WEAPON, F_MG, F_MGA, F_MISSILE, F_MISSILE_HITS, F_MML, F_MORTAR_TYPE_INDIRECT, F_MRM, F_NARC, F_NO_AIM, F_NO_FIRES, F_ONE_SHOT, F_PD_BAY, F_PLASMA, F_PLASMA_MFUK, F_PPC, F_PPC_CAPACITOR_COMPATIBLE, F_PROTO_WEAPON, F_PROTOTYPE, F_PULSE, F_REPEATING, F_SOLO_ATTACK, F_SPACE_BOMB, F_SRM, F_TAG, F_TANK_WEAPON, F_TASER, F_TSEMP, F_VGL, F_VSP, heat, heatAdjustmentForBvCalculation, infDamageClass, longAV, longRange, maxRange, medAV, mediumRange, minimumRange, missileArmor, rackSize, RANGE_EXT, RANGE_LONG, RANGE_MED, RANGE_SHORT, S_IMPROVED, shortAV, shortRange, subCapital, waterExtremeRange, waterLongRange, waterMediumRange, waterShortRange, WEAPON_AREA_EFFECT_INFANTRY, WEAPON_BURST_1D6, WEAPON_BURST_2D6, WEAPON_BURST_3D6, WEAPON_BURST_4D6, WEAPON_BURST_5D6, WEAPON_BURST_6D6, WEAPON_BURST_7D6, WEAPON_BURST_HALF_D6, WEAPON_CLUSTER_BALLISTIC, WEAPON_CLUSTER_MISSILE, WEAPON_CLUSTER_MISSILE_1D6, WEAPON_CLUSTER_MISSILE_2D6, WEAPON_CLUSTER_MISSILE_3D6, WEAPON_DIRECT_FIRE, WEAPON_INFANTRY_ORIGIN, WEAPON_NA, WEAPON_PLASMA, WEAPON_PULSEFields inherited from class megamek.common.equipment.EquipmentType
allTypes, bv, BV_VARIABLE, cost, COST_VARIABLE, CRITICAL_SLOTS_VARIABLE, criticalSlots, endTurnModes, explosive, flags, hittable, instantModeSwitch, internalName, lookupHash, modes, name, namesVector, omniFixedOnly, rulesRefs, shortName, sortingName, spreadable, structureAbbreviations, structureCosts, structureNames, svSlots, T_ARMOR_AEROSPACE, T_ARMOR_ALUM, T_ARMOR_ANTI_PENETRATIVE_ABLATION, T_ARMOR_BA_FIRE_RESIST, T_ARMOR_BA_MIMETIC, T_ARMOR_BA_REACTIVE, T_ARMOR_BA_REFLECTIVE, T_ARMOR_BA_STANDARD, T_ARMOR_BA_STANDARD_ADVANCED, T_ARMOR_BA_STANDARD_PROTOTYPE, T_ARMOR_BA_STEALTH, T_ARMOR_BA_STEALTH_BASIC, T_ARMOR_BA_STEALTH_IMP, T_ARMOR_BA_STEALTH_PROTOTYPE, T_ARMOR_BALLISTIC_REINFORCED, T_ARMOR_COMMERCIAL, T_ARMOR_EDP, T_ARMOR_FERRO_ALUM_PROTO, T_ARMOR_FERRO_FIBROUS, T_ARMOR_FERRO_FIBROUS_PROTO, T_ARMOR_FERRO_LAMELLOR, T_ARMOR_HARDENED, T_ARMOR_HEAT_DISSIPATING, T_ARMOR_HEAVY_ALUM, T_ARMOR_HEAVY_FERRO, T_ARMOR_HEAVY_INDUSTRIAL, T_ARMOR_IMPACT_RESISTANT, T_ARMOR_INDUSTRIAL, T_ARMOR_LC_FERRO_CARBIDE, T_ARMOR_LC_FERRO_IMP, T_ARMOR_LC_LAMELLOR_FERRO_CARBIDE, T_ARMOR_LIGHT_ALUM, T_ARMOR_LIGHT_FERRO, T_ARMOR_PATCHWORK, T_ARMOR_PRIMITIVE, T_ARMOR_PRIMITIVE_AERO, T_ARMOR_PRIMITIVE_FIGHTER, T_ARMOR_REACTIVE, T_ARMOR_REFLECTIVE, T_ARMOR_STANDARD, T_ARMOR_STANDARD_PROTOMEK, T_ARMOR_STEALTH, T_ARMOR_STEALTH_VEHICLE, T_ARMOR_SV_BAR_10, T_ARMOR_SV_BAR_2, T_ARMOR_SV_BAR_3, T_ARMOR_SV_BAR_4, T_ARMOR_SV_BAR_5, T_ARMOR_SV_BAR_6, T_ARMOR_SV_BAR_7, T_ARMOR_SV_BAR_8, T_ARMOR_SV_BAR_9, T_ARMOR_UNKNOWN, T_STRUCTURE_COMPOSITE, T_STRUCTURE_ENDO_COMPOSITE, T_STRUCTURE_ENDO_PROTOTYPE, T_STRUCTURE_ENDO_STEEL, T_STRUCTURE_INDUSTRIAL, T_STRUCTURE_REINFORCED, T_STRUCTURE_STANDARD, T_STRUCTURE_UNKNOWN, TA_NONE, TA_STANDARD_STRUCTURE, tankSlots, techAdvancement, toHitModifier, tonnage, TONNAGE_VARIABLE, VARIABLE, YAML_VERSIONFields inherited from interface megamek.common.interfaces.ITechnology
DATE_ES, DATE_NONE, DATE_PS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleandoublegetBattleForceDamage(int range) Damage calculation for BattleForce and AlphaStrikedoublegetBattleForceDamage(int range, int baSquadSize) BattleForce-scale damage for BattleArmor, using cluster hits table based on squad size.doublegetBattleForceDamage(int range, Mounted<?> fcs) Damage calculation for BattleForce and AlphaStrike for missile weapons that may have advanced fire controlgetCorrectHandler(ToHitData toHit, WeaponAttackAction waa, Game game, TWGameManager manager) Methods inherited from class megamek.common.weapons.AmmoWeapon
checkAmmo, fireMethods inherited from class megamek.common.weapons.Weapon
adaptToGameOptionsMethods inherited from class megamek.common.equipment.WeaponType
addFlags, adjustBattleForceDamageForMinRange, getAlphaStrikeHeat, getAlphaStrikeHeatDamage, getAmmoType, getAtClass, getATRanges, getBADamageClass, getBattleForceClass, getBayType, getBayType, getBV, getCost, getDamage, getDamage, getExplosionDamage, getExtAV, getExtremeRange, getFireTN, getHeat, getHeatAdjustmentForBvCalculation, getInfantryDamageClass, getLongAV, getLongRange, getMaxRange, getMaxRange, getMaxRange, getMedAV, getMediumRange, getMinimumRange, getMissileArmor, getRackSize, getRanges, getRanges, getRoundExtAV, getRoundLongAV, getRoundMedAV, getRoundShortAV, getShortAV, getShortRange, getWExtremeRange, getWLongRange, getWMediumRange, getWRanges, getWShortRange, getYamlData, getYamlTypeName, hasFlag, hasIndirectFire, initializeTypes, isAlphaStrikeIndirectFire, isAlphaStrikePointDefense, isCapital, isSplittableOverCriticalSlots, isSubCapital, relevantToTargetingComputer, setAmmoType, setDamage, setLongRange, setMediumRange, setMinimumRange, setName, setRackSize, setShortRange, toStringMethods inherited from class megamek.common.equipment.EquipmentType
addEndTurnMode, addLookupName, addLookupName, addMode, addType, allTypes, clearLookupNames, clearModes, equals, get, get, getAllStructureCodeName, getAllTypes, getArmorFromName, getArmorType, getArmorTypeName, getArmorTypeName, getBaseAvailability, getBaseBV, getBaseCost, getBaseCriticalSlots, getBaseTonnage, getBV, getCommonDate, getCost, getDesc, getDesc, getEquipDateAsString, getExtinctionDate, getExtinctionDate, getExtinctionDate, getFlags, getInternalName, getIntroductionDate, getIntroductionDate, getIntroductionDate, getLookupCollisions, getMode, getModes, getModesCount, getModesCount, getName, getName, getNames, getNumCriticalSlots, getNumCriticalSlots, getProductionDate, getProductionDate, getPrototypeDate, getPrototypeDate, getRawCost, getReintroductionDate, getReintroductionDate, getReintroductionDate, getRulesRefs, getShortName, getShortName, getSortingName, getStaticTechLevel, getStructureCost, getStructureFromName, getStructureTechAdvancement, getStructureType, getStructureTypeAbbrev, getStructureTypeName, getStructureTypeName, getSupportVeeSlots, getTankSlots, getTechAdvancement, getTechBase, getTechLevel, getTechLevel, getTechLevels, getTechRating, getToHitModifier, getToHitModifierAtRange, getTonnage, getTonnage, getTonnage, getTonnage, hasAnyFlag, hasAnyFlag, hasFlag, hashCode, hasHitModifiersByRange, hasInstantModeSwitch, hasModes, hasModeType, is, isAnyOf, isArmorType, isC3Equipment, isClan, isEligibleForBeingArmored, isExplosive, isExplosive, isHittable, isIntroLevel, isMixedTech, isNextTurnModeSwitch, isOmniFixedOnly, isSpreadable, isStructureType, isUnofficial, isVariableBV, isVariableCost, isVariableCriticalSlots, isVariableSize, isVariableTonnage, matchesName, removeMode, rulesRef, rulesRef, rulesRefs, rulesRefs, rulesRefs, setFlags, setInstantModeSwitch, setInternalName, setModes, variableMaxSize, variableStepSizeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface megamek.common.interfaces.ITechnology
calcEraAvailability, calcEraAvailability, calcYearAvailability, calcYearAvailability, calcYearAvailability, findMinimumRulesLevel, findMinimumRulesLevel, getAdvancedRange, getAdvancedRange, getCodeFromIOAbbr, getCodeFromMMAbbr, getCommonDate, getEraAvailabilityName, getEraAvailabilityName, getExperimentalRange, getExperimentalRange, getExtinctionRange, getExtinctionRange, getFullRatingName, getFullRatingName, getProductionDate, getPrototypeDate, getSimpleLevel, getSimpleLevel, getSimpleLevel, getStandardRange, getStandardRange, getTechRatingName, isAvailableIn, isAvailableIn, isAvailableIn, isExtinct, isExtinct, isExtinct, isLegal, isLegal
-
Constructor Details
-
MissileWeapon
public MissileWeapon()
-
-
Method Details
-
getCorrectHandler
@Nullable public AttackHandler getCorrectHandler(ToHitData toHit, WeaponAttackAction waa, Game game, TWGameManager manager) - Overrides:
getCorrectHandlerin classAmmoWeapon
-
getBattleForceDamage
public double getBattleForceDamage(int range) Description copied from class:WeaponTypeDamage calculation for BattleForce and AlphaStrike- Overrides:
getBattleForceDamagein classWeaponType- Parameters:
range- The range in hexes- Returns:
- Damage in BattleForce scale
-
getBattleForceDamage
Description copied from class:WeaponTypeDamage calculation for BattleForce and AlphaStrike for missile weapons that may have advanced fire control- Overrides:
getBattleForceDamagein classWeaponType- Parameters:
range- - the range in hexesfcs- - linked Artemis or Apollo FCS (null for none)- Returns:
- - damage in BattleForce scale
-
getBattleForceDamage
public double getBattleForceDamage(int range, int baSquadSize) Description copied from class:WeaponTypeBattleForce-scale damage for BattleArmor, using cluster hits table based on squad size. AlphaStrike uses a different method.- Overrides:
getBattleForceDamagein classWeaponType- Parameters:
range- - the range in hexesbaSquadSize- - the number of suits in the squad/point/level i- Returns:
- - damage in BattleForce scale
-
canBeMountedOnBaDwp
public boolean canBeMountedOnBaDwp()- Overrides:
canBeMountedOnBaDwpin classWeaponType- Returns:
- True if this equipment type can be mounted on a BattleArmor Detachable Weapon Pack, TO:AUE p.99
-