Skocz do zawartości

Koniec kolizji.


Sirluki

Rekomendowane odpowiedzi

Witam :)

 

Mam pewien problem, otóż. Posiadam w grze cztery obiekty (obj_gracz, obj_plac, obj_lampka_zielona, obj_lampka_czerwona)

 

W kolizji obj_gracz z obj_plac posłużyłem sie klockiem change the instance tak, aby obj_lampka_czerwona zmieniła się w obj_lampka_zielona. I tutaj jest problem, uzylem w step obj_plac

if ! place_meeting(x,y,obj_gracz)

i chce, aby po zakonczeniu kolizji obj_lampka_zielona zamienila sie w obj_lampka_czerwona. Teraz co wstawic po funkcji if, aby tak się stało?

 

Przypominam, że to są 4 różne obiekty.

 

Mam nadzieje, że wyraziłem się wystarczająco jasno :)

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if (place_meeting(x,y,obj_gracz))

{

if (instance_exists(obj_lampka_czerwona)) with(obj_lampka_czerwona)instance_change(obj_lampka_zielona,1)

}

else

{

if (instance_exists(obj_lampka_zielona)) with(obj_lampka_zielona)instance_change(obj_lampka_czerwona,1)

}

powinno działać.

 

Edit: pomieszałem ")" teraz jest dobrze ;)

Odnośnik do komentarza
Udostępnij na innych stronach

instance_create(x,y,obj_lampka_czerwona)
with(obj_lampka_zielona)instance_destroy();

 

Myślałem o tym samym sposobie, ale wtedy musiałbym podawać dokładny x i y obj_lampka, a tego chciałem uniknąć. Ale skoro nie ma innego sposobu, będę musiał próbować na piechotę :)

Odnośnik do komentarza
Udostępnij na innych stronach

coś masz źle bo to na pewno działa. sam sprawdź.

GML
if (keyboard_check(vk_enter))

{

if (instance_exists(lc)) with(lc)instance_change(lz,1)

}

else

{

if (instance_exists(lz)) with(lz)instance_change(lc,1)

}

// lc - lampka czerwpna

// lz - zampka zielona

 

a tak w ogóle to czemu po prostu nie zmienisz sprita. ?

Odnośnik do komentarza
Udostępnij na innych stronach

Myślałem o tym samym sposobie, ale wtedy musiałbym podawać dokładny x i y obj_lampka, a tego chciałem uniknąć. Ale skoro nie ma innego sposobu, będę musiał próbować na piechotę :)

Wystarczy zamienić x na obj_lampka.x i tak samo z y. :)

Odnośnik do komentarza
Udostępnij na innych stronach

coś masz źle bo to na pewno działa. sam sprawdź.

GML
if (keyboard_check(vk_enter))

{

if (instance_exists(lc)) with(lc)instance_change(lz,1)

}

else

{

if (instance_exists(lz)) with(lz)instance_change(lc,1)

}

// lc - lampka czerwpna

// lz - zampka zielona

 

a tak w ogóle to czemu po prostu nie zmienisz sprita. ?

 

 

Wystarczy zamienić x na obj_lampka.x i tak samo z y. :)

 

Marek S.

Dopiero gdy za trzecim razem umieściłem ten kod do eventu step zaczął działać poprawnie. :huh: Teraz już jest jak być powinno. Wielkie dzięki, umieściłem cię w credits bo już i tak wystarczająco pomogłeś mi w tworzeniu gry :)

 

Pasterz:

Tak też już probowałem, ale chyba coś źle umiejscowiłem i wyświetlało mi błąd :)

 

Wielkie dzięki dla wszystkich :)

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