[S]Respekt Tutorial

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
  • Guten Morgen :).


    Könnte jemand von euch mir erklären wie ich ein Level/Respekt System erstelle. Entweder Postet er es hier oder könnt jemand ein Tutorial dazu machen?!? Ich arbeite mit Dini.


    Ich hoffe auf Antworten :)

  • Mit den vielen deutlichen Infos ist es kein Wunder das noch kein Code gepostet wurde.
    Bitte mache nähere Angaben du willst es ja wohl nicht im GF Style haben oder täusche ich mich da ?


    LG RFT

    RFT

  • drück dich besser aus,
    so versteht das hier keiner....
    und somit können wir dir net helfen!


    MfG

  • 1. Ich arbeite mit dini_IntSet


    2. Ich will erst mal das so ähnlich haben halt das ich die Grundfunktion habe, sodass ich alles umscripten kann so wie ich es haben will :) also dass man 3 Respekt braucht um 1 level zu kommen. Als Beispiel :love:

  • ist im grunde eh ganz einfach , immer zuerst aus probieren bevor fragen :)


    aber hier:


    das brauchst mal unter den grundeigenschaften:


    in meinem Falle unter stock LoadAccount:


    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    SetPVarInt(playerid,"Respektpunkte",dini_Int(Spielerdatei,"Respektpunkte"));


    und unter SpielerSpeichern:


    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Respektpunkte",GetPVarInt(playerid,"Respektpunkte"));


    dann einen /buylevel befehl z.B. so:

    if(strcmp(cmdtext,"/buylevel",true)==0)
    {
    new Level = GetPlayerScore(playerid);
    new string[128];
    if(GetPVarInt(playerid,"Respektpunkte")==Level*3)
    {
    if(GetPlayerMoney(playerid) > Level*20000)
    {
    SetPlayerScore(playerid,Level + 1);
    format(string,sizeof(string),"Du hast dir Level %i gekauft!",GetPlayerScore(playerid));
    SendClientMessage(playerid,GRAU,string);
    GivePlayerMoney(playerid,- Level*20000);
    }
    else if(GetPlayerMoney(playerid) < Level*20000)
    {
    format(string,sizeof(string),"Du hast nicht genügend Geld dabei! (%i$)",Level*20000);
    SendClientMessage(playerid,GRAU,string);
    }
    }
    else
    {
    format(string,sizeof(string),"Du hast nicht genügend Respektpunkte! (%i Respektpunkte)",Level*3);
    SendClientMessage(playerid,GRAU,string);
    }
    return 1;
    }


    hab ich was vergessen? geht etwas nicht?


    MfG

  • Doch hast du der Spieler erhält keine Respekt Punkte.
    Da müsste man den Thread Ersteller aber noch fragen ob er es immer zu ner ganzen Online Stunde haben will.
    Oder ob alle zur gleichen Zeit nen Payday erhalten sollen.


    LG RFT

    RFT

  • aso ja,


    das gehört aber zum payday kommt drauf an wie er es will :)


    entweder immer zur vollen stunde oder immer nach 60min...


    also ich hab ihn immer zur vollen stunde das sieht so aus:


    erstmal nen timer:


    SetTimer("Payday",1000,1);


    und dann halt den public erstellen:


    forward Payday();


    public Payday()
    {
    new hour, minute, second;
    new string[128];
    new playerid;
    gettime(hour,minute,second);
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(minute == 01 && second == 10)
    {
    new geldzufall = random (750) + 1250;
    format(string,sizeof(string),"Payday! Es ist %i Uhr.",hour);
    SendClientMessage(i,ORANGE,string);
    format(string,sizeof(string),"Lohn: %i $",geldzufall);
    SendClientMessage(i,GRAU,string);
    GivePlayerMoney(i,geldzufall);
    SetPVarInt(i,"Respektpunkte",GetPVarInt(playerid,"Respektpunkte") + 1);
    }
    }
    return 1;
    }


    MfG


    /edit das würde bewirken:


    zur vollen stunde bekommt er einen zufälligen payday betrag -
    das erhält er auf die hand diesen geldzufall, er bekommt eine nachricht
    wv. geld er erhalten hat beim PD und wv. Uhr es gerade ist !

  • Bei dem Code /buylevel kommen paar warnings


    was bedeutet tag mismatch ?(

  • tagmissmatch = Eine fehler in der zeile zb. SendClentMessage Dabei heisst es SendClientMessage