} else if (wtype.getAmmoType() == AmmoType.T_HAG) { return wtype.getRackSize() / 2;
    public int getExplosionDamage() {        if (type instanceof AmmoType) {            AmmoType atype = (AmmoType)type;            return atype.getDamagePerShot() * atype.getRackSize() * shotsLeft;        } else if (type instanceof WeaponType) {            WeaponType wtype = (WeaponType)type;            //HACK: gauss rifle damage hardcoding            if (wtype.getAmmoType() == AmmoType.T_GAUSS) {                return 20;            } else if (wtype.getAmmoType() == AmmoType.T_GAUSS_LIGHT) {                return 16;            } else if (wtype.getAmmoType() == AmmoType.T_RAIL_GUN) {                return 22;            } else if (wtype.getAmmoType() == AmmoType.T_GAUSS_HEAVY) {                return 25;            } else if (wtype.getAmmoType() == AmmoType.T_AC_ROTARY ||                       wtype.getAmmoType() == AmmoType.T_AC ||                       wtype.getAmmoType() == AmmoType.T_LAC) {                return wtype.getDamage();            } else if (wtype.getAmmoType() == AmmoType.T_MAGSHOT) {                return 3;            }else if ( this.isHotLoaded() ){                Mounted link = this.getLinked();                AmmoType atype = ((AmmoType) link.getType());                int damage = wtype.getRackSize() * atype.getDamagePerShot();                return damage;            }        }        // um, otherwise, I'm not sure        System.err.println("mounted: unable to determine explosion damage for "                            + getName());        return 0;    }