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

C++ allegro dzwiek

Ostatnio zmodyfikowano 2010-03-10 23:33
Autor Wiadomość
Bartaz
Temat założony przez niniejszego użytkownika
C++ allegro dzwiek
» 2010-03-10 21:51:19
Witam robie sobie menu i chce zrobic zeby po najechaniu na napis nowa gra wlonczyl sie taki tam dzwiek trwa moze nawet nie cala sekunde.
Wszysko fajnie dziala ale chodzi oto ze jak juz ten dzwiek sie odtworzy to zeby  nie gral w kolko(znaczy w momencie jak sie najedzie) to zeby sie odtworzyl raz a potem dopiero ma sie odtworzyc gdy znowu sie na napis najedzie
Napewno wiecie o co chodzi bo praktycznie w kazdej grze takie cos jest...
i ogolnie czasami sie zacina przy tym cala gra...          
P-14879
malan
» 2010-03-10 23:05:42
play_sample(dzwiek, 255,127,1000,1);

A jeśli chodzi o zapętlenie to chyba nie ma czego wyjaśniać
0 - dźwięk odgrywamy tylko raz,
1 - odgrywamy seryjnie jeden za drugim.
P-14882
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2010-03-10 23:13:47
Tego juz probowalem ,ale chyba zle mnie zrozumiales bo dzwiek sie odtwarza w kolko ale jesli myszka jest na danej bitmapie...
Kod:
C/C++
if(( mx > menu_nowa_gra.x && mx < menu_nowa_gra.x + menu_nowa_gra.s &&
my > menu_nowa_gra.y && my < menu_nowa_gra.y + menu_nowa_gra.w ) )
{
    play_sample( click, 255, 127, 1007, 0 );
    masked_blit( menu_opcja_z, bufor, 0, 0, menu_nowa_gra.x, menu_nowa_gra.y,
    menu_nowa_gra.s, menu_nowa_gra.w );
   
}
P-14885
malan
» 2010-03-10 23:18:18
Jeżeli najedzie się myszką na dany obszar to ma się dźwięk odtwarzać w kółko dopóki się z niego (tj. obszaru) nie wyjdzie, tak?
P-14886
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2010-03-10 23:22:18
Jezeli sie najedzie sie na bitmape z napisem nowa gra to ma sie wlonczyc dzwiek o dlugosci okolo 1 sekundy i sie wlancza ,ale jezeli sie skonczy to sie wlancza znowu i tak wkolko ,ale tylko jezeli kursor jest na bitmapie,a jak  kursor nie najezdrza to wszystko dobrze
P-14887
malan
» 2010-03-10 23:29:23
Najprościej:
C/C++
bool if_play = true;
// ...
if(( mx > menu_nowa_gra.x && mx < menu_nowa_gra.x + menu_nowa_gra.s &&
my > menu_nowa_gra.y && my < menu_nowa_gra.y + menu_nowa_gra.w ) )
{
    if( if_play )
    {
        play_sample( click, 255, 127, 1007, 0 );
        if_play = false;
    }
    masked_blit( menu_opcja_z, bufor, 0, 0, menu_nowa_gra.x, menu_nowa_gra.y
    menu_nowa_gra.s, menu_nowa_gra.w );
} else
{
    if_play = true;
}
P-14889
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2010-03-10 23:33:18
Dzieki :)
P-14890
« 1 »
  Strona 1 z 1