roll.addModifier(3, "Gyro damaged");
if ( getGyroType() == Mech.GYRO_HEAVY_DUTY ){ if ( getBadCriticals(CriticalSlot.TYPE_SYSTEM, Mech.SYSTEM_GYRO, Mech.LOC_CT) == 1 ) roll.addModifier(2, "HD Gyro damaged once"); else roll.addModifier(3, "HD Gyro damaged twice"); } else roll.addModifier(3, "Gyro damaged");
    public PilotingRollData addEntityBonuses(PilotingRollData roll) {        // gyro hit?        if (getBadCriticals(CriticalSlot.TYPE_SYSTEM, Mech.SYSTEM_GYRO, Mech.LOC_CT) > 0) {            roll.addModifier(3, "Gyro damaged");        }        // EI bonus?        if (hasActiveEiCockpit()) {            roll.addModifier(-1, "Enhanced Imaging");        }        // Small/torso-mounted cockpit penalty?        if (getCockpitType() == Mech.COCKPIT_SMALL) {            roll.addModifier(1, "Small Cockpit");        } else if (getCockpitType() == Mech.COCKPIT_TORSO_MOUNTED) {            roll.addModifier(1, "Torso-Mounted Cockpit");            int sensorHits = getBadCriticals(CriticalSlot.TYPE_SYSTEM, Mech.SYSTEM_SENSORS, Mech.LOC_HEAD);            int sensorHits2 = getBadCriticals(CriticalSlot.TYPE_SYSTEM, Mech.SYSTEM_SENSORS, Mech.LOC_CT);            if ((sensorHits + sensorHits2) == 3) {                roll.addModifier(4, "Sensors Completely Destroyed for Torso-Mounted Cockpit");            } else if (sensorHits == 2) {                roll.addModifier(4, "Head Sensors Destroyed for Torso-Mounted Cockpit");            }        }        if (getArmorType() == EquipmentType.T_ARMOR_HARDENED) {            roll.addModifier(1, "Hardened Armor");        }        return roll;    }