Kleine-Scripting-Fragen

  • Guten Tag,


    wie kann ich das zum Laufen bringen?


    Info:


    Man baut eine Bombe ein, sobald ein Fahrer im Auto sitzt und eine bestimmte Geschwindigkeit erreicht wird, soll die Funktion "DetonateVehicle" getriggert werden.


    Wenn ich die Abfrage "if driver" in die While-Schleife packe, kommt dieser Error: ERROR: Infinite/too long execution

  • Du könntest es so machen, dass du ein ElementData auf das Fahrzeug legst und dann beim einsteigen einen Timer setzt, der immer prüft ob die Geschwindigkeit erreicht ist. Bei deinem Script bin ich mir nichtmal sicher ob das funktionieren würde, da du das ganze clientseitig versuchst, und z.B. ausgestreamte Fahrzeuge nicht mehr existieren und somit nichts getriggert werden kann.


    Ungetestet, muss noch etwas angepasst werden, der Timer wird z.B. nicht entfernt wenn man vor dem explodieren aussteigt:


  • Hey, ich hab alles versucht, doch leider wird nur "2" ausgegeben, was heißt dass es bis zum zweiten if kommt.

    Weiß einer warum?

  • Weil deine Funktion eine falsche Reihenfolge der Parameter entgegen nimmt. Füge zwischen player, target einen weiteren Parameter ein z.B. cmd.


    Lua
    function addElementData(player, cmd, target, element, amount)


    Dann hast du zwar die erste Hürde überwunden, doch der Rest wird dann leider noch nicht stimmen.

    Denn die Idee mit dem element-Parameter wirst du so denke ich nicht umsetzen können, da es sich bei dem Parameter um keine Table handelt, sondern um einen String.

  • Denn die Idee mit dem element-Parameter wirst du so denke ich nicht umsetzen können, da es sich bei dem Parameter um keine Table handelt, sondern um einen String.

    Hab folgendes Korrigiert



    1.Fehler


    Alt:


    Code
    vioSetElementData(ziel, element[ValidElements], amount)

    Neu:


    Code
    vioSetElementData(ziel, element, amount)



    2. Fehler


    alt:


    Code
    function addElementData(player, target, element, amount)


    Neu:


    Code
    function addElementData(player, cmd, target, element, amount)


    EDIT//


    3. Fehler


    Alt:

    Code
    if element[ValidElements] then


    neu:


    Code
    if ValidElements[element] then



    Audifire verstehe aber nicht warum das nicht funktionieren sollte nen ElementData so zu setzen ?


    Mit freundlichen Grüßen


    Strider

    Einmal editiert, zuletzt von Strider ()

  • Strider Weil es sich bei addElementData um einen Commandhandler handelt somit element ein String ist.

    Auf einem String kann ich den []-Operator nicht anwenden, da es sich nicht um eine Table handelt.


    Du hast es ja in deiner korrigierten Version berichtigt, in dem du ValidElements[element] durchführst.

    Das ist auch legitim, da es sich bei ValidElements um eine Table handelt.

    Als ich meinen Beitrag schrieb, habe ich die Variable ValidElements gar nicht aktiv wahrgenommen.


    Das wäre ungefähr folgende Problematik:

    Lua
    local str = "Hello World"
    print(str[2]) -- Ausgabe: nil

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!