Skocz do zawartości

Przeciwnicy omijanie, strzelanie itp.


zelman

Rekomendowane odpowiedzi

1. Chodzi mi o to, żeby przeciwnik jeśli jest <200 od bohatera chodził w losowym kierunku na obszarze wyznaczonym przeze mnie, a kiedy bohater podejdzie i będzie >200 żeby szedł w stronę bohatera omijając przeszkody

 

2.Jeśli jest w odległości >100 od bohatera, żeby co 3 sekundy wystrzelił pocisk w stronę bohatera

 

3.Żeby w czasie chodzenia obracał się przodem w stronę, w którą idzie

 

4.Jeśli bohater jest w odległości <200 od wroga żeby on (wróg) powrócił do chodzenia w losowym kierunku

Odnośnik do komentarza
Udostępnij na innych stronach

1.STEP:

GML
if distance_to_object(obj_player) < 200//jesli dystans do gracza jest mniejszy od 200...

{

direction = random(round(360))//...kierunek jest losowy

}

speed = 4

if distance_to_object(obj_player) > 200

{

mp_potential_step(obj_player.x,obj_player.y,4,false)

}

2.STEP:

GML
if distance_to_object(obj_player) > 100

{

alarm[0] = 90

}

ALARM0:

GML
instance_create(x,y,obj_bullet)
Odnośnik do komentarza
Udostępnij na innych stronach

e...to samo

 

w stepie wroga mam tak:

 

if distance_to_object(hero) < 200

{

direction = random(round(360))

speed = 4

}

if distance_to_object(hero) < 200

{

mp_potential_step(hero.x,hero.y,4,false)

}

 

if distance_to_object(hero) < 100

{

alarm[0] = 90

}

 

image_angle = direction

 

przed chwilą zmieniłem te < i > i teraz mi gdzieś pouciekali za ekran itp :)

Odnośnik do komentarza
Udostępnij na innych stronach

zobacz to moze pomoze: https://forum.gmclan.org/index.php?showtopic=17391

 

lub:

GML
//create wroga:

czyn='chodzi'

alarm[0]=30+random(30)

strzel=1

//step wroga:

if distance_to_object(player)>200 and czyn!='chodzi'

{

czyn='chodzi'

}

else if distance_to_object(player)<200 and czyn!='goni'

{

czyn='goni'

}

if distance_to_object(player)>100 speed=4

else speed=0

if distance_to_object(player)<120 and strzel

{

strzel=0

alarm[1]=5

instance_create(x,y,pocisk)

}

image_angle=direction

//alarm[0]:

if czyn='chodzi' direction=random(360)

alarm[0]=30+random(30)

//alarm[1]:

strzel=1

 

takie cos mozeby poszlo

Odnośnik do komentarza
Udostępnij na innych stronach

Alarm to "event" czyli wydarzenie. Musisz podać jego wartość w CREATE np.

alarm[2]=30

W alarm 2:

strzel=1

W Step:

 

//create wroga:

czyn='chodzi'

alarm[0]=30+random(30)

strzel=1

//step wroga:

if distance_to_object(player)>200 and czyn!='chodzi'

{

czyn='chodzi'

}

else if distance_to_object(player)<200 and czyn!='goni'

{

czyn='goni'

}

if distance_to_object(player)>100 speed=4

else speed=0

if distance_to_object(player)<120 and strzel

{

alarm[2]=30

strzel=0

alarm[1]=5

instance_create(x,y,pocisk)

}

image_angle=direction

//alarm[0]:

if czyn='chodzi' direction=random(360)

alarm[0]=30+random(30)

//alarm[1]:

strzel=1

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