Skocz do zawartości

Dzwiek gdy klikne


M1513Q

Rekomendowane odpowiedzi

Sprubój przyporzadkowywać dźwięki liczbom.

np.

sprawdzasz keyboard_check_pressed i klawisze przyporządkowujesz liczbom. I przy nacisnieciu klawisza

(w create objektu daj nr_kolejnosci=0;)

gdy naciśniesz klawisz W to do zmienna[nr_kolejnosci]=5; // np. dźwiek nr 5

nr_kolejnosi+=1;

zaraz naciśniesz S i zmienna[nr_kolejnosci]=3;

nr_kolejnosci+=1;

 

później np. naciskasz enter i wyzwalasz petle która odtwarza dźwięki

 

w pętli for (nr_kolejności2=0, nr_kolejnosci2<=nr_kolejnosci) warunkami sprawdzasz np.

if zmienna[nr_kolejności2]=1 sound_play(jakis tam dziwek);

nr_kolejnosci2+=1;

a po wykonaniu petli nr_kolejnosci=0;

 

Może trochę nagmatwałem ale już nie miałem czasu pisać kodu :P

Odnośnik do komentarza
Udostępnij na innych stronach

Jest taka funkcja: is_playing()...

 

@Gdzieś na górze: Po co kolejki? Wystarczą dwa alarmy i dwie zmienne typu string i bool. Gdy Alarm0 "zadzwoni" (czyli kiedy się aktywuje) ustawiamy zmienną rytm (tak ją nazwijmy) jako true (1). W tym samym czasie uruchamiamy odliczanie Alarmu1. Jak "zadzwoni" Alarm1, to ustawiamy zmienną rytm jako false (0). Teraz w stepie wystarczy dodać (zmienna okrzyk to string):

if (keyboard_check_pressed(ord("S")))

okrzyk += "la";

i analogicznie resztę.

 

Jakieś pytania?

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem co to "cos tam" ale jeśli chcesz sprawdzić dla dwóch kolejnych dźwięków to może sz to sprawdzić tak

GML
if (dzwiek[nr_kolejnosci]==sound0)&&(dzwiek[nr_kolejnosci+1]==sound0) /* tu sprawdza czy dwie

(aktualnie odtwarzana i nastpępna) sa dźwiękami sound0 */

{

//cos tam

}

else if (dzwiek[nr_kolejnosci]==sound0)&&(dzwiek[nr_kolejnosci+1]==sound1) /* tu sprawdza czy

pierwsza to sound0 a następna sound1 */

{

//cos tam

}

//itd.

Odnośnik do komentarza
Udostępnij na innych stronach

To może koncepcja ze stringami:

jest jakaś zmienna ( string )

i po naciśnieciu klawisza do zmiennej dodaje się jakaś litera ( z góry przypisana klawiszowi ) , a każdej literze przypisany jest inny dźwięk,

Gdy chcemy odtworzyć utworzoną kombinację to pętla przelatuje kolejne litery ze stringa i po kolei odtwarza dźwięki.

Odnośnik do komentarza
Udostępnij na innych stronach

Ta akcja ma być po cakowitym zakończeniu odtwarzania wszystkich utworów?

np. wybrałem ścieżkę s1, s3, s2, s1

ty chcesz np. po s1, s3, s2 Program ma "czekac" aż się odtworzy jeszcze ten s1 czy od razu po odtworzeniu s2 (ostatni w kombinacji pożądanej)?

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ę...