Skocz do zawartości

Rekomendowane odpowiedzi

Witajcie! Potrzebuję pomocy przy AI potworów. Chciałbym, żeby taki potworek sobie biegał co 5 sekund zmieniając kierunek. Gdy gracz jest w danej odległości to zwraca na siebie uwagę i potworek zapiernicza do niego. Jakieś pomysły?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

mam pomysł co do zapierniczania w stronę bochatera :

 

Create obj_enemy

GML
seen = 0 //do widoczności

spd = (okreslona liczba) //prędkość potworka</span></span>

 

Begin Step

GML
if !collision_line(x,y,global.herox,global.heroy,obj_parent_wall,1,0) && (point_distance(x,y,global.herox,global.heroy) < 400) && seen = 0

{

seen = 1

}

if seen = 1 && point_distance(x,y,global.herox,global.heroy) > 500

{

mp_potential_step_object(obj_player.x,obj_player.y,spd,obj_parent_wall)

}

else

speed=0

 

if (point_distance(x,y,global.herox,global.heroy) < 10)

{

speed = 0; // jest blisko bochatera to stoji

}

 

a w create/step twojego bochatera

GML
global.herox = x;

global.heroy = y;

 

PS. Ja stosowałem taki do mojej gierki , obj_parent_wall to poprostu ściana , kamień lub co wolisz/posiadasz ;) .

 

 

EDIT: Znalazłem na sandbox.yoyogames.com taki przykład co do biegania w random'owym kierunku LINK może ci się przyda :) !

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Losowanie kierunku, hmm... może cosik wypiszę

GML (create)
ii=30; //taki liczniczek</span>

GML (step)
ii--;

if(ii<=0)

{

ii=room_speed*5 // ustawiamy licznik na 5 sekund

direction+=(irandom(60)-30) //trochę płynniejsza zmiana ruchu, można jeszcze lepiej jak chcesz

image_angle=direction // image_angle możemy zmieniać tylko przy zmianie kierunku, po kiego ustawiać co step?

}

To chyba wszystko? Aaa, a co do wykrywania postaci (kod Zombie-Games), to gdzieś jest przykład pościgu top-down, po zrobieniu grida chyba lepiej wybiera drogę. Poszukaj, bo prosty przykład.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

W pierwszym poście ładnie wszystko opisałeś. W czym problem?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

W sumie Threef ma rację. Wszystko co potrzebne masz napisane w poście. To chyba nie jest aż takie trudne, napisać 10 linijek kodu ;p W tym przypadku to tylko przełożenie tego na angielski, a potem dodać nawiasy ;x

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

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

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×