Probleme mit Zinsen

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
  • Hi


    Ich hab ein problem mit meinem Zins-system. Irgendwie stimmt da gewaltig etwas nicht, irgendwie mit UserID 49 und 50, die danach eine riesen Summe an Geld hatten.


    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    SpielerUpdate(i);
    }
    for(new i = 0; i < 300; i++)
    {
    new zinsen, result[20], value[200];

    format(value, sizeof(value), "SELECT * FROM `User` WHERE `UserID`='%d'",i);
    samp_mysql_query(value);
    samp_mysql_store_result();


    if (samp_mysql_num_rows() != 0)
    {
    samp_mysql_fetch_row(value);
    samp_mysql_get_field("BankGeld", result); zinsen = strval(result);

    format(value,sizeof(value),"UPDATE `User` SET `BankGeld`= '%d' WHERE `UserID`='%d'", floatround(zinsen*1.05),i);
    samp_mysql_query(value);
    }
    }
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    new pname2[16], value[100], result[20];
    GetPlayerName(i, pname2, sizeof(pname2));
    format(value,sizeof(value),"SELECT * FROM `User` WHERE `Name` = '%s'",pname2);
    samp_mysql_query(value);
    samp_mysql_store_result();
    samp_mysql_fetch_row(value);

    samp_mysql_get_field("BankGeld", result); PlayerInfo[i][BankGeld] = strval(result);
    }
    }


    Könnt Ihr ein Fehler entdecken?


    MFG, Robdeflop®

  • Hey Rob,
    Ich vermute das es an floatround liegt.
    Ich habe es noch nie benutzt ^^ deshalb habe ich es im SA-MP wiki eingegeben.
    Da stand das man noch rundungsarten angeben kann zb:
    floatround(zinsen*1.05,floatround_round);
    Das war direckt die erste es kann natürlich sein,
    dass wenn man keine eingibt, das dann automatisch
    die erste kommt.


    Wie gesagt hab das noch nie benutzt ^^ versuchs :D.


    Seite im Wiki
    Rundungsarten



    MfG


    Innovativ & Professionell - Mein Blog





    "Define yourself by your deeds."

  • Zitat

    49 und 50


    vieleicht war da schon soviel Geld drauf, dass es durch die zinsen noch viel mehr wurde?
    Ich würde dir empfehlen es nochmal zu testen ^^.
    Auf einer anderen Datenbank, und wo alle exackt das gleiche Geld haben.


    MfG


    Innovativ & Professionell - Mein Blog





    "Define yourself by your deeds."

  • Hi


    Nein, SpielerUpdate wird immer bei einer Aktion aufgerufen, z.B. wenn sich etwas wichtiges der Daten eines Spielers verändert. Und ich hab es ja extra so gescriptet dass die Spieler die IG sind auch Zinsen bekommen, was aber iwie trotzdem nicht geht oO


    MFG, Robdeflop®