public int getBVWalkMP() { return super.getWalkMP(false, true, true); }
public int getAirMechWalkMP(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { int mp = (int) Math.ceil(super.getWalkMP(gravity, ignoreheat, ignoremodulararmor) * 0.33); if (convertingNow) { mp /= 2; } return mp; }
/** * Returns this mech's running/flank mp modified for leg loss & stuff. */ @Override public int getRunMP(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { if (countBadLegs() == 0) { return super.getRunMP(gravity, ignoreheat, ignoremodulararmor); } return getWalkMP(gravity, ignoreheat, ignoremodulararmor); }
/** * Returns run MP without considering MASC modified for leg loss & stuff. */ @Override public int getRunMPwithoutMASC(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { if (countBadLegs() == 0) { return super.getRunMPwithoutMASC(gravity, ignoreheat, ignoremodulararmor); } return getWalkMP(gravity, ignoreheat, ignoremodulararmor); }
/** * Current MP is calculated differently depending on the LAM's mode. AirMech * mode returns cruise/flank; walk/run is treated as a special case of WiGE * ground movement. */ @Override public int getWalkMP(boolean gravity, boolean ignoreheat, boolean ignoremodulararmor) { int mp; if (getConversionMode() == CONV_MODE_FIGHTER) { mp = getFighterModeWalkMP(gravity, ignoremodulararmor); } else if (getConversionMode() == CONV_MODE_AIRMECH) { mp = getAirMechCruiseMP(gravity, ignoremodulararmor); } else { mp = super.getWalkMP(gravity, ignoreheat, ignoremodulararmor); } if (convertingNow) { mp /= 2; } return mp; }
assertTrue(mek.getEngine().isFusion()); assertEquals(Engine.NORMAL_ENGINE, mek.getEngine().getEngineType()); assertEquals(7, mek.getWalkMP()); assertEquals(11, mek.getRunMP());