Nein. Nicht mehr Arbeit. Modifizierbar. Beförderungen bekommt einen Tag: LoyaltyChange. Macht die Beförderung garnet überflüssig, sondern ohne Einzelfallprüfung verarbeitbar. Die DLL kennt keine PROMOTION_LOYALTY oder ne UNIT_SLAVE. Das kennt nur GC.getPromotionInfo((PromotionTypes) i).getLoyaltyChange(). Damit kann man arbeiten, viel besser als mit: iPromo == PROMOTION_LOYALTY || iPromo == PROMOTION_LEADER_LOYALTY || usw. und jedesmal wenn eine dazu kommt wieder in den Code gehen und an jeder relevanten Stelle was ändern...
Die Beförderung LOYALTY bekommt im Promotion.xml eingetragen, dass sie soundso sehr loyal macht. Und die Beförderung Kämpft auf eigenen Füßen, dass sie soundso sehr negativ loyal macht. Außer letztere fällt weg, dann wird das kein Zahlenwert, sondern boolsch:
Beförderungen LOYALTY und LEADER_LOYALTY bekommt bLoyal=1, alle anderen bLoyal=0.