Simple Dini Abfrage

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


    vor ein paar Monate hatte ich ein recht gutes Skript und hab den Server nach einiger Zeit wieder geschlossen aufgrund meiner schulischen Leistung etc.
    Jetzt habe ich wieder Zeit und fange von neuem an.
    Jedoch habe ich etwas vergessen und zwar will ich Sachen so simpel wie es nur geht abfragen.


    zb. Hat der Spieler sich im Pickup xy den Führerschein gekauft, schaltet es in seiner eigenen Dini auf 1.
    danach irgendwann die Abfrage ob der Spieler den Führerschein auf 1 stehen hat.
    Ganz simpel doch ich hab vollkommen vergessen wie es geht.
    Das selbe kann man für Befehle machen, ob der Player Leader ist also (1)
    kann diese und diese Befehle ausführen.


    Ich meine das ich das damals in Kombination mit dem gTeam oder sowas gemacht hab.
    Naja vielen dank im vorraus für eure hilfe.
    :love:



    Sorry für die Rechtschreibfehler.
    Ich musste alles relativ schnell verfassen.


  • enum pInfo
    {
    pTest,
    }
    new PlayerInfo[MAX_PLAYERS][pInfo];


    Mit Dini_Int nun beim Login die Daten in die Enum Struktur laden und beim Disconnect mit Dini_IntSet wieder Speichern.


    PS: Dini ist scheiße öffnet für jede Aktion die Datei erneut das ist nen sehr großer Resourcen Aufwand nimm lieber ein Cached Based System.


    LG RFT

    RFT


  • PS: Dini ist scheiße öffnet für jede Aktion die Datei erneut das ist nen sehr großer Resourcen Aufwand nimm lieber ein Cached Based System.

    Klingt vllt komisch weil ich nicht genau weiß was du damit meinst (vllt mysql)
    naja jetzt darfst du mir das erklären. :D
    ich kenn nur noch die alte leier und es ist schon gut ein jahr her seit dem ich c++ benutzt habe und kenne nur noch meine alte Dini Methode. :wacko:

  • Mach es doch so erstelle ein stock SpielerSpeichern


    public OnPlayerPickUpPickup(playerid, pickupid)//wenn der Spieler das pickup aufnimmt dann
    {
    if(pickupid==DeinPickup)
    {
    SetPVarInt(playerid,"Führerschein",1);
    SendClientMessage(playerid,WEISS,"Du bekommst deinen Führerschein");
    SpielerSpeichern(playerid);
    }
    }


    stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[64], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Fahrzeugbrief,sizeof(Fahrzeugbrief),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Führerschein",GetPVarInt(playerid,"Führerschein"));
    }


    stock SpielerLaden(playerid)
    {
    new Spielerdatei[64], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPVarInt(playerid,"Führerschein",dini_Int(Spielerdatei,"Führerschein"));
    }


    stock SpielerLaden(playerid)
    {
    new Spielerdatei[64], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);


    SetPVarInt(playerid,"Führerschein",dini_Int(Spielerdatei,"Führerschein"));
    }


    //und dann benutz doch
    public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
    {
    if(GetPVarInt(playerid,"Führerschein")==0)
    {
    SendClientMessage(playerid,Rot"Du hast keinen Führerschein");
    RemovePlayerFromVehicle(playerid);
    }
    else
    {
    SendClientMessage(playerid,Rot"Du hast einen Führerschein du darfst also fahren");//oder einfach garnix
    }





    ICH BIN NEU IM FORUM UND VERSTEHE DIESE FORMATIERUNG NICHT.... iwie ändert die sich immer


    sry

    einer von den kleinen Fischen?
    Solche Kenne ich nicht !!!

    2 Mal editiert, zuletzt von CyZec0ne ()