Variablen aus Filterscript nutzen

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
  • Hallo,
    ich habe ein Filterscript gebastelt welches verschiedene Dinge wie ein Login-System integriert. Das Filterscript soll vom normalen GM getrennt sein, da dort wichtige Funktionen bereit gestellt werden, wie z.B. ein allgemeines Ranking-System usw. Wie lässt sich das also realisieren, dass die Variablen für Spieler also z.B. PlayerInfo[playerid][loggedIn] in dem GM genutzt werden können? Dies ist wichtig für mich.


    Mfg


    //Edit:
    Außerdem würde ich gerne wissen, wie man Define's also z.B. Farben im GM verwenden kann, wenn diese im Filterscript definiert wurden. Oder lässt sich sowas nur per Include realisieren?

  • // Per-player variable system (PVars)
    native SetPVarInt(playerid, varname[], int_value);
    native GetPVarInt(playerid, varname[]);
    native SetPVarString(playerid, varname[], string_value[]);
    native GetPVarString(playerid, varname[], string_return[], len);
    native SetPVarFloat(playerid, varname[], Float:float_value);
    native Float:GetPVarFloat(playerid, varname[]);
    native DeletePVar(playerid, varname[]);

    Auf PVars kannst du von jedem Script auf zugreifen.Gibt zu PVars auch irgendwo ein Tutorial im Forum.


    Zitat

    //Edit:
    Außerdem würde ich gerne wissen, wie man Define's also z.B. Farben im GM verwenden kann, wenn diese im Filterscript definiert wurden. Oder lässt sich sowas nur per Include realisieren?


    Nee,das geht nicht.Das liegt allein schon daran, wie defines verarbeitet werden beim kompilieren.


    // -- bla.pwn
    #define DEFINE_TEST 5
    // code
    new var = DEFINE_TEST;
    // -- bla.amx
    // code
    new var = 5;
    Der Compiler fügt an jede Stelle im Code wo DEFINE_TEST steht eine 5 ein.
    Es passiert ja nichts anderes mit den ganzen COLOR Codes die du wahrscheinlich auch hast.
    http://wiki.sa-mp.com/wiki/Keywords:Directives#.23define

  • Kannst du doch ganz leicht selber nachprüfen.
    FS werden vor dem GM geladen.


    Da du sowieso dynamisch SetPVar verwenden kannst,kannst du sowieso jederzeit einen neuen Wert festlegen. Ist also egal ob es vor oder nach dem GM geladen wird. Loggt der Spieler sich ein, setzt du die PVar auf true ( Eingeloggt oder wie du es hast ) , kannst dann zu jedem Zeitpunkt im GM abfragen ob dieser PVar Wert true ist.