Befehl - Statistik (/stats)

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 bräuchte hilfe unzwar ich wollte /Stats einbauen, konnte nur das Adminlevel, das Level, die Fraktion und den Namen als Stats machen..
    Jetzt wollte ich noch das Geld, Führerschein, Motorradschein, etc. alles machen.. aber ich weiß bloß nicht wie.. Kann mir das nicht einer schnell machen
    oder helfen?
    Ich hoffe das mir jemand helfen kann.. :D


    Mfg. Fabi

  • Sollen wir dir helfen ???!!
    Dann poste doch bitte die Zeile


    Sonst kann dir niemand Helfen.

  • Oh tut mir leid völlig vergessen ;)



    hier:


    if(strcmp(cmdtext,"/stats",true)==0)
    {
    new string[128];
    new fraktname[64];
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{fraktname="Zivilist";}
    case 1:{fraktname="Polizei";}
    case 2:{fraktname="FBI";}
    case 3:{fraktname="Bundeswehr";}
    case 4:{fraktname="Rettungsdienst";}
    case 5:{fraktname="Feuerwehr";}
    case 6:{fraktname="Ordnungsamt";}
    case 7:{fraktname="Praesident";}
    case 8:{fraktname="Yakuza";}
    case 9:{fraktname="LCN";}
    case 10:{fraktname="Soldiers";}
    case 11:{fraktname="Triaden";}
    case 12:{fraktname="Grovestreet";}
    case 13:{fraktname="LaHonda";}
    case 14:{fraktname="Vagos";}
    case 15:{fraktname="LaFee";}
    case 16:{fraktname="SF Rifa";}
    case 17:{fraktname="San News";}
    case 18:{fraktname="Hitman";}
    case 19:{fraktname="Terror";}


    }
    //1 reihe
    format(string,sizeof(string),"[Name: %s] [Level: %i] [Adminlevel: %i] [Fraktion: %s] [Geld: %d]",SpielerName(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"Adminlevel"),fraktname),GetPlayerMoney(playerid);
    SendClientMessage(playerid,Farbe_Hellblau,string);
    //2 reihe
    return 1;
    }


    //EDIT: Das mit [Geld: %d] und GetPlayerMoney(playerid); hab ich jetzt geschrieben und getestet.. da steht Geld: 0 obwohl ich 3000$ hatte.. :S

    Einmal editiert, zuletzt von Fabi_x3 ()

  • Tja,
    wenn man logisch nachdenkt ,benutzt man updatebare Code unter OnPlayerUpdate,
    weil ,er muss ja irgentwie aktualisieren ,sprich du hast 20 Dollar und kaufst was für 10 dann hast du dann wieder 10.
    Also GetPlayerMoney unter OnPlayerUpdate...
    Geht auch mit Adminlevel ,benutzt die Variablen .
    Nur bei Adminlevel müsste das nicht unbedingt unter OnPlayerUpdate

  • Du musst es einfach mit /string definieren beispiel:


    string(ifislevel)3


    dann geht es

  • Sinnlos!
    Was soll er dann mit dem string anstellen?
    Man muss ja was mit anfangen können ,heißt man soll ja von etwas was nehmen wie GetPlayerScore oder so etwas!
    Beispiel:
    SendClientMessage(playerid,farbe,"%i",Adminlevel);


  • Ehm danke.. aber ich kapier das als Anfänger nicht. kannst du mir nicht eine Vorlage oderso machen, oder ein Beispiel?
    Wäre sehr nett von dir..


    Mfg.

  • Forbidden kann es doch selbst nicht gib mir am besten TeamViewer daten ich mach es dir ;)

  • @Jamal, nein danke.. ich denke Forbidden hat mehr Erfahrung als du! da du irgendwas mit String labberst, das überhaupt nicht reinpasst.

  • Zum Problem mit dem Geld:
    Nach fraktname hat sich anscheinend eine Klammer eingeschlichen und damit 'format' geschlossen, sodass 'GetPlayerMoney(playerid);' als einzelne Funktion außerhalb von 'format' angesehen wurde. Zudem war nach 'GetPlayerMoney' eine Klammer zu wenig, um auch 'format' wieder zu schließen.


    So sind die Klammern wieder richtig:
    if(strcmp(cmdtext,"/stats",true)==0)
    {
    new string[128];
    new fraktname[64];
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{fraktname="Zivilist";}
    case 1:{fraktname="Polizei";}
    case 2:{fraktname="FBI";}
    case 3:{fraktname="Bundeswehr";}
    case 4:{fraktname="Rettungsdienst";}
    case 5:{fraktname="Feuerwehr";}
    case 6:{fraktname="Ordnungsamt";}
    case 7:{fraktname="Praesident";}
    case 8:{fraktname="Yakuza";}
    case 9:{fraktname="LCN";}
    case 10:{fraktname="Soldiers";}
    case 11:{fraktname="Triaden";}
    case 12:{fraktname="Grovestreet";}
    case 13:{fraktname="LaHonda";}
    case 14:{fraktname="Vagos";}
    case 15:{fraktname="LaFee";}
    case 16:{fraktname="SF Rifa";}
    case 17:{fraktname="San News";}
    case 18:{fraktname="Hitman";}
    case 19:{fraktname="Terror";}


    }
    //1 reihe
    format(string,sizeof(string),"[Name: %s] [Level: %i] [Adminlevel: %i] [Fraktion: %s] [Geld: %d]",SpielerName(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"Adminlevel"),fraktname,GetPlayerMoney(playerid)); // In der Zeile war der Fehler, weshalb 'Geld: 0' angezeigt wurde
    SendClientMessage(playerid,Farbe_Hellblau,string);
    //2 reihe
    return 1;
    }

  • Piranha dankee :) ich werde es mal gleich testen..
    Und ehm.. wie geht das jetzt mit den Scheinen, Job, dies das?


    Mfg.


    //EDIT: Piranha vielen dank :) habs getestet geht jetzt :D
    Jetzt nur noch Jobs, Scheine, etc.. also was zu Reallife gehört.. ( Bei meinem Selfmade ) will es wie ein GF Stats machen ungefähr

  • Hmm,
    Wie gesagt , ich tippe dass du Gf hast.
    Wie soll ich dir das erklären ....
    Es gibt Variablen wie :Führerschein.
    Heißt wenn du /stats schreibst ,muss ja waas passieren mit dem Führerschein.
    Da Führerschein als keine Zahl dargestellt werden soll ,soll es ein Wort sein wie Ja/nein!
    Also wenn du als Befehl "Führerschein [%s]" haben willst ,muss der String noch eingebunden sein ,also beispielsatz:
    SendClientMessage(playerid,farbe,"Füherschein[%s//s=Wort],jetzt muss eine Variable da sein ,die für den Führerschein ist);
    Es ist wirklich viel zu oberflächlich ,aber so um den Dreh muss es aussehen

  • Nein hast falsch gedacht, ist mein erster Selfmade mit knapp. 8k Zeilen.
    Und ehm, also mit Führerschein wie meinst du mit String eingebunden?

  • Man hat ein string der für dein Führerschein steht.
    Ohne String würde er ja nicht abfragen können ,was der string aufsich hat ,sogesagt ist ja Führerschein eine Variable ,und der string fragt es ab, mehr ist nichts zusagen
    //edit
    string fragt Variable ab
    Variable ist Füherschein,
    Also new Führschein[MAX_PLAYERS]; beispielsweise

  • Kannst du nicht eben per Teamviewer kommen und mal nachgucken?
    Weil bin echt grad verpeilt :S oder kann mir das einer genauer beschreiben?


    Mfg.

    Einmal editiert, zuletzt von Fabi_x3 ()