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

[C++, Allegro] Poruszanie obiektu za pomocą klawiszy

Ostatnio zmodyfikowano 2012-11-22 20:04
Autor Wiadomość
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ł 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.


C/C++
if( keys[ UP ] )
     Up( car );
else if( keys[ DOWN ] )
     Down( car );

C/C++
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.
P-69703
kubawal
» 2012-11-22 19:33:30
C/C++
if( keys[ UP ] )
{
    while( !keys[ DOWN ] )
         UP( car );
   
}

else if( keys[ DOWN ] )
{
    while( !keys[ UP ] )
         UP( car );
   
}

/edit: kod daj w [cpp]...[/cpp]
P-69714
SeaMonster131
» 2012-11-22 19:41:31
Lub bez użycia dodatkowych pętli:
C/C++
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++;

...
P-69716
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 :)
P-69723
« 1 »
  Strona 1 z 1