Skocz do zawartości

Zablokowane Czas ataku


Morro

Rekomendowane odpowiedzi

Mam taki probelm, zrobiłem żeby wróg atakował mnie tylko jak mnie widzi ale nie mogę wygłówkować jak trzeba zrobić to, żeby atakował mnie jeszcze przez jakieś 5 sekund - mam na myśli gonienie - nawet jak mnie nie widzi. Wiem o co chodzi ale nie umiem tego zastosować, bo to wszystko jest w stepach i nawet jak dam jakiś alarm w warunku to będzie się ciągle nadpisywał i nici z alarmu.

 

To kod jeszcze bez gonienia, bo tamten poprostu nie działał:

GML
mp_potential_settings(360,6,15,1)

 

if collision_line(enemx,enemy,o_herohead.x,o_herohead.y,o_wall,false,false)

att=0

else

att=1

 

if att=1

mp_potential_step_object(o_herohead.x,o_herohead.y,6,o_wall)

Odnośnik do komentarza
Udostępnij na innych stronach

tutaj twoj kod, dopisz

GML
mp_potential_settings(360,6,15,1)

 

if collision_line(enemx,enemy,o_herohead.x,o_herohead.y,o_wall,false,false)

att=0

else

att=1

 

 

if att=1

mp_potential_step_object(o_herohead.x,o_herohead.y,6,o_wall)

alarm[0]=5*room_speed

 

 

GML (alarm0 )
alarm0:

att=0

o to chodzi?

 

Harv szybszy :/

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki, spróbuję jeszcze rozwiązania Harva ale w międzyczasie przed chwilą sam to rozwiązałem

GML
if collision_line(enemx,enemy,o_herohead.x,o_herohead.y,o_wall,false,false)

widzi=0

else

widzi=1

 

if widzi=1

goni=1

else

if niewidzi=1

{

niewidzi=0

alarm[1]=150

}

 

if goni=1

mp_potential_step_object(o_herohead.x,o_herohead.y,6,o_wall);

alarm

GML
if widzi=0

{

goni=0

niewidzi=1

}

else

alarm[1]=150

 

a pozatym mam jeszcze jedno pytanie, jak zrobić, żeby wróg omijał przeszkody jak wyżej jest zrobione tylko, żeby nie były to pojedyncze bloki, bo całej ściany nie umi już ominąć, drży w miejscu

 

EDIT:

przyjżyj się kodowi, att jest zawsze równe 1

a to jest w stepie, więc co step alarm się nastawia na nowo do 5*room_speed

Odnośnik do komentarza
Udostępnij na innych stronach

GML
mp_potential_step(o_herohead.x,o_herohead.y,6,solid);

GML
mp_potential_settings(360,6,15,1)

 

if collision_line(enemx,enemy,o_herohead.x,o_herohead.y,o_wall,false,false) && alarm[0]>0

att=0

else

att=1

 

if att=1

{

mp_potential_step(o_herohead.x,o_herohead.y,6,solid);

alarm[0]=5*room_speed

}

alarm[0] =... powinno być w warunku ;p

 

//Teraz to już w ogole zle zrobiłem, sorry

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...