Zahltag Problem

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


    und zwar habe ich da ein kleines Problem. Es geht um mein Abrechnungssystem, was alle 60 Spielminuten für jeden Spieler einzeln ist.


    Jeder Spieler bekommt dies auch aber jedoch nicht nach 60 Minuten sondern immer unterschiedlich.


    Der eine bekommt es nach 10 Minuten, der andere nach 20 Minuten oder auch jemand nach 60 Minuten.


    Es soll aber so ein, das jeder Spieler nach 60 Minuten Spielzeit seine Abrechnung bekommt.



    Kann da jemand vielleicht helfen ?


    Hier mal der Code



    forward Abrechnung_Ueberpruefung(i);


    // Code aus meinem Loginsystem
    if(mysql_CheckAccount(playerid) == 1)
    {
    new Loginnachricht[200];
    GetPlayerName(playerid,pname,sizeof(pname));
    format(Loginnachricht,sizeof(Loginnachricht),"Willkommen zurueck %s.\n\nDu kannst dich jetzt einloggen.\nGebe nun bitte dein Passwort ein.\n\n",pname);
    ShowPlayerDialog(playerid,DIALOG_Login,DIALOG_STYLE_PASSWORD,"{FF0000}Loginbereich",Loginnachricht,"Einloggen","Abbrechen");
    SetTimerEx("Abrechnung_Ueberpruefung",60000,1,"i",playerid);
    return 1;
    }


    else if(mysql_CheckAccount(playerid) == 0)
    {
    new RegistrationsNachricht[200];
    GetPlayerName(playerid,pname,sizeof(pname));
    format(RegistrationsNachricht,sizeof(RegistrationsNachricht),"Herzlich Willkommen %s.\n\nDu bist neu hier, daher musst du dich erst registrieren.\n\nGebe nun bitte dein gewuenschtes Passwort ein.\n\n",pname);
    ShowPlayerDialog(playerid,DIALOG_Registrieren,DIALOG_STYLE_PASSWORD,"{FF0000}Registrierungsformular",RegistrationsNachricht,"Registrieren", "Abbrechen");
    SetTimerEx("Abrechnung_Ueberpruefung",60000,1,"i",playerid);

    public Abrechnung_Ueberpruefung(i)
    {
    if(Spielerdaten[i][DB_SpielzeitseitAbrechnung] < 60)
    Spielerdaten[i][DB_SpielzeitseitAbrechnung] += 1;

    if(Spielerdaten[i][DB_SpielzeitseitAbrechnung] == 60)
    {
    Spielerdaten[playerid][DB_Abrechnung] = 1;
    TextDrawShowForPlayer(playerid,Abrechnung_Hintergrund[playerid]);
    TextDrawShowForPlayer(playerid,Abrechnung_Schrift[playerid]);
    }
    return 1;
    }



    // und das ist der Befehl für den Spieler dann
    if(strcmp(strget(cmdtext,0), "/abrechnung", true) == 0)
    {
    if(Spielerdaten[playerid][DB_Abrechnung] == 1)
    {
    TextDrawHideForPlayer(playerid,Geldanzeige_Geld_Euro[playerid]);
    TextDrawHideForPlayer(playerid,Geldanzeige_Geld_Dollar[playerid]);


    GehaltdesBerufes(playerid);
    GehaltderFraktion(playerid);


    new a = Spielerdaten[playerid][DB_Fraktionsgehalt];
    new b = Spielerdaten[playerid][DB_Berufgehalt];
    new c;
    new d;
    new e;
    new f; // = Spielerdaten[playerid][DB_Premiumbonus];


    new Abrechnungs_String1[512];
    new Abrechnungs_String2[512];
    new Abrechnungs_Stringgesamt[1024];


    format(Abrechnungs_String1,sizeof(Abrechnungs_String1),"{FF9400}============================== E I N N A H M E N ==============================\n\n{FF9400}Fraktionsgehalt {FFFFFF}%d €\n{FF9400}Berufsgehalt {FFFFFF}%d €\n\n{FF9400}Haus {FFFFFF}%d €\n{FF9400}Business {FFFFFF}%d €\n{FF9400}Firma {FFFFFF}%d €\n",a,b,c,d,e);
    format(Abrechnungs_String2,sizeof(Abrechnungs_String2),"{FF9400}Premiumbonus {FFFFFF}%d €\n\n{FF9400}===========================================================================",f);


    format(Abrechnungs_Stringgesamt,sizeof(Abrechnungs_Stringgesamt),"%s\n%s",Abrechnungs_String1,Abrechnungs_String2);
    ShowPlayerDialog(playerid,DIALOG_Abrechnung_Einnahmen,DIALOG_STYLE_MSGBOX," ",Abrechnungs_Stringgesamt,"Ausgaben","");


    TextDrawShowForPlayer(playerid,Geldanzeige_Geld_Euro[playerid]);
    TextDrawShowForPlayer(playerid,Geldanzeige_Geld_Dollar[playerid]);


    TextDrawHideForPlayer(playerid,Abrechnung_Hintergrund[playerid]);
    TextDrawHideForPlayer(playerid,Abrechnung_Schrift[playerid]);
    Spielerdaten[playerid][DB_SpielzeitseitAbrechnung] = 0;
    Spielerdaten[playerid][DB_Abrechnung] = 0;
    }
    else if(Spielerdaten[playerid][DB_Abrechnung] == 0)
    {
    SendClientMessage(playerid,FARBE_Rot,"Du hast bisher noch keine 60 Minuten gespielt.");
    }
    return 1;
    }

  • Aha cHaOsFaTz :) I´am Score..
    ich könnte dir da mal was basteln ;)