Skocz do zawartości

Muzyka w tle-jedna po drugiej


Jecht

Rekomendowane odpowiedzi

Spróbuj tak, w create zrób zmienną "muzyka=0". Następnie w step daj

if myzuka=0 && !sound_isplaying(nazwa_muzyki1)
{
sound_play(nazwa_muzyki1);
muzyka=1;
}
if muzyka = 1 && !sound_isplaying(nazwa_muzyki1)
{
sound_play(nazwa_muzyki2);
muzyka=3;
}

itd. Chyba powinno działać, jeśli chciał byś aby muzyka była grana na zmiane, to zamiast muzyka=3 daj muzyka=0 i w pierwszym warunku (if....) dodaj !sound_isplaying(nazwa_muzyki2). Mam nadzieje że kapujesz.

if not sound_play(sound) then

{sound_play(sound1)}

Jeśli tak zrobi będzie musiał wiedzieć ile będzia trwał który utwór i porobić alarmy.
Odnośnik do komentarza
Udostępnij na innych stronach

Można też zrobić coś takiego, z wykorzystaniem tablicy, robienie prymitywnej playlisty :P (dajesz to w endstep):

ilosc_nagran=3; // dajesz tu dowolną ilość
nagranie[1]=dzwiek1; // tych nagranie z cyferką ma być tyle co tych nagrań
nagranie[2]=dzwiek2; // a za te dzwiek podstawiasz nazwe nagrania
nagranie[3]=dzwiek3;
for (i=1;i=ilosc_nagran;i+=1) {
if (i==1 && !sound_isplaying(nagranie[ilosc_nagran]) sound_play(nagranie[1])
else { if !sound_isplaying(nagranie[i-1]) sound_play(nagranie[i]); }
if (i==ilosc_nagran) i=0;
}

Nie sprawdzałem, ale powinno działać xd . Jeżeli chcesz, żeby to działało ciągle (nawet przy zmianie rooma), to daj to do jakiegoś niewykorzystywanego obiektu, daj mu persistent i ustawiaj go na każdej planszy.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

nowy game maker ma takie coś głupiego, że dopiero jak jakiś dźwięk leci, to uznaje, że muzyczka się odtwarza - co oznacza, że pauza w plikach midi to brak dźwięku i wczyta ci następny.... głupie, nie ?

Odnośnik do komentarza
Udostępnij na innych stronach

no tak jak kazales robie wszystko jedyne co zmieniam:

 

ilosc_nagran=2; // dajesz tu dowolną ilość

nagranie[1]=dzwiek1; // tych nagranie z cyferką ma być tyle co tych nagrań

nagranie[2]=dzwiek2; // a za te dzwiek podstawiasz nazwe nagrania

for (i=1;i=ilosc_nagran;i+=1) {

if (i==1 && !sound_isplaying(nagranie[ilosc_nagran]) sound_play(nagranie[1])

else { if !sound_isplaying(nagranie[i-1]) sound_play(nagranie); }

if (i==ilosc_nagran) i=0;

}

 

 

zmieniam ilosc nagran na 2 i usuwn nagranie 3 bo nie potrzebuje

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...