Einzelnen Beitrag anzeigen
Alt 17.09.2014, 08:50   #10 (permalink)
Vienna
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Kann schon sein, dass es einen (ablaufbedingten) Unterschied macht ob eine globale oder lokale Variable verwendet wird und bei lokal eine kleine Pause notwendig ist, die dem Server die Möglichkeit gibt einen zuvor publiken Befehl (wie attachTo) zu verarbeiten der das selbe Objekt betrifft. Dafür spricht die Notwendigkeit der Pause zwischen detach und setPos.

So wie ich das sehe unterbricht sleep den Ablauf des Skripts und gibt dem System die Möglichkeit seine "Arbeit" zu erledigen. Dazu genügt vermutlich schon ein Sleep von 0.1. Bei waitUntil wurde sleep 0.5 genommen, weil es ausreicht wenn in diesem Takt die Abfrage erfolgt.

Es hat sich gezeigt, dass bei Skripten, die bereits beim Spielstart aufgerufen werden, in der 1. Zeile ein sleep stehen muss, wenn im Skript Befehle stehen die eine vollständige Initialisierung des Spiels benötigen. sleep wartet dabei anscheinend nicht die eingestellte Zeit ab, sondern pausiert bis die Initialisierung abgeschlossen ist.
Vienna ist offline