@ Drunken Officer
Es ist Morgen, ich bin ausgeschlafen und entsprechend kann ich auf meinen vollen IQ von 2 (aufgerundet) zurückgreifen.
Ich würde die ganze Sache ganz anders anpacken. Die Zuweisung der Ampellichttextur würde ich ganz normal in der config.cpp des Modells unter class Useractions - class OpenDoor / CloseDoor (oder wie immer Du dieses Classes benannt hast) - statement erledigen.
Bei der class Eventhandlers würde ich dann den init nur dazu verwenden, die Ampellichtextur auf rot zu stellen, damit von Anfang an das passende Licht angeht.
Ich denke das ist die sauberste Lösung.
Edit:
Beispiel
Code:
class Eventhandlers
{
init = "this setobjecttexture [0, '\polizei\grafik\lichtrot.paa'];";
};
Unter class Useractions - class zum öffnen des Tores
Code:
statement = "this animate ['door_pb_aussenhof', 1]; this setobjecttexture [0, '\polizei\grafik\lichtgruen.paa'];";
class zum schliessen des Tores
Code:
statement = "this animate ['door_pb_aussenhof', 0]; this setobjecttexture [0, '\polizei\grafik\lichtrot.paa'];";
Edit:
@ Vienna
Deine Sorgen sind unbegründet. Wohl verwendet das Script den gleichen Syntax wie eine Funktion (sqf), aber es wird eben als Script (execVM) und nicht als Funktion (call / spawn) benutzt. Deshalb sind sleep / waituntil kein Problem, ebenso wenig wie dabei die Kommentare (//) stören, welche er ja hoffentlich eh daraus gelöscht hätte, da sie ja nur quasi als einmalige Erklärung gedacht sind.
Der Status eines Script bleibt unberührt von seinem Aufruf- Ort. Es ist also egal, ob ein Script von einem Auslöser, einer Objektinitzeile, einem anderen Script oder eben einer Modell- config aus gestartet wird.
Die while- Schlaufe würde auch gemäss meines Info- Standes "bloss" 10000 mal durchlaufen, was aber im Kontext dieser Problemstellung nahezu irrelevant ist, da es extremst unwahrscheinlich ist, dass das Tor innerhalb eines Szenariums 10000 mal geöffnet / geschlossen wird.
Abgesehen davon finde ich aber - wie oben schon dargelegt - die bisher hier verfolgten Lösungsansätze - natürlich meinen inklusive - Blödsinn. Selbst wenn eine der bisher vorgeschlagenen Script- Lösungen zum funktionieren kommen würde, fände ich es einen Murks, unsauber, unbefriedigend.