Ja ist es, allerdings kann es ist dies sehr unsicher, da es nach einem Neustart immer mal passieren kann, dass ein Server abstürzt.
Überprüfe lediglich die Uhrzeit mit
gettime(stunde,minute,sekunde);
Je kleiner der Zeitinterval des Timers, desto genauer, allerdings solltest du sicherstellen, dass es nur einmal passiert, dass der Server neustarte, z.B. mit Hilfe einer globalen Variablen. Um zu jeder vollen Stunde etwas aufzurufen, kannst du genauso eine lobale Variable verwenden und einen Timer, der jede Minute ausgeführt wird:
// oben
new gHour;
//im Timer
new
hour,
minute,
second;
gettime(hour, minute, second);
if(hour > gHour)
{
// ... wird zur vollen Stunde nur einmal aufgerufen, da zuerst die lokale Variable erhöht wird, danach erst die globale
}
gHour = hour;
[...]
Es gibt aber mehrere Wege es umzusetzen, war nur ein kleines Beispiel, da ich nicht genau wusste, wann der Timer genau aufgerufen werden soll... Genau zur vollen Stunde, hauptsache um 2 oder wie auch immer