Kleine Frage
» Siedler Map Source Forum » Siedler DEdK Script Forum » Kleine Frage
Seiten: 1
Der_Deutsche
|
#1 07.10.2018 18:13 Beiträge: 349 |
Kleine Frage
Heyy,
ich melde mich seit langem wieder in diesem Bereich mal.
Meine Frage ist, wird ein SimpleJob Beendet, wenn die dort
drin eingetragende Aktion ausgeführt wird? Wenn nein wie kann
man dann ein SimpleJob deaktivieren.
____________________
Nachbau von Siedler 5 Lobbys "Ubi.Com"
Updatelösungen Siedler 5 Patch 1.06
Creators Update Lösung Windows 10
Siedler 5
mcb
|
#2 07.10.2018 18:21 Beiträge: 1472 |
Der Sinn von einem SimpleJob ist es ja gerade, etwas jede Sekunde ausführen zu lassen, er wird also nicht nach einmaiger Ausführung beendet. Er wird beendet, wenn die Aufgerufene Funktion true zurückgibt, oder du EndJob aufrufst:
function foo() if i==1 then return true end end StartSimpleJob("foo")
function foo() if i==1 then EndJob(bar) end end bar = StartSimpleJob("foo")
Der_Deutsche
|
#3 07.10.2018 18:52 Beiträge: 349 |
Ah ok danke, da kommt mir die Frage in den Sinn, wie man etwas nur alle 5 Minuten abfragen kann. Ich weiß nämlich nicht ob es in Lua wie in Java scheduels gibt
____________________
Nachbau von Siedler 5 Lobbys "Ubi.Com"
Updatelösungen Siedler 5 Patch 1.06
Creators Update Lösung Windows 10
Siedler 5
mcb
|
#4 07.10.2018 19:09 Beiträge: 1472 |
Schedules müsstest du dir selbst basteln, geht aber auch einfacher:
function foo() if Counter.Tick2("someRandomString", 5*60) then bar() end end
(Counter ist praktisch eine Zählvariable, was dann auf 5 Minuten rausläuft, wenn sie vom SJ jede Sekunde aufgerufen wird)
(Alternativ kannst du über Logic.GetTime() die Zeit erfragen, seit der die Map gestartet wurde (Ingame-Zeit) oder über XGUIEng.GetSystemTime() die Zeit, seit der Siedler läuft (Realzeit))
SH
|
#5 07.10.2018 22:12 Beiträge: 127 |
Zitat von mcb:
function foo() if Counter.Tick2("someRandomString", 5*60) then bar() end end
Why it must be a random string? What does it do?
____________________
Sorry for my German
mcb
|
#6 07.10.2018 22:27 Beiträge: 1472 |
You can use whatever you want there, it just has to be unique. Counter identifies its global variable with this string (it gets used as table key).
SH
|
#7 08.10.2018 16:07 Beiträge: 127 |
OK, I didn't know it. When I used Counter.Tick2 I just entered the job name.
____________________
Sorry for my German
mcb
|
#8 08.10.2018 17:43 Beiträge: 1472 |
Using the job name works fine, as long as you don't start a job more than once.
Der_Deutsche
|
#9 08.10.2018 18:05 Beiträge: 349 |
At a String you can write any what do you want Dick you can use mam and anymore
____________________
Nachbau von Siedler 5 Lobbys "Ubi.Com"
Updatelösungen Siedler 5 Patch 1.06
Creators Update Lösung Windows 10
Siedler 5
Seiten: 1