Rennen Bestzeit Abfrage

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 möchte gerne machen, dass es Bestzeiten gibt,
    jedoch wird keine neue Zeit gespeichert.


    Wenn eine neue Strecke erstellt wird, steht der Timer auf 60:60, sprich
    60 Minuten und 60 Sekunden. Dann klappt die neue Bestzeit.


    Soll jedoch wieder eine neue Bestzeit aufgestellt werden, geht es nicht.
    Hier mal die Abfrage:
    rechen = die aktuelle Anzahl der Minuten
    Race[Bestzeit1] = die Anzahl der Minuten der alten Bestzeit

    rechnung = die aktuelle Anzahl der Sekunden

    Race[Bestzeit2] = die Anzahl der Sekunden der alten Bestzeit


    if(rechnen < Race[Bestzeit1] || rechnen == Race[Bestzeit1] && rechnung < Race[Bestzeit1])



    MfG

  • Sekunden, Minuten, Stunden etc. extra aufzuteilen ist eine Sünde! Einfach eine kleine Zeiteinheit nehmen und in Sekunden, Minuten, Stunden etc. umrechnen. Ich würde einfach mit GetTickCount arbeiten.


    Code
    new startzeit, bestzeit;
    
    
    // bestzeit laden, etc.


    Wenn das Rennen beginnt:


    Code
    startzeit = GetTickCount();


    Wenn das Rennen endet:


    Code
    new zeitdiff = GetTickCount() - startzeit;
    if (zeitdiff < bestzeit)
    {
        bestzeit = zeitdiff;
        // bestzeit speichern, etc.
    }


    Wenn du willst kannst du dem Spieler noch die bereits verstrichene Zeit (= GetTickCount() - startzeit) anzeigen.
    GetTickCount gibt übrigens die Laufzeit des Servers in ms an.

  • Ja hab das Problem schon gefunden
    Es war hinten ein Schreibfehler, es wurden die Minuten anstatt die Sekunden abgefragt, sprich:


    Falsch:
    if(rechnen < Race[Bestzeit1] || rechnen == Race[Bestzeit1] && rechnung < Race[Bestzeit1])


    Richtig:
    if(rechnen < Race[Bestzeit1] || rechnen == Race[Bestzeit1] && rechnung < Race[Bestzeit2])


    Trotzdem danke :D