Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Niezależne wykonywanie ruchu, pobieranie czasu

Ostatnio zmodyfikowano 2015-01-25 20:04
Autor Wiadomość
BrutalxD
Temat założony przez niniejszego użytkownika
[C++] Niezależne wykonywanie ruchu, pobieranie czasu
» 2015-01-25 16:36:00
Witajcie,

Stworzyłem grę na ASCII w której jest Gracz, którym ja steruję i są przeciwnicy, którzy sami się poruszają. Przeciwnicy są w stanie podążać za Graczem, po każdym moim ruchu następuje ruch przeciwnika. Jak uzyskać efekt ruszania się przeciwników (po jakimś upływie czasu, wspaniale byłoby jeśli dałoby radę ustawić czestotliwosc ruchu dla każdego przeciwnika) mimo, że ja się nie ruszyłem? Próbowałem funkcji kbhit(), ale nie wypalilo(raz klikne a to odczytuje jakbym ciagle klikal), getch() - nie daje się ruszyc przeciwnikowi poki czegos nie klikne. Jakby można było ustawić kbhit()=false; to wtedy by wszystko działało, ale cóż nie da się, dlatego wołam o pomoc profesjonalistów. Pomocy :)
P-125530
pekfos
» 2015-01-25 19:10:55
Jakby można było ustawić kbhit()=false; to wtedy by wszystko działało, ale cóż nie da się
Da się. Od tego jest getch().
P-125542
BrutalxD
Temat założony przez niniejszego użytkownika
» 2015-01-25 20:04:50
Jesli bym zrobil

C/C++
char znak;
unsigned start = clock();
while( move() == true ) {
   
    if( kbhit() ) {
        znak = getch();
        processPlayerMove( znak );
        cout << "ruszyl sie gracz" << endl;
    }
    if( clock() - start > 2000 ) //2 sekundy
    {
        cout << "ruszyl sie przeciwnik" << endl;
        start = clock();
    }
}
to nie dziala poprawnie, bo bedzie ciagle wypisywac pirszy komunikat mimo ze tylko raz kliknalem
P-125544
« 1 »
  Strona 1 z 1