Problème accélération time() - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : Problème accélération time() (/showthread.php?tid=4221) |
Problème accélération time() - xanthius - 11-06-2018 Bonsoir, je voulais tenter de procéder à une accélération du temps par 7. Au début ça fonctionnait plus ou moins bien. J'ai cependant voulu savoir si s'en était de même sur le long terme. d'où la tentative suivante : Code PHP :
si j'essaye en multipliant par 7 Code PHP :
Sauriez vous la cause et comment y remédier ? Le but est d'accélérer le temps INGAME. Edit : il est monté jusqu'au 13/07/31 et après capout.. RE: Problème accélération time() - Xenos - 11-06-2018 Salut, je ne comprends pas pourquoi date("s")? Cela te renverra le nombre de secondes de l'heure actuelle, et je ne comprends pas trop ce que cela vient faire ici... Il te ramène donc à la date du jour car l'heure actuelle est du type 19:46:00 => date("s") vaut alors "0" et donc, time() + 7*date("s") vaut time() Dans ton cas, il te faut une "ancre" temporelle, c'est à dire un timestamp T0 (réel) indiquant le moment à partir duquel le "boost" est appliqué. Ensuite, il suffit de faire la différence entre le timestamp actuel et ce T0, de la multiplier par ta vitesse d'avancement du temps, et d'ajouter cet écart à T0 pour trouver la nouvelle date ingame. Code PHP :
Attention: l'ancre T0 devra être réactualisée si tu changes la valeur du multiplicateur temporel un jour (ie: si tu passes de x7 à x10 le 1er Aout, alors le timestamp T0 sera la date du 1er Aout) RE: Problème accélération time() - xanthius - 11-06-2018 Je pensais (à tord) pouvoir utiliser les secondes pour augmenter ma vitesse .. Mais après lecture, je me rend compte encore une fois que j'étais bien c** Dans notre cas, On peut faire Code PHP :
|