@Override public void updateConditionFromPart() { if(null != unit && unit.getEntity() instanceof Tank) { ((Tank)unit.getEntity()).setSensorHits(4); } }
@Override public void updateConditionFromPart() { if(null != unit && unit.getEntity() instanceof Tank) { ((Tank)unit.getEntity()).setSensorHits(hits); } }
/** * Parse a tankCrit tag for the given <code>Entity</code>. * * @param tankCrit * @param entity */ private void parseTankCrit(Element tankCrit, Entity entity){ String sensors = tankCrit.getAttribute(SENSORS); String engine = tankCrit.getAttribute(ENGINE); String driver = tankCrit.getAttribute(DRIVER); String commander = tankCrit.getAttribute(COMMANDER); Tank t = (Tank) entity; if (sensors.length() > 0) { t.setSensorHits(Integer.parseInt(sensors)); } if (engine.equalsIgnoreCase("hit")) { t.engineHit(); t.applyDamage(); } if (driver.equalsIgnoreCase("hit")) { t.setDriverHit(true); } if (commander.equalsIgnoreCase("console")) { t.setUsingConsoleCommander(true); } else if (commander.equalsIgnoreCase("hit")) { t.setCommanderHit(true); } }
@Override public void fix() { super.fix(); if(null != unit && unit.getEntity() instanceof Tank) { ((Tank)unit.getEntity()).setSensorHits(0); } }
@Override public void remove(boolean salvage) { if(null != unit && unit.getEntity() instanceof Tank) { ((Tank)unit.getEntity()).setSensorHits(4); Part spare = campaign.checkForExistingSparePart(this); if(!salvage) { campaign.removePart(this); } else if(null != spare) { spare.incrementQuantity(); campaign.removePart(this); } unit.removePart(this); Part missing = getMissingPart(); unit.addPart(missing); campaign.addPart(missing, 0); } setUnit(null); updateConditionFromEntity(false); }
tank.setSensorHits(sensorCrit.getHits());