Skocz do zawartości

pomocnik


trolu122

Rekomendowane odpowiedzi

robie gre top down i chciałbym zrobic pomocnika. kiedy widzi przeciwnika ma do niego strzelać jak nie widzi i jestesmy za daleko ewentualnie za scianą to biegnie do nas. wrog to obiekt który wszystcy przeciwnicy mają w parent, object2 to sciana i mam takie cos

 

GML
near=instance_nearest(x,y,wrog)

 

if !collision_line( x, y, wrog.x, wrog.y, object2, 1, 1 )

{agresja=1

direction=point_direction(x,y,near.x,near.y)

if ( ready=1 && agresja=1)

{

c=instance_create(x+lengthdir_x(35,direction), y+lengthdir_y(35,direction), pocisk_1)

c.direction=direction +random(5) -random(5)

c.speed=10

c.damage=25

alarm[0]=20

ready=0

}}

 

if collision_line( x, y, wrog.x, wrog.y, object2, 1, 1 )

{agresja=0}

 

tylko ze ludzik nie wiem czemu stoi jak głupi i nic nie robi ;/ nawet jak wróg jest na widoku. czasem strzeli raz i koniec i za nic nie moge dojsc co jest nie tak bo jak dla mnie powinno byc dobrze ;p

Odnośnik do komentarza
Udostępnij na innych stronach

GML
near=instance_nearest(x,y,wrog)

 

//kiedy widzi przeciwnika strzela

if !collision_line( x, y, near.x, near.y, object2, 1, 1 )

{agresja=1

direction=point_direction(x,y,near.x,near.y)

if ( ready=1 && agresja=1)

{

c=instance_create(x+lengthdir_x(35,direction), y+lengthdir_y(35,direction), pocisk_1)

c.direction=direction +random(5) -random(5)

c.speed=10

c.damage=10

alarm[0]=5

ready=0

}}

 

// jak teren czysty agresja=0 ....

if collision_line( x, y, near.x, near.y, object2, 1, 1 )

{agresja=0}

 

// ... i jak trzeba biegnie do nas

if (distance_to_point(player.x,player.y)>200 && agresja=0)

{mp_potential_step(player.x,player.y,2,0)}

 

if (collision_line( x, y, player.x, player.y, object2, 1, 1 ) && agresja=0)

{mp_potential_step(player.x,player.y,2,0)}

 

// gdy przeciwnik jest za blisko wycofuje sie

if (distance_to_point(near.x,near.y)<200 && !collision_line( x, y, near.x, near.y, object2, 1, 1 ))

{speed=-2}

else

{speed=0}

 

oto kod :D całkiem nieźle mi chyba wyszedł tylko zastanawiam sie jak zrobic wycofywanie, tzn gdy przeciwnik idzie w kierunku pomocnika i jest za blisko, zrobiłem spedd=-2 ale kiedy pomocnik nachodzi na sciane animacja skacze i brzydko to wygląda ma ktos jakis pomysl?

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