Hallo Leute
Ich steh heut mal wieder echt aufm Schlauch.
Ich bräuchte für mein Programm mehrere Checks für verschiedene Zeitintervalle.
Also möchte ich fähig sein, eine einfache if-Abfrage machen, die EINMAL in 1, 1/2, 1/4, 1/8, etc Sekunde wahr ist.
Mein erster Beispielansatz war nun der Binäre Weg:
if (SDL_GetTicks() & 1024)
aber dadurch wird die Abfrage in einer Sekunde wahr und in der nächsten unwahr. Nicht nur *einmal*, sondern für die *Dauer der ganzen Sekunde*.
Natürlich könnte ich auch einen Timer schreiben, der pro Durchlauf, die Durchlaufzeit addiert, und bei 1000, 500, 250, 125, etc Millisekunden einen Wert auf 1 setzt, doch da ich sowas ziemlich oft einsetzen möchte, würde ich gerne wissen, ob es nicht auch einfacher geht.
Könnte ich eine Abfrage gänzlich ohne Timervariablen (abgesehn von meiner Zeitvariable, die die Dauer der Programmlaufzeit hat, also wie SDL_GetTicks()) lösen, wäre das genial.
Entweder steh ich übelst auf dme Schlauch und die Lösung ist ganz einfach, oder ich stell mir das nur zu einfach vor. :/
Danke schonmal im Vorraus
Christian