RFTs A_Vars Version 0.2

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
  • Moin Leute,


    hier release ich mein A_Vars System.
    Es funktioniert genauso wie das PVar System von SA-MP man kann auf einem Var jeweils einen Integer und einen String und einen Float speichern.


    Die Funktionen dazu sind:



    SetVarString(Name[], String[]);
    GetVarString(Name[]);
    SetVarInt(Name[], Int);
    GetVarInt(Name[]);
    SetVarFloat(Name[], Float);
    GetVarFloat(Name[]);



    Euer Script wird damit auch viel schöner aussehen anstatt die nervigen Integer oder Strings oben stehen zu haben.


    Download Version 0.2:
    pastebin
    Sendsapce


    MFG RFT

    RFT

  • Hallo,
    wozu das Rad neu erfinden, wenn es diese Funktionen schon nativ in der API gibt?
    http://wiki.sa-mp.com/wiki/Setproperty
    Dein Script führt auch zu Performanceeinbrüchen, wenn viele globale Variablen angelegt werden und die gesuchte Variable
    am Ende des ServerVars Arrays ist. Bei 1000 Variablen wird dann erstmal 1000 mal strcmp ausgeführt, bevor die gesuchte Variable letztendlich ausgegeben wird (angenommen die gesuchte Variable ist die 1000ste im blödesten Fall)
    Dazu gibt es auch Techniken, um das zu vermeiden. Statt strcmp könntest du beispielsweise den Hash bilden und dann die Zahlen vergleichen.. usw.
    Für Anfänger solltest du lieber eine Wrapper der setproperty Funktionen erstellen mit defines.
    Diese Arbeit hat allerdings schon Dracoblue geleistet:
    http://dracoblue.net/download/dprop-11/39/
    Außerdem werden die Variablen nicht zwischen verschiedenen filterscripts und dem Gamemode synchron sein. Dazu kann jedoch das Mastersystem von Y_Less behilflich sein:
    http://forum.sa-mp.com/showpost.php?p=850937&postcount=364

    Zitat

    Euer Script wird damit auch viel schöner aussehen anstatt die nervigen Integer oder Strings oben stehen zu haben.


    Damit ergibt sich allerdings ein weiterer Nachteil. Wenn man sich vertippt und bei der Funktion den falschen Variablennamen benutzt, wirst du diesen fatalen Fehler nicht mehr bemerken.
    Bei einer normalen Variable gibst dann natürlich ne Compiler Meldung.
    Edit: Opera hat leider alle Zeilenumbrüche verschlungen, sry.

    ICQ Scripting - Support 495961653
    Montags-Freitags ab 15 Uhr

  • Moin,


    es gibt nur 100 Slots also wieso 1000 Globale Variabeln ?
    Dieses System gillt nur um das Script etwas schöner zu machen und für Leute die es satt haben immer NEw blub; oben einzutragen.


    //edit und wieso sollte die Schleife 1000 mal ausgeführt werden?
    befindet sich der Name an erster Stelle wird die Schleife nur 1 mal ausgeführt.


    MFG RFT


    MFG RFT

    RFT