===== XGUIEng.TransferMaterials =====
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.
==== Anwendung ====
Man muss einen Umweg gehen, um das Widget auch wieder zurücksetzten zu können. \\
Dazu Schrieb andre111 [[http://www.siedler-maps.de/forum.php?action=showthread&postid=58193#posting58193|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
===Will heissen in der Praxis:===
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
==== Anwendungsbeispiel ====
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