Variable in Filterscript ändern

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey,
    habe n problem und zwar hab ich zur entwicklung mein Fahrzeugscript als Filterscript gemacht,
    jedoch überschneiden sich die zwei scripts immer mal wieder.
    Und zwar hab ein enum vehData, in dem diverse Daten gespeichert werden, das Problem, die Tankfüllung.


    In meinem Hauptscript gibts ne adminfunktion die auch autos spawnt, würde bei denen dann auch gerne den Tank ändern,
    jedoch wurde vehData[vehID][tank]
    in dem filterscript deklrariert.


    Kann ich also irwie eine Variable aus einem Filterscript über das mainscript ändern ?


    schonmal danke ;)

  • Hoffe ich habe dich jetzt richtig verstanden:


    Im Filterscript:

    stock SetVehicleFuelState(vehicleid, state)
    {
    vehData[vehicleid][tank] = state;
    }


    Im Gamemode (Mainscript):

    SetVehicleFuelState(vehicleid, 100); //100 kann auch jede andere Zahl sein, ganz wie du willst.




    BlackLegend

  • hätte gedacht das geht auch ohne zusätzliche funktion,
    aber dann mach ichs hald so.


    in java hätte mans halt mit punktschreibweise gemeint, wollte wissn obs sowas gibt ;)
    also sowas ähnliches....


    aber ich müsste die im funktion im mainscript ja dann mit callremotefunction aufrufen oder ?
    er würde sie ja sonst nich finden...



    Habs jetz so:
    Im Filterscript:

    Code
    stock SetVehicleData(vehicleid, fuel)
    {
        vehData[vehicleid][tank] = fuel;
        vehData[vehicleid][diniId] = -1;
        vehData[vehicleid][firmid] = -1;
        return 1;
    }


    Im Hauptscript:

    Code
    CallRemoteFunction("SetVehicleData", "ii", vehicleid, 1000);


    Funktioniert trotzdem ned....

    4 Mal editiert, zuletzt von Sry4pwn ()

  • Änder mal stock auf public und oben im Script natürlich
    forward SetVehicleData(vehicleid, fuel);


    Dann sollte es funktionieren, wenn nicht schau mal nach, ob du das Filterscript in der Server.cfg eingetragen hast.
    So leicht wie in Java geht das leider nicht, wär auch zu schön^^.


    BlackLegend

  • ja, is mir heute nacht auch gekommen...
    klar, timer funktionieren ja auch nur bei publics, dann sollte das auch nur so funktionieren ...^^


    danke ;)


    ich lad meine fs nicht in der server.cfg,
    da funktionieren sie nicht, wenn man den server restartet, lade sie per cmd in ongamemodeinit ;)