pivot18 Opublikowano 2 Sierpnia 2009 Udostępnij Opublikowano 2 Sierpnia 2009 Witam chciałem zrobić pole wzroku wroga że sprawdza colision line ale nie prosto tylko na daną odległość i rzeby sprawdzał to jak by była to. Albo spytam się tak. Jak zrobić aby (o ile się da) żeby sprawdził czy się kolidujemy ze spritem którego wydrawowano (sprit jest niewidoczny) Czyli sprawdzamy czy dany sprit jest colidowany z obiektem o_hero. da się zrobić? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Egzekutor Opublikowano 2 Sierpnia 2009 Udostępnij Opublikowano 2 Sierpnia 2009 A nie lepiej to zrobić z: GML if distance_to_object(bohater) < 400 { //jakieś akcje } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pivot18 Opublikowano 2 Sierpnia 2009 Autor Udostępnij Opublikowano 2 Sierpnia 2009 Rotf ja tu skradanke robię a on ma mnie zauważyć przez ścianę? bez jaj xd Edit: a przy okazji jak zrobić że w komendzie colision line sprawdzał tylko jeżeli linia nie przechodzi przez solid ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nobody Opublikowano 2 Sierpnia 2009 Udostępnij Opublikowano 2 Sierpnia 2009 GML if( distance_to_object( bohater ) < 400 ) && ( !collision_line( x, y, bohater.x, bohater.y, sciana, 1, true ) ) { // jest w zasięgu wzroku i nawet nie przez ścianę :> } EDIT: A co do pierwszego posta GML (CollisionLineExt) // collision_line_ext( x poczatkowe, y poczatkowe, max odleglosc, kierunek, obiekt, precyzja, notme ); return collision_line( argument0, argument1, argument0 + lengthdir_x( argument2, argument3 ), argument1 + lengthdir_y( argument2, argument3 ), argument4, argument5, argument6 ); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Egzekutor Opublikowano 2 Sierpnia 2009 Udostępnij Opublikowano 2 Sierpnia 2009 No to dajesz ten kod a w STEP jeszcze dodajesz: if !collision_line(x,y,obj_bohater.x,obj_bohater.y,o_wall,true,true) && fire_ready GML if !collision_line(x,y,obj_bohater.x,obj_bohater.y,dom,true,true) //Jakieś akcje</span> Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 2 Sierpnia 2009 Udostępnij Opublikowano 2 Sierpnia 2009 To będzie chyba najlepszy kod: GML if(!collision_line(x,y,bohater.x,bohater.y,sciana,1,true)&&(point_direction(x,y,bohater.x,bohater.y) < direction+45)&&(point_direction(x,y,bohater.x,bohater.y) > direction-45)&&(distance_to_object(bohater) < 400) { //wykonaj akcję } 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ę