Skocz do zawartości

jak przejść po efekcie specjalnym do drugiego roomu


gol350

Rekomendowane odpowiedzi

Wziołem klocek "create effect" i wybrałem "explosion" i teraz jak wezmę klocek "next room" po explozji to nie ma efektu tylko od razu po zderzeniu objektu z innym objektem przechodzi do innego roomu.

 

Jak to zrobić, żeby dopiero po explozji przeszło do roomu.

Odnośnik do komentarza
Udostępnij na innych stronach

W evencie kolizji:

GMLeffect_create_above(ef_explosion,x,y,1,c_red) //możesz zmienić above na below

alarm[0] = room_speed*2 // 2 oznacza 2 sekundy

 

Alarm[0]:

GMLroom_goto_next()

 

Ale wtedy do drugiego roomu przechodzi dopiero w momencie rozłączenia się objektów ,a ja mam na myśli nieustanną kolizję między dwoma objektami ,a po dwóch sekundach przejście .

Odnośnik do komentarza
Udostępnij na innych stronach

przy kolizji powinno być:

GML
if ( alarm[ 0 ] = -1 ) alarm[ 0 ] = 5 * room_speed
i po kłopocie ;)

 

ogólnie całą akcja z tej kolizji powinna być wykonywana gdy alarm0 nie jest ustawiony

GML (Kolizja)
if ( alarm[ 0 ] = -1 )

{

effect_create_above(ef_explosion , x , y ,1 , c_red )

alarm[0] = room_speed * 5

//tutejsza akcja zostanie wykonana wyłącznie gdy alarm0 nie został jeszcze "wystartowany"

}

Odnośnik do komentarza
Udostępnij na innych stronach

przy kolizji powinno być:GMLif ( alarm[ 0 ] = -1 ) alarm[ 0 ] = 5 * room_speed i po kłopocie ;)

 

ogólnie całą akcja z tej kolizji powinna być wykonywana gdy alarm0 nie jest ustawiony GML (Kolizja)if ( alarm[ 0 ] = -1 )

{

    effect_create_above(ef_explosion , x , y ,1 , c_red )

    alarm[0] = room_speed * 5

    //tutejsza akcja zostanie wykonana wyłącznie gdy alarm0 nie został jeszcze "wystartowany"

}

 

Właśnie o to mi chodziło. Efekt  bardzo dobry , ale kodu nie rozumiem.

 

analizowałeś mój kod? >.<

 

Wydaje mi się ,że chodzi o to żeby,alarm opóżnić(niejako dezaktywować ) ,żeby w odpowiednim momencie go włączyć.

Odnośnik do komentarza
Udostępnij na innych stronach

jeżeli alarm nie jest "odliczany" to wynosi -1.

jeśli wystartujemy alarm (alarm[0] = 5) ustawimy zmienną na 5. Owa zmienna z każdy stepem będzie zmieszała swą wartość o 1.

 

My chcąc aby alarm się stale nie ustawiał na 5, ograniczamy możliwość ustawienia go tylko wtedy gdy wynosi -1 (czyli jeszcze nie został wystartowany)

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