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

[C++, Allegro] Jak uniknąć zatrzymywania programu??

Ostatnio zmodyfikowano 2010-03-18 16:27
Autor Wiadomość
deidara17
Temat założony przez niniejszego użytkownika
[C++, Allegro] Jak uniknąć zatrzymywania programu??
» 2010-03-15 21:28:22
Mam troszkę dziwny problem, bo chcę, żeby strzałki w lewo/w prawo operowały jednym obrazkiem (małym trójkątem), a oprócz tego chcę, żeby inny obrazek (buźka) poruszał się w lewo (cały czas). Kiedy jednak nie naciskam żadnego klawisza, to program nie kontynuuje pracy i buźka się nie porusza. Jak zrobić, żeby ominąć sprawdzanie klawisza, jeśli żaden nie został wciśnięty??
P-15091
Bartaz
...
» 2010-03-15 21:31:21
Chodzi ci oto ze jak wcisniesz tylko raz bez trzymania np if(key[KEY_LEFT]) to
obrazek bedzie sie ciagle przesuwal?
P-15092
malan
» 2010-03-15 21:44:28
Usuń funkcję odpowiedzialną za oczekiwanie na wciśnięcie klawisza.
P-15094
lynx
» 2010-03-16 20:44:01
Zdaje mi się czy używasz funkcji w stylu getch() do pobrania kodu wciśniętego klawisza?

A w Allegro masz przecież od razu funkcje które nie wstrzymują programu i zostały zrobione właśnie w tym celu. Kolega wyżej podał już Ci przykład jak ich używać a ja to powtórzę:
C/C++
if( key[ KEY_UP ] )
{
    //tu kod który ma się wykonać gdy wciskany jest jakis przycisk.
}
P-15109
dmx81
» 2010-03-17 00:28:17
dokladnie, a w petli while(!key[KEY_ESC]), po tym nawiasie z odpowiedzi powyzej dasz poruszanie tego drugiego obrazka POZYCJA_X++, aby byl to ruch niezalezny od wciskania klawisza. jak wszystko poskladasz do "kupy", powinno smigac:) nie zapomnij o warunkach granicznych takich jak, gdy POZYCJA_X<=0,POZYCJA_x=0; itd :) bo ci obrazek ucieknie ;) daj znac jak sobie poradziles

ps. kontynuujac mysl obywatela ;) Pietrzucha, usun zapisy typu getch(); lub readkey(); ktore to wstrzymuja wlasnie program az do momentu wcisniecia klawisza :)
P-15128
deidara17
Temat założony przez niniejszego użytkownika
» 2010-03-18 16:27:48
Spokojnie. Nie trzeba od razu mi tłumaczyć podstaw... Tu akurat nie nawaliłem niewiedzą, tylko ślepotą, bo rzeczywiście miałem funkcję readkey() na końcu pętli nieskończonej... <wstyd> Wszystko działa poprawnie, temat nieważny.
P-15166
« 1 »
  Strona 1 z 1