Danieo Opublikowano 3 Września 2016 Udostępnij Opublikowano 3 Września 2016 Witajcie! Mój problem już w sumie opisałem w tytule, czyli instance_place() zwraca -4. Mam sobie obiekt tile który jest rodzicem dla dwóch innych obiektów virus i firewall. W tile mam kod odpalany po naciśnięciu na ten obiekt lewego przycisku myszy i ten kod jest dziedziczony przez virus i firewall. Kod ma za zadanie zmienić obiekt i jego sąsiednie obiekty na inne obiekty. W tym celu używam instance_place by pobrać sąsiadów od tile, który został kliknięty. Problem jest taki, że nie zwraca mi ID obiektu tylko -4. Obiekty virus i firewall mają rozmiar 60x60 i automatyczną maskę. Obiektowi tile też utworzyłem przeźroczysty sprite aby miał maskę, ale dalej zwracane jest -4. To -4 wydaje mi się, że otrzymuje, ponieważ "nie ma żadnej instancji na danej pozycji", ale pewny nie jestem. Oto kod: GML //Toggle self instance_destroy(); if(object_index == firewall) instance_create(x, y, virus); else instance_create(x, y, firewall); //Toggle left var neighbour = instance_place(x-2, y, tile); show_debug_message("x:"+string(x)+"y:"+string(y)); if(neighbour != noone) { with(neighbour) { instance_destroy(); if(object_index == firewall) instance_create(x, y, virus); else instance_create(x, y, firewall); } } show_debug_message(neighbour); Gra to "lights off", które robią na bazie tego tutoriala http://www.yoyogames.com/blog/386 w ramach przypomnienia sobie GMa. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am vader Opublikowano 3 Września 2016 Udostępnij Opublikowano 3 Września 2016 -4 to stała " noone ", więc tak, nikogo nie wykrywa. Edit: Tile nie musi mieć sprite, maski ani nawet istniec w roomie aby go uzywac jako parenta. Natomiast, instance_place porównuje maske docelowych instancji z maską instancji która wykonuje kod, spróbuj instance_position Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danieo Opublikowano 4 Września 2016 Autor Udostępnij Opublikowano 4 Września 2016 Wielkie dzięki Vader za pomoc! ;D Teraz wszystko działa picuś glancuś. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę