SimpleJobs mit for-Schleife starten
» Siedler Map Source Forum » Siedler DEdK Script Forum » SimpleJobs mit for-Schleife starten
Seiten: 1
mundn
|
#1 25.10.2018 16:00 Beiträge: 83 |
SimpleJobs mit for-Schleife starten
Hallo,
ich wollte mal fragen wie ich mehrere unterschiedliche SimpleJobs mit einer for-Schleife starten kann. Folgender Code funktioniert leider nicht:
for _i = 1, 2 do local f = function( _i ) Message(_i) end StartSimpleJob(f) end
statt dem gewünschten
>1 >2
wird
>nil >nil
ausgegeben.
Ziel ist es, das ich unter "f" eine von _i abhängige funktionen erstellen kann.
____________________
Scripten bei Master pewe in DEdK Script-Wiki gelernt ich habe.
mcb
|
#2 25.10.2018 16:34 Beiträge: 1472 |
Du erwartest zwar in f einen Parameter, übergibst StartSimpleJob aber keinen, also füllt Lua mit nil auf. Übergib StartSimpleJob den Parameter (du brauchst dafür einen Trigger-Fix, den solltest du aber haben, wenn du StartSimpleJob mit einer Funktion aufrufst).
for _i = 1, 2 do local f = function( _i ) Message(_i) end StartSimpleJob(f, _i) end
mundn
|
#3 25.10.2018 16:44 Beiträge: 83 |
danke klappt
____________________
Scripten bei Master pewe in DEdK Script-Wiki gelernt ich habe.
totalwarANGEL
|
#4 25.10.2018 19:05 Beiträge: 2123 |
Back to the Roots
Klassisch wäre über Trigger.RequestTrigger - für alle die, die den Fix nicht verwenden wollen oder können.
Trigger.RequestTrigger( Events.LOGIC_EVENT_EVERY_SECOND, nil, "SomeJobFunction", 1, nil, {_Argumente,} ) ... function SomeJobFunction(_Argumente) ... end
Nachteil:
- Kein Inline
- Keine Tables als Argumente
____________________
Die Welt ist arschlochförmig und wir leben in der Mitte.
Seiten: 1