GUI und Drake passen nicht zusammen. Ich brauche hilfe beim GUI
» Siedler Map Source Forum » Siedler DEdK Script Forum » GUI und Drake passen nicht zusammen. Ich brauche hilfe beim GUI
Seiten: 1
Drake
|
#1 26.06.2010 06:43 Beiträge: 132 |
GUI und Drake passen nicht zusammen. Ich brauche hilfe beim GUI
hi ich habe eine frege zu GUI wie kann ich die GUI Action und den Tooltip ändern habe alles versucht und nix funzt richtig pls hilfe.
un hier kriege ich immer nen Stack overflow :
GUITooltip_ResearchTechnologies_Orig = GUITooltip_ResearchTechnologies GUITooltip_ResearchTechnologies = function(_a) if _a == 120 then else GUITooltip_ResearchTechnologies_Orig(_a) end end
(Ich glaube ich verstehe GUI in 100 Jahren nicht)
Dieser Beitrag wurde von Drake am 26.06.2010 um 09:44 editiert.
warrior1024
|
#2 26.06.2010 11:12 Beiträge: 345 |
Tipp: GUI_Elements
Research_LightBricks Calls: GUIAction_ReserachTechnology(Technologies.T_LightBricks) Calls: GUITooltip_ResearchTechnologies(Technologies.T_LightBricks,"MenuBrickworks/LightBricks")
Das steht in den GUI_Elements, Zeile 2058-2060
Somit sind die Parameter falsch.
function HackBrickworks() GUITooltip_ResearchTechnologies_Orig = GUITooltip_ResearchTechnologies GUITooltip_ResearchTechnologies = function(_tech, _kA) if _tech == Technologies.T_LightBricks then XGUIEng.SetText( gvGUI_WidgetID.TooltipBottomCosts, "Hallo, ich bin ein Tooltip!" ) else GUITooltip_ResearchTechnologies_Orig(_tech, _kA) end end GUIAction_ReserachTechnology_Orig = GUIAction_ReserachTechnology GUIAction_ReserachTechnology = function(_tech) if _tech == Technologies.T_LightBricks then BrickworksAction() else GUIAction_ReserachTechnology_Orig(_tech) end end end function BrickworksAction() end
Dann gibt´s noch ein Problem:
Der Button fehlt(wird nicht angezeigt).
Lässt sich per SimpleJob abfragen, ob gerade eine Lehmhütte selektiert ist und dann eben XGUIEng.ShowWidget(120, 1) und XGUIEng.DisableButton(120,0)
warrior1024
____________________
"Banken machen keine Fehlentscheidungen! Haben Euch das Eure Eltern nicht beigebracht?"
- Bankier Samael Silren, Enderal
totalwarANGEL
|
#3 26.06.2010 11:23 Beiträge: 2123 |
Ich versuche dir das mal am Beispiel des Leibeigenen-Button zu erklären:
GUIAction_BuySerf_Orig = GUIAction_BuySerf GUIAction_BuySerf = function() if DASundDAS == true then Function() -- was soll stattdessen getan werden? else GUIAction_BuySerf_Orig() -- Backup der alten Funktion. end end GUITooltip_BuySerf_Orig = GUITooltip_BuySerf GUITooltip_BuySerf = function() if DASundDAS == true then XGUIEng.SetText( gvGUI_WidgetID.TooltipBottomText, "Neuer Text")) XGUIEng.SetText( gvGUI_WidgetID.TooltipBottomCosts, "Neue Kosten") else GUITooltip_BuySerf_Orig() -- Backup des alten Textes end end
Die erste Funktion ändert die GUI Aktion und die zweite den Tooltip. Im Prinzip ist das bei allen anderen Buttons gleich mit geringen Abweichungen. Wenn du jetzt experimentieren willst, dann probier dich aus. Dadurch kannst du nur besser werden.
Andernfalls sag Bescheit. Natürlich kannst du die GUI auch ohne Backup hacken.
Syntax-Errors vorbehalten!
____________________
Die Welt ist arschlochförmig und wir leben in der Mitte.
totalwarANGEL
|
#4 26.06.2010 11:23 Beiträge: 2123 |
Ups, da warrior schneller...
____________________
Die Welt ist arschlochförmig und wir leben in der Mitte.
Seiten: 1