sleep "sleept" nicht?
Gleich meine ersten Gehversuche beim Scripten geht in die Hose.
Habe ein kleines SQF Script geschrieben und es aus dem Editor via Trigger wie folgt gestartet: [this] exec "script.sqf" Im Script gibt es folgende Zeile: sleep 3; Hätte jetzt angenommen, dass das Script hier für 3 Sekunden anhält und dann weiter fortfährt. Doch leider kommt folgende Fehlermeldung |#|sleep 3; Error Allgemeiner Fehler im Ausdruck:komisch: ??? Was mache ich falsch, bzw. den Befehl gibt es doch, oder ??? |
Wenn mich nicht alles täuscht ist sleep = ~
Also Tilde anstelle des ausgeschriebenen Befehls ~3 |
Habe sleep 3; durch ~3; ersetzt, jetzt kommt:
__waituntil == _time+(|#|~3;) ? Tja |
Versuchs mal ohne Semikolon am Ende.
Wenn das nicht hinhaut sind meine spärlichen Scriptkenntnisse auch schon ausgeschöpft :zahn: |
Zitat:
Zitat:
So wie Du das vorhast, wirst Du mit sleep auch nicht weit kommen. Wenn dann musst Du eine Variable, welche die aktuelle Zeit erfasst, setzen und dann packste da 3 Sek drauf... in etwa so: Code:
_now = time; *Update* wobei mir grad einfällt, dass das völliger Quatsch ist und ein einfaches sleep 3; ja genügt. Also: Code:
hint format["Es ist jetzt: %1", time]; |
Zitat:
Ehm, genau das hatte ich getan. Anbei mein Test-Script: _me = _this select 0; hint "Das ist ein Hinweis!"; sleep 3; hint "Noch ein Hinweis nach 3 Sekunden"; exit; Gespeichert im Missionsordner unter Test.sqf und per Trigger aufgerufen mit [this] exec "Test.sqf" Verstehe ich ja selber nicht, hab's ja schon in zig Scripten (nicht nur SQS sonder auch SQF) gesehen. Eben darum hatte ich es ja jetzt noch einmal getestet, bevor ich hier poste... |
Du musst dich entscheiden, ob du SQS oder SQF programmieren willst.
Bei SQS Schlafen mit ~, wobei das Script mit blabla exec "abcd.sqs" gestartet werden muss, bei SQF Schlafen mit sleep, wobei das Script (unter anderem) mit blabla execVM "abcd.sqf" gestartet werden muss. |
Zitat:
Code:
nil=[this] execVM "Test.sqf" |
Bedankt, jetzt hab ich's verstanden! - klappt...
Gruß turrican |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:25 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias