Czas
Ostatnio zmodyfikowano 2011-02-10 19:34
mesajah Temat założony przez niniejszego użytkownika |
Czas » 2011-02-10 18:50:06 Chcę zrobić specjalny czas grze np. 10 min to 10 godz w grze
napisałem tylko
niby
if( min >= 60 ) { if( godz > 23 ) { godz = 0; min = 0; } else { godz = godz + 1; min = 0; } }
ale przecież nic się nie będzie działo
to takie mam pytanie : Jak zrobić taki czas w grze
|
|
WiecznyWem |
» 2011-02-10 19:02:10 Startujesz odliczanie czasu Potem: h = floor( time * x / 3600 ); m = floor( time * x / 60 ) - 60 * h; s = time * x - 3600 * h - 60 * m;
Gdzie x-mnożnik czasu, time-zmienna przechowująca ilość sekund które upłynęły od startu, h-godziny, m-minuty, s-sekundy; Sposób na obliczenie tego może być prostszy, podaję jedynie rozwiązanie którego kiedyś ja użyłem. /edit: minusem tego jest to, że "mnożnik" musimy obczaić, a nie podać coś w stylu 10min - 10h |
|
mesajah Temat założony przez niniejszego użytkownika |
» 2011-02-10 19:19:06 ale mi chodzi o takie coś np. Klikamy 1. Wyrusz na wyprawę i mamy odliczanie 20 minut |
|
szyx_yankez |
» 2011-02-10 19:21:58 Albo tak:
#include <ctime> #include <cstdio>
int main() { int min = 0; int hou = 12; int speed = 1000; int tim = clock(); while( true ) { ( clock() > tim + speed ) ? min++, tim = clock() : 0; ( min >= 60 ) ? hou++, min = 0 : 0; ( hou == 24 ) ? hou = 0 : 0; printf( "Czas %d : %d\n", hou, min ); } } [ cpp ]
|
|
mesajah Temat założony przez niniejszego użytkownika |
» 2011-02-10 19:26:43 szyx idealnie , dzięki proszę o zamknięcie tematu doceniam też skrypty innych userów |
|
szyx_yankez |
» 2011-02-10 19:31:19 Sam możesz zamknąć temat, jak go założyłeś. |
|
ison |
» 2011-02-10 19:34:01 szyx_yankez clock() nie zwraca liczby milisekund - może, ale musi i moim zdaniem trochę nadużywasz operator '?' - nie można zamiast tego użyć najzwyklejszego warunku if? |
|
« 1 » |