Einzelnen Beitrag anzeigen
Alt 03.08.2013, 15:16   #1 (permalink)
MagicStyle
50 Beiträge100 Beiträge
 
Benutzerbild von MagicStyle
 
Registriert seit: 26.09.2012
Beiträge: 120
Icon5 Script wird nicht vollständig ausgeführt

Hallo Zusammen, habe zwei kleine Problemchen und hoffe mir kann jemand helfen.

Ich habe ein kleines Script für ein Auto geschrieben das diesem eine neue Aktion hinzufügt "Licht Flackern". Das Script funktioniert, es schaltet in einer Endlosschleife das Licht ein und wieder aus, funktioniert soweit ganz gut.

Problem I:
Ich dachte mir ich versuche es das diese Aktion genau dann automatisch ausgeführt wird, wenn ich mit dem Auto einen bestimmten Auslöser betrete.

Doch leider wird das Script nach dem betreten des Auslösers nur bis an die Stelle ausgeführt wo die Bildschirmausgabe "LICHTER FLACKERN" erscheint? Es kommt keine Fehlermeldung, das Script wird wie gesagt gestartet, aber die For-Schleife wird scheinbar zu keinem Zeitpunkt betreten, ansonsten würden die Lichter doch flackern?

Kann mir bitte jemand verraten weshalb das Script vom Auto aus ausgelöst komplett funktioniert, aber vom Auslöser ausgelöst aufeinmal nicht??? :/

Der Auslöser ist wie folgt konfiguriert:
Das Auto ist an den Auslöser gruppiert.
Unter "On Activate" steht folgendes:

[] exec "script.sqf";

Hier das Script:
Code:
//Variablen deklarieren und initialisieren
_i = 0;

player globalChat format["%1","LICHTER FLACKERN!"];

for [{_i=1}, {_i < 10}, {_i=_i+1}] do 
{

    player action ["lightOn", Auto];
    
    //Verzögerungsschleife
    for [{_i=1}, {_i < 5000}, {_i=_i+1}] do 
    {
    };
    
    player action ["lightOff", Auto];

    //Verzögerungsschleife
    for [{_i=1}, {_i < 5000}, {_i=_i+1}] do 
    {
    };

        //Schleife zu einer Endlosschleife machen
        If (_i > 8) then
        {
            _i = 1;                    
        };
};

//Variablen zerstören
_i = nil;
Problem II:
Wie ihr bestimmt schon gesehen habt ist dieses Script eine Endlosschleife, da ich möchte dass das Licht NICHT nach einer gewissen Zeit ausgeht.

Hat jemand eine Idee wie ich ich das Flackern wieder beenden kann, vielleicht mit einer Aktion "Flackern beenden"?

Danke für jede Hilfe!

Geändert von MagicStyle (03.08.2013 um 17:39 Uhr).
MagicStyle ist offline   Mit Zitat antworten