Skocz do zawartości

SDL - problem z obsługą klawiatury i myszki


Qbe

Polecane posty

Jest możliwość ustawienia w SDLu tak obsługi myszki i klawiatury by reagowała tylko na wciśnięcie, a na "odciśnięcie"/odkliknięcie już nie?

 

Problem polega na tym, że mam ustawioną akcję na wciśnięcie klawisza:

if(keystate[SDLK_r])
       {
           if(program[1])
           {
           // obrót podczas rozmieszczania
           if(aktualny==GRACZ->maszt2[0]||aktualny==GRACZ->maszt2[1]||aktualny==GRACZ->maszt3[0])
           {
               if(aktualny->orientacja==1)
               aktualny->orientacja=0;
               else
               aktualny->orientacja=1;
               }
           }
       }

I działa to na zasadzie takiej, że jak wcisnę klawisz to się zmienia orientacja na "przeciwną", a gdy puszczę klawisz - wraca do początkowego.

 

Tak samo mam z obsługą myszki. Kliknę na jednym ekranie w "START" to przycisk wykonywana jest akcja w pierwszym ekranie, a gdy przycisk zwolnie to łapie mi już w następnym ekranie, gdzie w tym miejscu jest już plansza.

 

Nie mogę wpaść na pomysł jak można by to było obejść... Pomóżcie:)

Link do komentarza
Udostępnij na innych stronach

SDL_Event event;
while(SDL_PollEvent(&event))
{
if((keystate[SDLK_r])&&(event.type == SDL_KEYDOWN)){ } //?
}

:)

 

 

Dziękuje bardzo za pomoc. A jest też taki odpowiednik do kliknięcia myszką? Tak aby tylko wciśnięcie klawisza wykonywało akcję?

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...