Skocz do zawartości

Bezpłodne collision_point


Platyna

Rekomendowane odpowiedzi

Mam taki problem. Chcę za pomocą collision_point sprawdzić czy w danym punkcie jest kolizja z pewnym obiektem, ale nie chce by funkcja brała pod uwagę dzieci tego obiektu. To musi być ten konkretny obiekt, a nie jego rodzinka!

 

Czegoś takiego zrobić nie mogę:]

GML
q=collision_point(x,y,obj,1,1);

if(q)

{

if(q.object_index==obj)

kolizja=1;

}

 

Bo w takim przypadku jeśli w tym miejscu będzie kolizja i z obj i z jego dzieckiem to funkcja może zwrócić akurat id dziecka i wtedy nie wykryje kolizji z obj bo się nie zgodzi object_index.

 

Jaki prosty sposób na to się znajdzie?

Odnośnik do komentarza
Udostępnij na innych stronach

Ale parentów mogę mieć w roomie całą masę. A każdy ma inne id

 

Już sobie napisałem funkcję my_collision, która przegląda wszystkie parenty i sprawdza czy to parent a nie dziecko. Wtedy patrzy na pozycje czy koliduje :)

Odnośnik do komentarza
Udostępnij na innych stronach

No przecież napisałem jak działa.

Ale chcesz to masz kod

GML
global.tmpx=argument0;

global.tmpy=argument1;

global.tmpo=argument2;

global.tmp=0;

 

with(global.tmpo)

{

if(object_index==global.tmpo&&xx=global.tmpx&&yy=global.tmpy)

global.tmp=1;

}

 

return global.tmp;

 

Z tym, że w moim przypadku sprawdzenie kolizji ogranicza się jedynie do porównania współrzędnych, bo mnie to wystarcza :)

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