J'ai des doutes que cela marche exactement comme tu le veux la... En plus tu t'es sacrement complique la vie en plus d'utilser un truc faux
D'abord GetTimeMinute ne te ramenera jamais 60 a moins que tu ais defini que pour le module 1 heure IRL = 1 heure InGame.
De base une 1 InGame = 2 min IRL.
GetTimeSeconde te ramene des vrais seconde Irl, 1 minute InGame est aussi une vrai minute. La seule chose c'est que 1 heure inGame est compose d'un nombre de minute defini au niveau du module et non pas a 60 min (par defaut c'est 2). Mais 1 minute InGame = 1 minute IRL.
Pas sur d'etre clair là
Mais bon a priori vous vous compliquez la vie pour rien
Si vous voulez rester a 0h0, il suffit de le forcer à 0h0 tout le temps
If (LETEMPSPASSE)
{
SetTime(0, 0, 0, 0);
}
au mieux si vous voulez pas le faire toutes les 6 s (c-a-d sur le OHB du module) vous rajoutez un timer.
Genre à la place de mettre LETEMSPASSE a TRUE ou FALSE vous le mettez a une valeur X
int tmp = GetLocalInt(GetModule(), "LETEMPSPASSE");
if (!tmp)
{
SetTime(0, 0, 0, 0);
tmp = X;
}
SetLocalInt(GetModule(), "LETEMPSPASSE", tmp-1);
Et comme cela la remise a 0 sera faite toutes les X*6s.
Il faut bien sur que X*6s soit plus petit que HoursToSeconds(1)*7 (je crois qu'il fait jour a 7 heure mais j'en suis pas sur
Par exemple et pour etre sur si vous voulez remettre a chaque fois a 0h0 des que l'on arrive a 1h cela donnera cela
int tmp = GetLocalInt(GetModule(), "LETEMPSPASSE");
if (!tmp)
{
SetTime(0, 0, 0, 0);
tmp = FloatToInt(HoursToSeconds(1)/6);
}
SetLocalInt(GetModule(), "LETEMPSPASSE", tmp-1);