dyzmek Opublikowano 8 Stycznia 2013 Udostępnij Opublikowano 8 Stycznia 2013 witam otóż zrobiłem wrogowi że jak mnie zobaczy to mnie goni i strzela . ale jak mnie nie goni to stoi caly czas w miejscu. Bawiłem się różnymi kodami by sobie pełzał itd , nawet way pointy robiłem i nic , dalej stoi jak słup , proszę o pomoc jaki kod mu dodać aktualnie u wroga mam takie kody : CREATE : // pokazywanie linii linie=false // okresla czy enemi sie komunikuja miedzy soba com=false // miejsce docelowe do ktorego idzie px=x py=y // predkosc enemi step=3 // odleglosc na jaka enemi podchodza do hero dis=32 // promien naszego hero hero_range=(obj_kapitan_zielony.sprite_width+obj_kapitan_zielony.sprite_height)/4 see=false // to ponizej to po to by nie bylo bledu na starcie, czyli inicjacja potrzebnych zmiennych temp_dir=point_direction(obj_kapitan_zielony.x,obj_kapitan_zielony.y,x,y) temp_r=hero_range temp_x1=lengthdir_x(temp_r,temp_dir+90) temp_y1=lengthdir_y(temp_r,temp_dir+90) temp_x2=lengthdir_x(temp_r,temp_dir-90) temp_y2=lengthdir_y(temp_r,temp_dir-90) STEP : see=false // ustawienie skali scian tak by nie przepuszczala 'promieni' temp_xs=obj_mor.image_xscale temp_ys=obj_mor.image_yscale obj_mor.image_xscale=temp_xs*1.05 obj_mor.image_yscale=temp_ys*1.05 // wykrycie punktow widzialnych temp_dir=point_direction(obj_kapitan_zielony.x,obj_kapitan_zielony.y,x,y) temp_r=hero_range temp_x1=lengthdir_x(temp_r,temp_dir+90) temp_y1=lengthdir_y(temp_r,temp_dir+90) temp_x2=lengthdir_x(temp_r,temp_dir-90) temp_y2=lengthdir_y(temp_r,temp_dir-90) if!(collision_line(x,y,obj_kapitan_zielony.x,obj_kapitan_zielony.y,obj_mor,0,0) ) { if!(global.alert)global.alert=true if!(see)see=true } if!(collision_line(x,y,obj_kapitan_zielony.x+temp_x1,obj_kapitan_zielony.y+temp _y1,obj_mor,0,0)) { if!(global.alert)global.alert=true if!(see)see=true } if!(collision_line(x,y,obj_kapitan_zielony.x+temp_x2,obj_kapitan_zielony.y+temp _y2,obj_mor,0,0)) { if!(global.alert)global.alert=true if!(see)see=true } // przywrocenie skali scian obj_mor.image_xscale=temp_xs obj_mor.image_yscale=temp_ys // AI (skape, ale zawsze) if(see) { px=obj_kapitan_zielony.x py=obj_kapitan_zielony.y if(com) { enemy.px=obj_kapitan_zielony.x enemy.py=obj_kapitan_zielony.y } } if(point_distance(x,y,px,py)>dis) mp_potential_step(px,py,step,0) W STEP W OSTATNIM WIERSZU JEST STEP 0 wiem ze to na pewno przez to wrog sie nie rusza , ale nie umiem tego zmienić , chcę by jak wróg mnie nie widzi to sobie chodzi , można to nazwać patrolowaniem terenu. proszę o pomoc , będą Kreditsy. no pomóżcie mi proszę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 8 Stycznia 2013 Administratorzy Udostępnij Opublikowano 8 Stycznia 2013 widocznie px i py jest źle ustawione... z tego co widzę to jak wróg cię nie widzi, idzie do ostatnio ustawionego px i py - to w create to pozycja na której startuje - natomiast jeśli cię zobaczył i przestaje widzieć, dojdzie tam gdzie cię ostatnio widział. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
dyzmek Opublikowano 8 Stycznia 2013 Autor Udostępnij Opublikowano 8 Stycznia 2013 to w takim bądź coś pozmieniać w tym kodzie ? 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ę