Die Parameter ( _replaceWith, _replaceWhat )
_replaceWith: GUI Widget welches eingesetzt wird _replaceWhat: GUI Widget das ersetzt werden soll
Der aktuelle Inhalt von „_replaceWith“ wird in „_replaceWhat“ übertragen.
Man muss einen Umweg gehen, um das Widget auch wieder zurücksetzten zu können.
Dazu Schrieb andre111 im siedler-maps forum dies:
du musst ein Backup von dem Button machen also so:
XGUIEng.TransferMaterials( "Command_Attack","Research_Banking" ) --backup(diese technology wird vom spiel nicht benutzt) XGUIEng.TransferMaterials( "Hero2_PlaceBomb","Command_Attack" ) --verändern XGUIEng.TransferMaterials( "Research_Banking","Command_Attack" ) --zurück setzen
Diesen Code zum verändern einsetzen
XGUIEng.TransferMaterials( "Command_Attack","Research_Banking" ) --backup(diese technology wird vom spiel nicht benutzt) XGUIEng.TransferMaterials( "Hero2_PlaceBomb","Command_Attack" ) --verändern
und wenn beliebt dann diesen Code zum zurücksetzen an anderer stelle
XGUIEng.TransferMaterials( "Research_Banking","Command_Attack" ) --zurück setzen
Wenn der Dieb selektiert wird, dann sehen seine Buttons „Position halten“ und „Angreifen“ anders aus.
Bringt eigentlich nichts, aber ein schönes Beispiel :)
function AendereDiebButtons() XGUIEng.TransferMaterials("Command_Stand","Research_Gilds") -- save old button XGUIEng.TransferMaterials("Command_Attack","Research_Taxation") -- save old button StartSimpleJob("Dieb_angeklickt") end function Dieb_angeklickt() local Selektiert = {GUI.GetSelectedEntities()} for i = 1,table.getn(Selektiert)do if IsEntityOfType(Selektiert[i],"PU_Thief")then XGUIEng.TransferMaterials("Thief_PlaceExplosives","Command_Attack") XGUIEng.TransferMaterials("Research_Banking","Command_Stand") else XGUIEng.TransferMaterials("Research_Gilds","Command_Stand") XGUIEng.TransferMaterials("Research_Taxation","Command_Attack") end end end