PayDay Problem - Spieler bekommen keine Respektpunkte

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 arbeite derzeit am PayDay System. Dieser läuft wie bei anderen Servern ebenfalls immer 60min.
    Nun wollte ich, dass die Spieler Respektpunkte bekommen. Pro PayDay 1 Respektpunkt. Allerdings erhält man diesen nicht.


    Code:



    Ich denke mal mir fehlt irgendeine Funktion. Doch ich komme leider nicht mehr weiter.


    Mit freundlichen Grüßen

  • So also ich habe nun folgende Funktion für die Respektpunkte



    und


    Code
    stock GetPlayerMaxExp(playerid)
    {
    	new NextLevel = Spieler[playerid][pLevel] +1;
    	new MaxRespekt = NextLevel*LEVEL_MULTIPLIER;
    	return MaxRespekt;


    Es funktioniert aber nicht.

  • Du musst dem Spieler die Respektpunkte addieren.
    Wie Jeffry das oben schon gemacht hat, einfach immer einen RespektPunkt drauf addieren, und fertig ;)
    Dann, wenn nötig, kannst du ja noch die Differenz zwischen den aktuellen Punkten und den benötigten Punkten ausrechnen.

  • Mach es so:
    Du speicherst die Minuten in deiner Datenbank.
    Setzt einen Timer der jede 60 Sekunden die Minuten um eins addiert und prüft ob es 60 Minuten sind. Wenn ja, setze die Minuten auf wieder auf 0 und rufe die Payday Funktion auf. In dieser Funktion gibst du dem Spieler immer +1 Respektpunkt und prüfst ob bspw. sein Level*3=Respektpunkte sind. Wenn ja, setzt du die Respektpunkte auf 0 und addieret das Level um 1.

  • Also ich habe es nun so:


    Code
    new string[128];
    	Spieler[playerid][pPayDay] ++;
    	Spieler[playerid][pLevel] ++;
    	if(Spieler[playerid][pPayDay] >= 3600)


    Meinst du es so Jeffry?
    Wenn ich das aber so habe, bekomme ich jede Sekunde ein Level.


    @Azcaq


    Ich habe es ja bereits so ähnlich. Mit den Minuten etc. funktioniert alles. Nur wollen die Respektpunkte nicht.

  • Nein.


    stock PayDay(playerid)
    {
    new string[128];
    Spieler[playerid][pPayDay] ++;
    if(Spieler[playerid][pPayDay] >= 3600)
    {
    new Lohn;
    new steuerGeld;
    new fraktGehalt;
    Spieler[playerid][pPayDay] = 1;
    //==== H I E R ====== !!!!
    Spieler[playerid][pLevel] ++;
    //==== H I E R ====== !!!!
    switch(Spieler[playerid][pFraktion])
    {

  • Ja, da steht ja auch Level:
    Spieler[playerid][pLevel] ++;


    Wenn du Respektpunkte vergeben willst muss es anstatt pLevel eben pRespekt oder pRespektPunkte heißen, oder sonstwas, ich weiß ja nicht wie deine Variable heißt. Das musst du schon selbst wissen. ;)