Zeit in Minuten ausgeben

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
  • Hey Leute,


    ich möchte mit diesem Befehl die Knastzeit eines Spielers abfragen.


    ocmd:test3(playerid,params[])
    {
    new pID;
    new string[200];
    new name[32];
    new zeit;
    zeit = KnastZeit[pID];
    GetPlayerName(pID,name,sizeof(name));
    if(sscanf(params,"u",pID))return SCM(playerid, ROT,"Benutze /haftstrafe [ID]");
    //if(playerid == pID) return 1;
    format(string,sizeof(string),"Name: %s\n\nVerbl. Haftzeit: %i Minuten",name,zeit);
    ShowPlayerDialog(playerid,DIALOG_HAFTSTRAFE1,DIALOG_STYLE_MSGBOX,"Haftstrafe",string,"O.K.","");
    return 1;
    }


    Problem ist, dass die verbleibende Knastzeit beim Spieler in dem Format "00:00" (MinuteMinute:Sekunde:Sekunde) als Textdraw abläuft.
    Wenn der Spieler dann also nur noch 30 Sekunden sitzen muss "00:30" und ich den Befehl eingebe, stehen dort 30 Minuten, da er die 00:30 als Minuten erkennt :(


    Wie kann ich es machen, dass er erkennt wie viel Minutne und Sekunden er sind? :huh:

  • Ich hätte es so machen müssen (in diesem Format):


    if(KnastZeit[pID] > 59)
    {
    minutes = floatround(KnastZeit[pID]/60);
    seconds = floatround(KnastZeit[pID] - minutes*60);
    if(seconds>9)format(kstr,sizeof(kstr),"%d:%d",minutes,seconds);
    else format(kstr,sizeof(kstr),"%d:0%d",minutes,seconds);
    }
    else
    {
    seconds = floatround(KnastZeit[pID]);
    if(seconds>9)format(kstr,sizeof(kstr),"0:%d",seconds);


    Habe es nun selber herausgefundne ._.