Timestamp zu Restzeit von Punkt X verarbeiten

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
  • Mahlzeit,


    ich habe eine Mutefunktion erarbeitet, die über MySQL und Timestamp läuft. Nun habe ich folgende Situtation (es ist nur ein Beispiel):


    Es wurde eine Person für 500 Minuten (30000 Sekunden = 8,3~ Stunden) gemuted


    Timestamp, als er gemuted wurde: 1335060000 (4 Uhr morgens)
    Timestamp, wenn er entmuted wird:1335090000 (12:20 Uhr mittags)


    Nun ist es 5 Uhr morgens. Der Spieler guckt mit dem Befehl /checkmute nach, wie lange er noch gemuted ist. Nun soll eine Meldung erscheinen, die folgend lautet: "Du bist noch 7 Stunden, 20 Minuten und 0 Sekunden gemuted."


    Nun ist mein Problem. Ich habe keine Ahnung, wie ich diese Meldung erstellen soll. Ich hoffe jemand von euch kann mir helfen!


    Ich bedanke mich jetzt schonmal für eure Hilfe.


    Regards, ThomasTailor93

  • Ich meine das habe ich immer so gelöst.
    Ich weiß aber nicht, ob das verbuggt war.
    Ist schon älter.


    Bei MySQL kann man das auch anders lösen :thumbup:
    Möchte aber in dem Fall nicht mein Script von meinem aktuellen Server preisgeben.


    Deshalb hier das ältere "Non-MySQL" :|


    new str[128],
    Time = GetPVarInt(playerid, "pJailTime"),
    Hours = Time / 3600,
    Minutes = (Time - Hours * 3600) / 60,
    Seconds = Time - Minutes * 60 - Hours * 3600;
    format(str, sizeof str, "Du bist noch für %i Stunden, %i Minuten und %i Sekunden eingesperrt!", Hours, Minutes, Seconds);


    Vielleicht hat jemand anderes noch eine Möglichkeit, die er preisgeben will

    Miete mich (nicht) :love: