Neu-Lua Interpreter und Events
» Siedler Map Source Forum » Siedler DEdK Script Forum » Neu-Lua Interpreter und Events
Seiten: 1
daniBIGdani
|
#1 31.12.2017 13:05 Beiträge: 153 |
Neu-Lua Interpreter und Events
Hallo,
ich bin auf diesen Post gestoßen: http://www.siedler-games.de/si...php/utilscripts:luainterpreter
und wollte Events.LOGIC_EVENT_RESEARCH_DONE nutzen um zu schauen ob der Spieler Technologies.T_Shoes erforscht hat. Leider gibt es kein Beispiel wie man das neue Triggersystem benutzt. Und die Eventfunktionen dann verwendet. Versuche wie:
--FMA: Trigger.RequestTrigger(Events.LOGIC_EVENT_RESEARCH_DONE,"",ActionOnResearchDone(),1,nil,nil) ResearchTechnology(Technologies.T_Shoes,1) --FMA end. ActionOnResearchDone = function() Message("Research Done!") Message("_techType: "..Event.GetTechnologyType()) --0 muss 127! Message("_player: "..Event.GetPlayerID()) --0 muss 1! end
funktionieren nicht. Was mache ich falsch?
Würde mich über Hilfe freuen?
MfG daniBIGdani
mcb
|
#2 31.12.2017 13:53 Beiträge: 1472 |
Ich glaube diesern Lua in Lua Interpreter hat noch nie jemand in einer Map benutzt.
Zu LOGIC_EVENT_RESEARCH_DONE: Der Trigger funktioniert nicht (und hat es glaub ich auch nie), als Ersatz kann GameCallback_OnTechnologyResearched(player, techId) dienen:
GameCallback_OnTechnologyResearchedOrig = GameCallback_OnTechnologyResearched function GameCallback_OnTechnologyResearched(pl, tech) GameCallback_OnTechnologyResearchedOrig(pl, tech) Message("Research Done!") Message("_techType: "..Event.GetTechnologyType()) Message("_player: "..Event.GetPlayerID()) end
Zum Triggeraufruf: Im normalen Lua müsste der so aussehen:
Trigger.RequestTrigger(Events.LOGIC_EVENT_RESEARCH_DONE, nil, "ActionOnResearchDone", 1, nil, nil)
Seiten: 1