PHP-Code:
for unit in lUnits:
# Unit nicht mehr killen (Weihnachtsbonus :D ab 7.12.2012)
iDamage = unit.getDamage()
if iDamage < 70:
unit.changeDamage(30,False)
if gc.getPlayer(unit.getOwner()).isHuman():
CyInterface().addMessage(unit.getOwner(), True, 5, CyTranslator().getText("TXT_KEY_MESSAGE_NOSUPPLY_CITY",(pCity.getName(),unit.getName(),30)), None, 2, None, ColorTypes(12), unit.getX(), unit.getY(), True, True)
else:
iJumpedOut += 1
if unit.getDamage() < 85: unit.setDamage(85,unit.getOwner())
unit.jumpToNearestValidPlot()
if gc.getPlayer(unit.getOwner()).isHuman():
CyInterface().addMessage(unit.getOwner(), True, 5, CyTranslator().getText("TXT_KEY_MESSAGE_CITY_UNITS_STARVATION_4",(pCity.getName(),unit.getName())), None, 2, unit.getButton(), ColorTypes(12), unit.getX(), unit.getY(), True, True)
# Wenn die Stadt durch Buildings stark heilt
if iJumpedOut == 0:
# Chance rauszuwerfen 33%
if 1 == self.myRandom(3, None):
Einheiten = 1 + self.myRandom(len(lUnits), None)
while unit in lUnits and Einheiten > 0:
Einheiten -= 1
iRandUnit = self.myRandom(len(lUnits), None)
lUnits[iRandUnit].jumpToNearestValidPlot()
if pPlayer.isHuman():
CyInterface().addMessage(pCity.getOwner(), True, 10, CyTranslator().getText("TXT_KEY_MESSAGE_CITY_UNITS_STARVATION_4",(pCity.getName(),lUnits[iRandUnit].getName())), "AS2D_STRIKE", 2, lUnits[iRandUnit].getButton(), ColorTypes(7), lUnits[iRandUnit].getX(), lUnits[iRandUnit].getY(), True, True)
# Einheit aus dem Array werfen
lUnits.remove(lUnits[iRandUnit])
Ist eine Einheit so stark geschwächt, dass sie durch die Verletzung sterben würde, muss sie die Stadt verlassen. Müssen keine Einheiten die Stadt verlassen, gibt es trotzdem eine Chance von 33%, dass welche die Stadt verlassen müssen.