Dini +1

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
  • Also dini? Mhh du meinst nicht mit PVar?


    dini_IntSet(String, "Variable", dini_Int(String, "Variable") +1);


    Und PVar:
    SetPVarInt(playerid,"Variable",GetPVarInt(playerid,"Variable")+1);

  • Ein Lager? Wie meinst du das genau? Für was? Mehr infos :)

  • Will einen Zombie Server machen. die letzten Überlebenden wohnen in einer kleinen Stadt , diese hat ein Lager wo sich jeder etwas rausnehmen kann (Essen, Medikamente , Waffen)


    wenn jmd etwas rausnimmt dann ist im Lager -1.

  • Möchtest du das mit einen Dialog oder Command machen?
    Benutzt du OCMD? (wenn nein, was benutzt du?)

  • ja ich benutze OCMD und will das mit einem Command machen.


    //edit: habs geschafft ! ich muss es jetzt nurnoch schaffen das wenn ich den Befehl ausführe das Lager .1 wird.

    Einmal editiert, zuletzt von ungabunga ()

  • Ich würde es so ungf. machen:


    UNGETESTET

    ocmd:nehmen(playerid,params[])
    {
    new Gegenstand[32],Lager[64],Menge,string[128];
    if(sscanf(params,"si",Gegenstand,Menge)) return SendClientMessage(playerid,COLOR_GREY,"Befehl: /nehmen [Waffen/Medikit][Menge]");
    {
    if(strcmp(Gegenstand,"Medikit",true)==0)
    {
    format(Lager,sizeof(Lager), "/Lager.txt");
    if(dini_Int(Lager, "Medikamente") <= Menge) return SendClientMessage(playerid, COLOR_ROT, "Lager hat nicht so viele Medikamente");
    dini_IntSet(Lager, "Medikamente", dini_Int(Lager, "Medikamente") -Menge);
    SetPVarInt(playerid,"Medikamente",GetPVarInt(playerid,"Medikamente")+Menge);
    format(string,sizeof(string),"Du hast %d Medikamente aus dem Lager genommen!",Menge);
    SendClientMessage(playerid,COLOR_GREY,string);
    return 1;
    }
    }
    return 1;
    }

  • Mit:


    dini_Int(Lager, "Medikamente")

    Also:


    ocmd:nehmen(playerid,params[])
    {
    new Gegenstand[32],Lager[64],Menge,string[128];
    if(sscanf(params,"si",Gegenstand,Menge)) return SendClientMessage(playerid,COLOR_GREY,"Befehl: /nehmen [Waffen/Medikit][Menge]");
    {
    if(strcmp(Gegenstand,"Medikit",true)==0)
    {
    format(Lager,sizeof(Lager), "/Lager.txt");
    if(dini_Int(Lager, "Medikamente") <= Menge) return SendClientMessage(playerid, COLOR_ROT, "Lager hat nicht so viele Medikamente");
    dini_IntSet(Lager, "Medikamente", dini_Int(Lager, "Medikamente") -Menge);
    SetPVarInt(playerid,"Medikamente",GetPVarInt(playerid,"Medikamente")+Menge);
    format(string,sizeof(string),"Du hast %d Medikamente aus dem Lager genommen! Im Lager: %d Medikamente!",Menge,dini_Int(Lager, "Medikamente"));
    SendClientMessage(playerid,COLOR_GREY,string);
    return 1;
    }
    }
    return 1;
    }

  • könnteste das nochma mit Essen und Waffen machen ?


    Also das wenn man /nehmen Essen 1 macht man ein Essen bekommt.


    und mit /nehmen Deagle eine deagle mit 50 mun. bekommt


    wäre nett weil ich das nicht so richtig hinbekomme.

  • Jaa das könnte ich, aber warum machst du das nicht? :)
    Schau dir MrMonat-Videos an und wirst das selber hinkriegen :D

  • Dann poste doch mal was du grad hast bzw. bei was du Problemen hast :)

  • Das mit Fraktionen (Sanitäter) erklärt MrMonat sehr genau. Das mit der Waffe eig. auch. Und das mit Essen geben, hab ich dir ein Beispiel gescriptet, schau dir das Script an :) ( siehe oben das Script)


    Außerdem findest du sehr viele Funktionen mit natürlich eine erklärung auf SA:MP Wiki!
    -> Link Click !


    Spieler Waffen geben:


    Uploaded with ImageShack.us