bvText.append(endRow); } else if ((etype instanceof WeaponType) && (((WeaponType) etype).getAtClass() == WeaponType.CLASS_SCREEN)) { screenBV += etype.getBV(this); bvText.append(startRow); if (wtype.getAtClass() == WeaponType.CLASS_SCREEN) { continue;
bvText.append(endRow); } else if ((etype instanceof WeaponType) && (((WeaponType) etype).getAtClass() == WeaponType.CLASS_SCREEN)) { screenBV += etype.getBV(this); bvText.append(startRow); if (wtype.getAtClass() == WeaponType.CLASS_SCREEN) { continue;
continue; if(wt.getAtClass() == WeaponType.CLASS_NONE || wt.getAtClass() == WeaponType.CLASS_POINT_DEFENSE || wt.getAtClass() >= WeaponType.CLASS_CAPITAL_LASER) { continue;
bvText.append(endRow); } else if ((etype instanceof WeaponType) && (((WeaponType) etype).getAtClass() == WeaponType.CLASS_SCREEN)) { screenBV += etype.getBV(this); bvText.append(startRow); if (wtype.getAtClass() == WeaponType.CLASS_SCREEN) { continue; if (wtype.getAtClass() == WeaponType.CLASS_SCREEN) { continue;
&& ((bayDamage + damage) <= 700) && (bayMount.isRearMounted() == rearMount) && (weap.getAtClass() == ((WeaponType) bayMount .getType()).getAtClass()) && !(((WeaponType) bayMount.getType()) .isSubCapital() && !weap.isSubCapital())) {
/** * return the first bay of the right type in the right location with enough * damage to spare * * @param wtype * @param loc * @param rearMount * @return */ public Mounted getFirstBay(WeaponType wtype, int loc, boolean rearMount) { int weapDamage = wtype.getRoundShortAV(); if (wtype.isCapital()) { weapDamage *= 10; } for (Mounted m : getWeaponBayList()) { BayWeapon bay = (BayWeapon) m.getType(); int damage = bay.getRoundShortAV() + weapDamage; if ((bay.getAtClass() == wtype.getAtClass()) && (m.getLocation() == loc) && (m.isRearMounted() == rearMount) && (damage <= 700)) { return m; } } return null; }
damage *= 10; if (!newBay && (((bayDamage + damage) <= 700) || weap.hasFlag(WeaponType.F_MASS_DRIVER)) && (bayMount.isRearMounted() == rearMount) && (weap.getAtClass() == ((WeaponType) bayMount.getType()).getAtClass()) && !(((WeaponType) bayMount.getType()).isSubCapital() && !weap.isSubCapital())) {
damage *= 10; if (!newBay && ((bayDamage + damage) <= 700) && (bayMount.isRearMounted() == rearMount) && (weap.getAtClass() == ((WeaponType) bayMount.getType()).getAtClass()) && !(((WeaponType) bayMount.getType()).isSubCapital() && !weap.isSubCapital())) {
EquipmentType eType = getEntity(game).getEquipment(weaponId).getType(); WeaponType wType = (WeaponType) eType; if (getEntity(game).usesWeaponBays() && wType.getAtClass() == WeaponType.CLASS_ARTILLERY) { for (int wId : game.getEntity(entityId).getEquipment(weaponId).getBayWeapons()) { Mounted bayW = game.getEntity(entityId).getEquipment(wId); if (((wType.getAtClass() == WeaponType.CLASS_AR10) || (wType.getAtClass() == WeaponType.CLASS_TELE_MISSILE) || (wType.getAtClass() == WeaponType.CLASS_CAPITAL_MISSILE)) && (distance >= RangeType.RANGE_BEARINGS_ONLY_MINIMUM)) { this.launchVelocity = wType.extremeRange;
damage *= 10; if (!newBay && (((bayDamage + damage) <= 700) || weap.hasFlag(WeaponType.F_MASS_DRIVER)) && (bayMount.isRearMounted() == rearMount) && (weap.getAtClass() == ((WeaponType) bayMount.getType()).getAtClass()) && !(((WeaponType) bayMount.getType()).isSubCapital() && !weap.isSubCapital())) {
if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && (atype.hasFlag(AmmoType.F_AR10_KILLER_WHALE) || atype.hasFlag(AmmoType.F_PEACEMAKER))) { weaponarmor = 40; } else if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && (atype.hasFlag(AmmoType.F_AR10_WHITE_SHARK) || atype.hasFlag(AmmoType.F_SANTA_ANNA))) { weaponarmor = 30; } else if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && atype.hasFlag(AmmoType.F_AR10_BARRACUDA)) { weaponarmor = 20;
if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && (atype.hasFlag(AmmoType.F_AR10_KILLER_WHALE) || atype.hasFlag(AmmoType.F_PEACEMAKER))) { weaponarmor = 40; } else if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && (atype.hasFlag(AmmoType.F_AR10_WHITE_SHARK) || atype.hasFlag(AmmoType.F_SANTA_ANNA))) { weaponarmor = 30; } else if (bayWType.getAtClass() == (WeaponType.CLASS_AR10) && atype.hasFlag(AmmoType.F_AR10_BARRACUDA)) { weaponarmor = 20;
if (weapon.getAtClass() == WeaponType.CLASS_SCREEN) { specialAbilities.merge(BattleForceSPA.SCR, 1, Integer::sum); continue; if (en instanceof Aero && weapon.getAtClass() == WeaponType.CLASS_POINT_DEFENSE) { pointDefense += baseDamage[RANGE_BAND_SHORT] * damageModifier;
|| game.getBoard().inSpace() || (wtype.getAtClass() == (19)) || (wtype.getAtClass() == (20))) { return super.handle(phase, vPhaseReport);
|| (wtype.getAtClass() == WeaponType.CLASS_CAPITAL_MISSILE) || (wtype.getAtClass() == WeaponType.CLASS_AR10) || (wtype.getAtClass() == WeaponType.CLASS_ATM) || (wtype.getAtClass() == WeaponType.CLASS_LRM) || (wtype.getAtClass() == WeaponType.CLASS_SRM) || (wtype.getAtClass() == WeaponType.CLASS_MML) || (wtype.getAtClass() == WeaponType.CLASS_THUNDERBOLT));
|| (weapon.getAtClass() == WeaponType.CLASS_SCREEN)) { return en.hasETypeFlag(Entity.ETYPE_DROPSHIP) || en.hasETypeFlag(Entity.ETYPE_JUMPSHIP);
(!(wtype.getAtClass() == WeaponType.CLASS_CAPITAL_MISSILE || wtype.getAtClass() == WeaponType.CLASS_AR10 || wtype.getAtClass() == WeaponType.CLASS_TELE_MISSILE))) { toHit.addModifier(+2, "attacker is evading"); if (wtype.getAtClass() == WeaponType.CLASS_LASER) { for (int wId : weapon.getBayWeapons()) { Mounted bweap = ae.getEquipment(wId); else if (wtype.getAtClass() == WeaponType.CLASS_CAPITAL_MISSILE) { boolean onlyBarracuda = true; for (int wId : weapon.getBayWeapons()) { else if (wtype.getAtClass() == WeaponType.CLASS_AR10) { boolean onlyBarracuda = true; for (int wId : weapon.getBayWeapons()) { else if (wtype.getAtClass() == WeaponType.CLASS_LBX_AC) { boolean onlyCluster = true; for (int wId : weapon.getBayWeapons()) { if (wtype.isCapital() && (wtype.getAtClass() != WeaponType.CLASS_CAPITAL_MISSILE) && (wtype.getAtClass() != WeaponType.CLASS_AR10) && !te.isLargeCraft()) {