[C++, Allegro] Poruszanie obiektu za pomocą klawiszy
Ostatnio zmodyfikowano 2012-11-22 20:04
gilgamesh Temat założony przez niniejszego użytkownika |
[C++, Allegro] Poruszanie obiektu za pomocą klawiszy » 2012-11-22 19:06:15 Witam, mam problem z klawiszami - poruszaniem obiektem, otóż chciałbym zrobić tak aby po naciśnięciu klawisza obiekt się poruszał AŻ do momentu wciśnięcia innego. Przykład: naciskam UP i trzymam (obiekt się porusza do góry), puszczę UP (obiekt nadal się porusza do góry) DOPIERO gdy nacisnę DOWN obiekt porusza się na dół, chodzi mi niejako o zapętlenie klawiszy do momentu naciśnięcia innego. if( keys[ UP ] ) Up( car ); else if( keys[ DOWN ] ) Down( car ); void UP() { car.y -= car.speed; dir = UP; } Dodam, iż wszystko pięknie rozpoznaje i wyświetla mi zmienna dir. Swój program piszę w ALLEGRO 5. Proszę o pomoc. |
|
kubawal |
» 2012-11-22 19:33:30 if( keys[ UP ] ) { while( !keys[ DOWN ] ) UP( car ); }
else if( keys[ DOWN ] ) { while( !keys[ UP ] ) UP( car ); }
/edit: kod daj w [cpp]...[/cpp] |
|
SeaMonster131 |
» 2012-11-22 19:41:31 Lub bez użycia dodatkowych pętli: if( klawisz UP ) dir = UP;
if( klawisz DOWN ) dir = DOWN;
if( klawisz LEFT ) dir = LEFT;
if( klawisz RIGHT ) dir = RIGHT;
if( dir == UP ) samochod.y--;
if( dir == DOWN ) samochod.y++;
...
|
|
gilgamesh Temat założony przez niniejszego użytkownika |
» 2012-11-22 20:04:38 Dzięki, lecz sposób z while próbowałem sam i efekt był taki że zwiesza się program, sposób Sea działa, dzięki, do zamknięcia :) |
|
« 1 » |