Package megamek.common.weapons.lasers
Class ImprovedHeavyLaserWeapon
java.lang.Object
megamek.common.equipment.EquipmentType
megamek.common.equipment.WeaponType
megamek.common.weapons.Weapon
megamek.common.weapons.lasers.EnergyWeapon
megamek.common.weapons.lasers.LaserWeapon
megamek.common.weapons.lasers.ImprovedHeavyLaserWeapon
- All Implemented Interfaces:
Serializable,ITechnology
- Direct Known Subclasses:
CLImprovedHeavyLaserLarge,CLImprovedHeavyLaserMedium,CLImprovedHeavyLaserSmall
Base class for the Clan Improved Heavy Lasers (TO:AUE p.133). Improved Heavy Lasers are explosive and can be
deactivated per the activation/deactivation rules: a laser switched to
"Off" cannot fire and does not
explode when critically hit. The switch may be declared at any time but only takes effect in the End Phase.- 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 TypeMethodDescriptionvoidadaptToGameOptions(IGameOptions gameOptions) Adapt the weapon type to the Game Options such as PPC Field Inhibitors or Dial Down Damage, usually adding or removing modes.Methods inherited from class megamek.common.weapons.lasers.LaserWeapon
getCorrectHandler, getModesCount, getToHitModifierMethods inherited from class megamek.common.equipment.WeaponType
addFlags, adjustBattleForceDamageForMinRange, canBeMountedOnBaDwp, getAlphaStrikeHeat, getAlphaStrikeHeatDamage, getAmmoType, getAtClass, getATRanges, getBADamageClass, getBattleForceClass, getBattleForceDamage, getBattleForceDamage, getBattleForceDamage, 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, 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, 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
-
ImprovedHeavyLaserWeapon
protected ImprovedHeavyLaserWeapon()
-
-
Method Details
-
adaptToGameOptions
Description copied from class:WeaponAdapt the weapon type to the Game Options such as PPC Field Inhibitors or Dial Down Damage, usually adding or removing modes. When overriding this in a weapon subclass, call super()!- Overrides:
adaptToGameOptionsin classLaserWeapon- Parameters:
gameOptions- The GameOptions (game.getOptions())
-