@Override public int getSprintMPwithoutMASC(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { if (hasHipCrit()) { return getRunMPwithoutMASC(gravity, ignoreheat, ignoremodulararmor); } return ((int) Math.ceil(getWalkMP(gravity, ignoreheat, ignoremodulararmor) * 2.0)) - (hasMPReducingHardenedArmor() ? 1 : 0); }
@Override public int getSprintMP(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { if (hasHipCrit()) { return getRunMP(gravity, ignoreheat, ignoremodulararmor); } if (hasArmedMASCAndSuperCharger()) { return ((int) Math.ceil(getWalkMP(gravity, ignoreheat, ignoremodulararmor) * 3.0)) - (hasMPReducingHardenedArmor() ? 1 : 0); } if (hasArmedMASC()) { return ((int) Math.ceil(getWalkMP(gravity, ignoreheat, ignoremodulararmor) * 2.5)) - (hasMPReducingHardenedArmor() ? 1 : 0); } return getSprintMPwithoutMASC(gravity, ignoreheat, ignoremodulararmor); }
@Override public boolean isPermanentlyImmobilized(boolean checkCrew) { // First check for conditions that would permanently immobilize *any* // entity; if we find any, we're already done. if (super.isPermanentlyImmobilized(checkCrew)) { return true; } // If we're prone and base walking MP -- adjusted for gravity and // modular armor since they're reasonably permanent but ignoring heat // effects -- have dropped to 0, we're stuck even if we still have // jump jets because we can't get up anymore to *use* them. if ((getWalkMP(true, true, false) <= 0) && isProne()) { return true; } // Gyro destroyed? TW p. 258 at least heavily implies that that counts // as being immobilized as well, which makes sense because the 'Mech // certainly isn't leaving that hex under its own power anymore. int hitsToDestroyGyro = (gyroType == GYRO_HEAVY_DUTY) ? 3 : 2; if (getGyroHits() >= hitsToDestroyGyro) { return true; } return false; }
int bvWalk = getWalkMP(false, true, true); int airmechMP = 0; if (((getEntityType() & ETYPE_LAND_AIR_MECH) != 0)) {
setModelData("engineName", stripNotes(mech.getEngine().getEngineName())); setModelData("engineMass", NumberFormat.getInstance().format(testMech.getWeightEngine())); setModelData("walkMP", mech.getWalkMP()); setModelData("runMP", mech.getRunMPasString()); setModelData("jumpMP", mech.getJumpMP());