Skocz do zawartości

Aktywna pauza


Makary155

Rekomendowane odpowiedzi

W mojej grze zbudowałem sobie system Ai na zasadzie kolejek. Jak to działa? Tworzę sobie ds_stack i listuję sobie specjalnie przygotowane skrypty czynności, np Move(x,y) a w nim

GML
move_towards_point(argument0,argument1, 5)

if x=argument0 and y=argument1

{

return 1

}

else

{

return 0

}

jeżeli skrypt zwróci 1 to jest usuwany z listy i wykonywany następny, jeżeli 0 to wykonuje się znowu.

mogę tak uzyskać patrolowanie dowolnego kształtu

 

jak w takim systemie mogę zaimplementować aktywną pauzę, że moge pododawać jednostkom rozkazów do kolejki, ale one same zaczną je wykonywać dopiero gdy wyłącze pauzę? Creditsy gwarantowane.

 

edit: nie wiem jak to zrobił Marek, nawet nie widziałem jego przykładu o programowaniu ruchu.

Odnośnik do komentarza
Udostępnij na innych stronach

zgaduję że zwracanie 0 oznacza że ma nadal wykonywać dany skrypt, a 1 że może przejść do kolejnego zadania?

GML
if( global.pause ) return 0 // zwróci 0 czyli wciąż ma wykonywać ten skrypt ale w rzeczy samej akcji nie wykona, czyli jest pauza

move_towards_point(argument0,argument1, 5)

if x=argument0 and y=argument1

{

return 1

}

else

{

return 0

}

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