Ticket #2160: Regicide_v1.7.patch

File Regicide_v1.7.patch, 32.1 KB (added by Sandarac, 8 years ago)

Adds gamesetup option to disable Auras/Attack/Production Queue of heroes until City Phase, using templates.

  • binaries/data/mods/public/gui/gamesetup/gamesetup.js

     
    498498        "ExploreMap": "exploreMap",
    499499        "DisableTreasures": "disableTreasures",
    500500        "LockTeams": "lockTeams",
    501         "LastManStanding" : "lastManStanding",
     501        "LastManStanding": "lastManStanding",
     502        "RegicideEarlyAttack": "regicideEarlyAttack",
    502503        "CheatsEnabled": "enableCheats"
    503504    };
    504505
     
    11831184    {
    11841185        delete g_GameAttributes.settings.WonderDuration;
    11851186        delete g_GameAttributes.settings.LastManStanding;
     1187        delete g_GameAttributes.settings.RegicideEarlyAttack;
    11861188    }
    11871189
    11881190    if (mapSettings.PlayerData)
     
    13801382    setGUIBoolean("revealMap", "revealMapText", !!mapSettings.RevealMap);
    13811383    setGUIBoolean("lockTeams", "lockTeamsText", !!mapSettings.LockTeams);
    13821384    setGUIBoolean("lastManStanding", "lastManStandingText", !!mapSettings.LastManStanding);
     1385    setGUIBoolean("regicideEarlyAttack", "regicideEarlyAttackText", !!mapSettings.RegicideEarlyAttack);
    13831386    setGUIBoolean("enableRating", "enableRatingText", !!mapSettings.RatingEnabled);
    13841387
    13851388    Engine.GetGUIObjectByName("optionWonderDuration").hidden =
     
    13861389        g_GameAttributes.settings.GameType &&
    13871390        g_GameAttributes.settings.GameType != "wonder";
    13881391    Engine.GetGUIObjectByName("optionLastManStanding").hidden = mapSettings.LockTeams;
     1392    Engine.GetGUIObjectByName("optionRegicideEarlyAttack").hidden =
     1393        g_GameAttributes.settings.GameType &&
     1394        g_GameAttributes.settings.GameType != "regicide";
    13891395
    13901396    Engine.GetGUIObjectByName("cheatWarningText").hidden = !g_IsNetworked || !mapSettings.CheatsEnabled;
    13911397
     
    14031409
    14041410    for (let ctrl of ["victoryCondition", "wonderDuration", "populationCap",
    14051411                      "startingResources", "ceasefire", "revealMap",
    1406                       "exploreMap", "disableTreasures", "lockTeams", "lastManStanding"])
     1412                      "exploreMap", "disableTreasures", "lockTeams",
     1413                      "lastManStanding", "regicideEarlyAttack"])
    14071414        hideControl(ctrl, ctrl + "Text", notScenario);
    14081415
    14091416    Engine.GetGUIObjectByName("civResetButton").hidden = !notScenario;
  • binaries/data/mods/public/gui/gamesetup/gamesetup.xml

     
    335335                    </object>
    336336                </object>
    337337
    338                 <object name="optionPopulationCap" size="14 98 94% 126">
     338                <object name="optionRegicideEarlyAttack" size="14 98 94% 126">
    339339                    <object size="0 0 40% 28" type="text" style="ModernRightLabelText">
     340                        <translatableAttribute id="caption">Early Hero Attack:</translatableAttribute>
     341                    </object>
     342                    <object name="regicideEarlyAttackText" size="40% 0 100% 28" type="text" style="ModernLeftLabelText"/>
     343                    <object name="regicideEarlyAttack" size="40%+10 5 40%+30 100%-5" type="checkbox" style="ModernTickBox" hidden="true" tooltip_style="onscreenToolTip">
     344                        <translatableAttribute id="tooltip">Toggle whether heroes can attack from the start of the game, or from City Phase.</translatableAttribute>
     345                    </object>
     346                </object>
     347
     348                <object name="optionPopulationCap" size="14 128 94% 156">
     349                    <object size="0 0 40% 28" type="text" style="ModernRightLabelText">
    340350                        <translatableAttribute id="caption">Population Cap:</translatableAttribute>
    341351                    </object>
    342352                    <object name="populationCapText" size="40% 0 100% 100%" type="text" style="ModernLeftLabelText"/>
     
    345355                    </object>
    346356                </object>
    347357
    348                 <object name="optionStartingResources" size="14 128 94% 156">
     358                <object name="optionStartingResources" size="14 158 94% 186">
    349359                    <object size="0 0 40% 28" type="text" style="ModernRightLabelText">
    350360                        <translatableAttribute id="caption">Starting Resources:</translatableAttribute>
    351361                    </object>
     
    355365                    </object>
    356366                </object>
    357367
    358                 <object name="optionCeasefire" size="14 158 94% 186">
     368                <object name="optionCeasefire" size="14 188 94% 216">
    359369                    <object size="0 0 40% 28" type="text" style="ModernRightLabelText">
    360370                        <translatableAttribute id="caption">Ceasefire:</translatableAttribute>
    361371                    </object>
     
    440450                    name="hideMoreOptions"
    441451                    type="button"
    442452                    style="StoneButton"
    443                     size="50%-70 428 50%+70 456"
     453                    size="50%-70 458 50%+70 486"
    444454                    tooltip_style="onscreenToolTip"
    445455                    hotkey="cancel"
    446456                >
  • binaries/data/mods/public/maps/scripts/Regicide.js

     
    44        TriggerHelper.DefeatPlayer(data.from);
    55};
    66
     7Trigger.prototype.CheckRegicideHeroPromotion = function(data)
     8{
     9    if (this.regicideHeroes.indexOf(data.entity) == -1)
     10        return;
     11
     12    let cmpPlayer = QueryOwnerInterface(data.entity);
     13    this.regicideHeroes[cmpPlayer.GetPlayerID()] = data.newentity;
     14};
     15
    716Trigger.prototype.InitRegicideGame = function(msg)
    817{
     18    let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
     19    this.regicideEarlyAttack = !!cmpEndGameManager.GetGameTypeSettings().regicideEarlyAttack;
     20
    921    let playersCivs = [];
    1022    for (let playerID = 1; playerID < TriggerHelper.GetNumberOfPlayers(); ++playerID)
    1123        playersCivs[playerID] = QueryPlayerIDInterface(playerID).GetCiv();
     
    1527    let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
    1628    for (let templateName of cmpTemplateManager.FindAllTemplates(false))
    1729    {
    18         if (templateName.substring(0,6) != "units/")
     30        if (templateName.substring(0,6) != "units/" ||
     31            templateName.slice(-2) == "_b" && this.regicideEarlyAttack)
    1932            continue;
    2033
    2134        let identity = cmpTemplateManager.GetTemplate(templateName).Identity;
     
    2235        let classes = GetIdentityClasses(identity);
    2336
    2437        if (classes.indexOf("Hero") == -1 ||
    25             playersCivs.every(civ => civ != identity.Civ))
     38            playersCivs.every(civ => civ != identity.Civ) ||
     39            templateName.slice(-2) != "_b" && !this.regicideEarlyAttack)
    2640            continue;
    2741
    2842        if (!heroTemplates[identity.Civ])
     
    102116    return undefined;
    103117};
    104118
     119Trigger.prototype.CheckRegicideCityPhase = function(data)
     120{
     121    if (data.tech.indexOf("phase_city") == -1 || this.regicideEarlyAttack)
     122        return;
     123
     124    let cmpPromotion = Engine.QueryInterface(this.regicideHeroes[data.player], IID_Promotion);
     125    if (cmpPromotion)
     126        cmpPromotion.IncreaseXp(cmpPromotion.GetRequiredXp() - cmpPromotion.GetCurrentXp());
     127};
     128
    105129let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
    106130cmpTrigger.regicideHeroes = [];
     131cmpTrigger.regicideEarlyAttack = false;
    107132cmpTrigger.DoAfterDelay(0, "InitRegicideGame", {});
    108133cmpTrigger.RegisterTrigger("OnOwnershipChanged", "CheckRegicideDefeat", { "enabled": true });
     134cmpTrigger.RegisterTrigger("OnEntityRenamed", "CheckRegicideHeroPromotion", { "enabled": true });
     135cmpTrigger.RegisterTrigger("OnResearchFinished", "CheckRegicideCityPhase", { "enabled": true });
  • binaries/data/mods/public/simulation/components/Trigger.js

     
    1111    "CinemaPathEnded",
    1212    "CinemaQueueEnded",
    1313    "ConstructionStarted",
     14    "EntityRenamed",
    1415    "Interval",
    1516    "OwnershipChanged",
    1617    "PlayerCommand",
     
    265266    this.CallEvent("PlayerWon", msg);
    266267};
    267268
     269Trigger.prototype.OnGlobalEntityRenamed = function(msg)
     270{
     271    this.CallEvent("EntityRenamed", msg);
     272};
     273
    268274/**
    269275 * Execute a function after a certain delay.
    270276 *
  • binaries/data/mods/public/simulation/templates/units/athen_hero_iphicrates_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/athen_hero_iphicrates">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/athen_hero_iphicrates</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/athen_hero_pericles_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/athen_hero_pericles">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/athen_hero_pericles</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/athen_hero_themistocles_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/athen_hero_themistocles">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/athen_hero_themistocles</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/brit_hero_boudicca_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/brit_hero_boudicca">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/brit_hero_boudicca</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/brit_hero_boudicca_sword_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/brit_hero_boudicca_sword">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/brit_hero_boudicca_sword</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/brit_hero_caratacos_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/brit_hero_caratacos">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/brit_hero_caratacos</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/brit_hero_cunobelin_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/brit_hero_cunobelin">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/brit_hero_cunobelin</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/cart_hero_hamilcar_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/cart_hero_hamilcar">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/cart_hero_hamilcar</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/cart_hero_hannibal_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/cart_hero_hannibal">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/cart_hero_hannibal</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/cart_hero_maharbal_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/cart_hero_maharbal">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/cart_hero_maharbal</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/gaul_hero_brennus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/gaul_hero_brennus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/gaul_hero_brennus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/gaul_hero_britomartus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/gaul_hero_britomartus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/gaul_hero_britomartus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/gaul_hero_vercingetorix_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/gaul_hero_vercingetorix">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/gaul_hero_vercingetorix</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/iber_hero_caros_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/iber_hero_caros">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/iber_hero_caros</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/iber_hero_indibil_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/iber_hero_indibil">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/iber_hero_indibil</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/iber_hero_viriato_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/iber_hero_viriato">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/iber_hero_viriato</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/mace_hero_alexander_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/mace_hero_alexander">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/mace_hero_alexander</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/mace_hero_craterus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/mace_hero_craterus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/mace_hero_craterus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/mace_hero_demetrius_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/mace_hero_demetrius">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/mace_hero_demetrius</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/mace_hero_philip_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/mace_hero_philip">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/mace_hero_philip</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/mace_hero_pyrrhus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/mace_hero_pyrrhus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/mace_hero_pyrrhus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/maur_hero_ashoka">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/maur_hero_ashoka</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/maur_hero_chanakya">
     3  <Auras disable=""/>
     4  <Promotion>
     5    <Entity>units/maur_hero_chanakya</Entity>
     6    <RequiredXp>2000</RequiredXp>
     7  </Promotion>
     8</Entity>
  • binaries/data/mods/public/simulation/templates/units/maur_hero_maurya_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/maur_hero_maurya">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <ProductionQueue disable=""/>
     6  <Promotion>
     7    <Entity>units/maur_hero_maurya</Entity>
     8    <RequiredXp>2000</RequiredXp>
     9  </Promotion>
     10</Entity>
  • binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/pers_hero_cyrus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <ProductionQueue disable=""/>
     6  <Promotion>
     7    <Entity>units/pers_hero_cyrus</Entity>
     8    <RequiredXp>2000</RequiredXp>
     9  </Promotion>
     10</Entity>
  • binaries/data/mods/public/simulation/templates/units/pers_hero_darius_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/pers_hero_darius">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/pers_hero_darius</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/pers_hero_xerxes_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/pers_hero_xerxes">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/pers_hero_xerxes</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/pers_hero_xerxes_chariot_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/pers_hero_xerxes_chariot">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/pers_hero_xerxes_chariot</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/ptol_hero_cleopatra_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/ptol_hero_cleopatra">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/ptol_hero_cleopatra</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/ptol_hero_ptolemy_I_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/ptol_hero_ptolemy_I">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/ptol_hero_ptolemy_I</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/ptol_hero_ptolemy_IV_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/ptol_hero_ptolemy_IV">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/ptol_hero_ptolemy_IV</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/rome_hero_marcellus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/rome_hero_marcellus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/rome_hero_marcellus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/rome_hero_maximus_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/rome_hero_maximus">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/rome_hero_maximus</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/rome_hero_scipio_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/rome_hero_scipio">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/rome_hero_scipio</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/sele_hero_antiochus_great_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/sele_hero_antiochus_great">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/sele_hero_antiochus_great</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/sele_hero_antiochus_righteous_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/sele_hero_antiochus_righteous">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/sele_hero_antiochus_righteous</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/sele_hero_seleucus_victor_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/sele_hero_seleucus_victor">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/sele_hero_seleucus_victor</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/spart_hero_agis_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/spart_hero_agis">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/spart_hero_agis</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/spart_hero_brasidas_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/spart_hero_brasidas">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/spart_hero_brasidas</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>
  • binaries/data/mods/public/simulation/templates/units/spart_hero_leonidas_b.xml

     
     1<?xml version="1.0" encoding="utf-8"?>
     2<Entity parent="units/spart_hero_leonidas">
     3  <Attack disable=""/>
     4  <Auras disable=""/>
     5  <Promotion>
     6    <Entity>units/spart_hero_leonidas</Entity>
     7    <RequiredXp>2000</RequiredXp>
     8  </Promotion>
     9</Entity>