Package megamek.common.weapons.srms
Class StreakSRMWeapon
- All Implemented Interfaces:
Serializable,ITechnology
- Direct Known Subclasses:
CLStreakSRM1,CLStreakSRM2,CLStreakSRM2IOS,CLStreakSRM2OS,CLStreakSRM3,CLStreakSRM4,CLStreakSRM4IOS,CLStreakSRM4OS,CLStreakSRM5,CLStreakSRM6,CLStreakSRM6IOS,CLStreakSRM6OS,ISStreakSRM2,ISStreakSRM2IOS,ISStreakSRM2OS,ISStreakSRM4,ISStreakSRM4IOS,ISStreakSRM4OS,ISStreakSRM6,ISStreakSRM6IOS,ISStreakSRM6OS
- 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_INDIRECT_HEAT, 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_AERO_WEAPON, F_ALT_BOMB, F_AMS, F_AMS_BAY, F_ANTI_SHIP, F_ARTEMIS_COMPATIBLE, F_ARTILLERY, 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_HEAT_AS_DICE, F_HYPER, F_INCENDIARY_NEEDLES, F_INF_AA, F_INF_ARCHAIC, F_INF_BURST, F_INF_CLIMBING_CLAWS, 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_M_POD, F_MASS_DRIVER, F_MEK_MORTAR, F_MEK_WEAPON, F_MG, F_MGA, F_MISSILE, F_MISSILE_HITS, F_MORTAR_TYPE_INDIRECT, F_NO_AIM, F_NO_FIRES, F_ONE_SHOT, F_PD_BAY, F_PLASMA, F_PLASMA_MFUK, F_PPC, F_PROTO_WEAPON, F_PROTOTYPE, F_PULSE, F_REPEATING, F_SOLO_ATTACK, F_SPACE_BOMB, F_TAG, F_TANK_WEAPON, F_TASER, F_TSEMP, F_VGL, heat, infDamageClass, longAV, longRange, maxRange, medAV, mediumRange, minimumRange, missileArmor, rackSize, RANGE_EXT, RANGE_LONG, RANGE_MED, RANGE_SHORT, shortAV, shortRange, subCapital, waterExtremeRange, waterLongRange, waterMediumRange, waterShortRange, 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_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, structureCosts, structureNames, subType, 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_VARIABLEFields inherited from interface megamek.common.interfaces.ITechnology
DATE_ES, DATE_NONE, DATE_PS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintdoublegetBattleForceDamage(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) Sorting with the String returned by this method results in an improved ordering and grouping of equipment than by getName(); for example, AC2/5/10/20 will appear in that order instead of the order AC10/2/20/5 and S/M/L Lasers will be grouped together.doublegetTonnage(Entity entity, int location, double size) Calculates the weight of the equipment.Methods inherited from class megamek.common.weapons.srms.SRMWeapon
getBattleForceDamage, getSRMHandlerMethods inherited from class megamek.common.weapons.missiles.MissileWeapon
getBattleForceDamageMethods inherited from class megamek.common.weapons.AmmoWeapon
checkAmmo, fireMethods inherited from class megamek.common.weapons.Weapon
adaptToGameOptionsMethods inherited from class megamek.common.equipment.WeaponType
adjustBattleForceDamageForMinRange, getAlphaStrikeHeat, getAlphaStrikeHeatDamage, getAmmoType, getAtClass, getATRanges, getBADamageClass, getBayType, getBayType, getBV, getCost, getDamage, getDamage, getExplosionDamage, getExtAV, getExtremeRange, getFireTN, getHeat, getInfantryDamageClass, getLongAV, getLongRange, getMaxRange, getMaxRange, getMaxRange, getMedAV, getMediumRange, getMinimumRange, getMissileArmor, getRackSize, getRanges, getRanges, getRoundExtAV, getRoundLongAV, getRoundMedAV, getRoundShortAV, getShortAV, getShortRange, getWExtremeRange, getWLongRange, getWMediumRange, getWRanges, getWShortRange, hasFlag, hasIndirectFire, initializeTypes, isAlphaStrikeIndirectFire, isAlphaStrikePointDefense, isCapital, isSplittableOverCriticalSlots, isSubCapital, setAmmoType, setDamage, setLongRange, setMediumRange, setMinimumRange, setName, setRackSize, setShortRange, toStringMethods inherited from class megamek.common.equipment.EquipmentType
addEndTurnMode, addLookupName, addMode, addSubType, addType, allTypes, clearModes, equals, get, getAllStructureCodeName, getAllTypes, getArmorType, getArmorTypeName, getArmorTypeName, getBaseAvailability, getBV, getCommonDate, getCost, getDesc, getDesc, getEquipDateAsString, getExtinctionDate, getExtinctionDate, getExtinctionDate, getFlags, getInternalName, getIntroductionDate, getIntroductionDate, getIntroductionDate, getMode, getModes, getModesCount, getModesCount, getName, getName, getNames, getNumCriticalSlots, getNumCriticalSlots, getProductionDate, getProductionDate, getPrototypeDate, getPrototypeDate, getRawCost, getReintroductionDate, getReintroductionDate, getReintroductionDate, getRulesRefs, getShortName, getShortName, getStaticTechLevel, getStructureCost, getStructureTechAdvancement, getStructureType, getStructureTypeName, getStructureTypeName, getSubType, getSupportVeeSlots, getTankSlots, getTechAdvancement, getTechBase, getTechLevel, getTechLevel, getTechLevels, getTechRating, getToHitModifier, getTonnage, getTonnage, getTonnage, getYamlData, hasAnyFlag, hasAnySubType, hasFlag, hashCode, hasInstantModeSwitch, hasModes, hasModeType, hasSubType, is, isAnyOf, isArmorType, isC3Equipment, isClan, isEligibleForBeingArmored, isExplosive, isExplosive, isHittable, isIntroLevel, isMixedTech, isNextTurnModeSwitch, isOmniFixedOnly, isSpreadable, isStructureType, isUnofficial, isVariableBV, isVariableCost, isVariableCriticalSlots, isVariableSize, isVariableTonnage, removeMode, setFlags, setInstantModeSwitch, setInternalName, setModes, setSubType, variableMaxSize, variableStepSize, writeEquipmentAmmoDatabase, writeEquipmentDatabase, writeEquipmentExtendedDatabase, writeEquipmentMiscDatabase, writeEquipmentWeaponDatabaseMethods 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
-
StreakSRMWeapon
public StreakSRMWeapon()
-
-
Method Details
-
getTonnage
Description copied from class:EquipmentTypeCalculates the weight of the equipment. Ifentityisnull, equipment without a fixed weight will returnEquipmentType.TONNAGE_VARIABLE.- Overrides:
getTonnagein classSRMWeapon- Parameters:
entity- The unit the equipment is mounted onlocation- The mount locationsize- The size (for variable-sized equipment)- Returns:
- The weight of the equipment in tons
-
getCorrectHandler
@Nullable public AttackHandler getCorrectHandler(ToHitData toHit, WeaponAttackAction waa, Game game, TWGameManager manager) - Overrides:
getCorrectHandlerin classSRMWeapon
-
getBattleForceDamage
Description copied from class:WeaponTypeDamage calculation for BattleForce and AlphaStrike for missile weapons that may have advanced fire control- Overrides:
getBattleForceDamagein classSRMWeapon- Parameters:
range- - the range in hexesfcs- - linked Artemis or Apollo FCS (null for none)- Returns:
- - damage in BattleForce scale
-
getBattleForceClass
public int getBattleForceClass()- Overrides:
getBattleForceClassin classSRMWeapon- Returns:
- The class of weapons for those that are tracked separately from standard damage (AlphaStrike)
-
getSortingName
Description copied from class:EquipmentTypeSorting with the String returned by this method results in an improved ordering and grouping of equipment than by getName(); for example, AC2/5/10/20 will appear in that order instead of the order AC10/2/20/5 and S/M/L Lasers will be grouped together.- Overrides:
getSortingNamein classSRMWeapon- Returns:
- A String similar to getName() but modified to support a better sorting
-