Lua Script - wenn Bedingungen sich überschneiden und jedoch dann nur eine Gültigkeit haben soll

  • Hi, brauche mal Nachhilfe / Anregung -

    ganz kurze Einleitung:

    - Fahr-/ Bremshebel wird in den Bereich unter Null bewegt, damit werden Leuchtmelder und Traktionssperre aktiv

    - Fahrzeug steht, Türen werden geöffnet, dann wieder geschlossen und schalten mit dem Schließen die Traktionssperre, als auch den Leuchtmelder mit aus


    soweit, so gut - zum Anfahren muss jedoch wieder der Fahr-/ Bremshebel bewegt werden (ist ja noch im Bereich unter Null) und dieser schaltet dann wieder die Traktionssperre und den Leuchtmelder ein (siehe Bild 3). Das soll nicht geschehen, es soll die letzte Bedingung der Türschließung allein Wirkung zeigen - bis erneut eine Bewegung des Fahr-/ Bremshebels gegen unter Null eingeleitet wird und dann wieder damit die Traktionssperre aktiviert wird.


    So sollte es dann sein: Der Fahr-/ Bremshebel aktiviert bei unter Nullbereich die Traktionssperre. Zusatzbedingung: Türschließung deaktiviert die Traktionssperre und Leuchtmelder UND erst bei einer neuen Abbremsung (also, erneute Bewegung des Fahr-/ Bremshebels unter Null), soll die Traktionssperre wieder aktiviert werden.


    Wenn da jemand eine Lösung dazu weiß, ich wäre dankbarer Abnehmer :)


    Gruß


    Habe eine Lösung gefunden - hat sich erledigt!

  • Hallo Cotten Eye Joe,


    ich würde hier mit einem Boolean arbeiten, mit dem Du den Teil des Skriptes abkapselst, der nur einmal ausgeführt werden soll und der zurückgesetzt wird, wenn Du den Kombihebel über dem Wert 0 hast:


    "

    gBool = true;

    (...)


    function Update ( time )

    (...)

    if (gBool)

    (...) [hier kommen deine Traktionssperre / Leuchtmelder usw. hin]

    gBool = false;

    end

    (...)

    end


    function OnControlValueChange ( name, index, value )

    (...)

    if ( name == "[NAME VOM KOMBIHEBEL]" and value > 0 )

    gBool = true;

    end

    end


    "

    Vielleicht hilft Dir dieses Stück Pseudo-Script zu verstehen, was ich meine.


    Gruß

    SeKu