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

[allegro] klik

Ostatnio zmodyfikowano 2009-05-08 17:43
Autor Wiadomość
driver1995
Temat założony przez niniejszego użytkownika
[allegro] klik
» 2009-05-07 23:10:59
Witam...
Mam problem, gdyż chcę aby w moim programie, gdy najedzie się myszką na jakiś obszar wydobywał się dźwięk kliknięcia... Problem tkwi w tym, że jak robie tak:
if( mx >= 7 && mx <= 134 && my >= 156 && my <= 225 ) { masked_blit( accMain, bufor1, 0, 0, 7, 156, accMain->w, accMain->h ); play_sample( Klik, 255, 127, 1000, 0 ); }
to dźwięk wydobywa się dopiero po tym, jak zjadę myszką z tego obszaru... Czemu tak jest i jak to naprawić? Bardzo proszę o pomoc...
P-6641
DejaVu
» 2009-05-07 23:17:41
powinieneś mieć stany:
1) przycisk niekliknięty
2) przycisk był niekliknięty i został kliknięty
3) mysz jest nad przyciskiem i przycisk wciśnięty
Podczas stanu #2 powinieneś zaimpementować odgrywanie dźwięku. W Twoim kodzie brakuje rozróżnienia między stanem 2,a 3 tak więc dźwięk zaczyna odgrywać się od początku za każdym przejściem pętli. Stąd uzyskujesz opisany przez siebie efekt.
P-6642
driver1995
Temat założony przez niniejszego użytkownika
» 2009-05-08 17:43:43
Zrobiłem cuś w tym stylu i działa ;d;d;d
C/C++
if( mx >= 7 && mx <= 134 && my >= 156 && my <= 225 ) a = 1;

if( !( mx >= 7 && mx <= 134 && my >= 156 && my <= 225 ) && a == 1 ) play_sample( Klik, 255, 127, 1000, 0 );

if( mx >= 7 && mx <= 134 && my >= 156 && my <= 225 ) masked_blit( accMain, bufor1, 0, 0, 7, 156, accMain->w, accMain->h );
P-6656
« 1 »
  Strona 1 z 1