Skocz do zawartości

Przewidywanie pozycji na ścieżce


Sutikku
 Udostępnij

Przejdź do rozwiązania Rozwiązane przez Konrad-GM,

Rekomendowane odpowiedzi

Cześć wszystkim, w ramach pobudzenia ruchu na forum, znowu mam problem.

Przeciwnik chodzi po ścieżce, czy mogę przewidzieć na której pozycji ścieżki się znajdzie za X klatek? Patrzyłem po dokumentacji, ale jakoś nie znalazłem rozwiązania. 

Jeśli to ma znaczenie, to ciągle siedzę na gms 1.4

Odnośnik do komentarza
Udostępnij na innych stronach

  • Rozwiązanie

GameMaker ma kilka funkcji związanych ze ścieżkami, możesz wykorzystać je aby "przewidzieć" pozycję po X czasie, np.:

// Ścieżki działają na wartościach od 0 (początek) do 1 (koniec)
// Dlatego na początek policzymy ile ścieżki (od 0 do 1) ludek przejdzie po 1 klatce
var path_spd = 1 / path_get_length(path_index);

// Mnożąc prędkość 1 klatki na ścieżce przez 20 możemy "przewidzieć" pozycję po 20 klatkach
var predict = path_spd * speed * 20;

// Instancje mają zmienną wbudowaną path_position
// Zwraca ona aktualną pozycję instancji na ścieżce (od 0 do 1!)
var from_pos = path_position;
var to_pos = from_pos + predict;

// Liczymy przewidywaną pozycję x/y na ścieżce
var to_x = path_get_x(path_index, to_pos);
var to_y = path_get_y(path_index, to_pos);


Funkcje te można znaleźć w doksie:
https://docs.yoyogames.com/source/dadiospice/002_reference/paths/index.html
https://docs.yoyogames.com/source/dadiospice/002_reference/paths/path information/index.html

Nie testowałem tego więc mogą być jakieś niedociągnięcia, ale powinieneś załapać koncept ;)

  • Lubię (+1) 1
  • Super (+1) 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ę
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

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

×
×
  • Dodaj nową pozycję...