Skocz do zawartości

Dziwny wynik funkcji distance_to_point


ZeroXbot

Rekomendowane odpowiedzi

Chciałem zacząć pracę nad AI do mojej gry (wyścigowej), więc wmyśliłem sobie, że będzie to się opierało tak jakby na checkpointach tylko, że takich "specjalnych" dla AI. (takie jakby od punktu do punktu) Utworzyłem obiekty AIch_<liczba> na początek 3. Porozstawiałem je po mapce, a nastepnie w stepie czołgu AI dałem:

GML
deactivate-=1

axx = x + sin( degtorad( direction + 90 ) ) * 25;

ayy = y + cos( degtorad( direction + 90 ) ) * 25;

if (place_empty(axx,ayy)) then speed+=global.model[global.player[0],2];

dis=distance_to_object(c);

 

direction=point_direction(x,y,c.x+ random(10)-5,c.y+ random(10)-5);

if(deactivate<=0)

{

if (dis<=6)

{

deactivate=20;

i+=1;

}

}

Wczesniej jeszcze w create zadeklarowałem ww. zmienne. Są to:

c-tablica z nazwami checkpointów o indeksie 'i' równym zero na początku

deactivate-czas po którym kolizja z checkpointem może się odbyć ponownie (zrobiłem to po to, aby 'i' nie rosło w każdym stepie o jeden podczas spełnionego warunku)

dis-odległość do checkpointa.

dis zadeklarowałem specjalnie, żeby sprawdzić w debugu czemu to niedziała (zmienna 'i' się nie zmienia). Sprawdzam, patrzę i okazuje się, że dis wynosi jakieś 142 tysiące! O co chodzi?!

Odnośnik do komentarza
Udostępnij na innych stronach

Tak, nawet mają kolor purpurowy (nazwy tych obiektów), co jak wiesz oznacza, że to jest obiektem.

i nie doublepostuj.

Następnym razem telepatycznie poinformuję wszystkich, że jeszcze nikt mi nie odpowiedział na temat w dodatku znajdujący się w drugiej dziesiątce tematów (napewno każdy o nim pamięta).

 

ED:

Witam!

 

Poszukuje grafiki krwi czyli różnych plam, rozbrysgów itp :D

 

Odświeżam...

 

Porzebuje tej grafiki.

Ja chociaż poczekałem 24 godziny...

Odnośnik do komentarza
Udostępnij na innych stronach

Wpisałem id i zadziałało, ale nie rozumiem, dlaczego jedzie w stronę tego obiektu, który utworzyłem w roomie, a odległośc pobiera z skądś indziej w dodatku przekraczającą wielkość rooma jakieś 35 razy (room ma 4000x4000, a odległość wynosiła 142000).

Regulamin to regulamin, a to, że nikt nie odpisał oznacza tyle, że nikt nie zna odpowiedzi na to pytanie.
Może ktos ten temat przeoczył, zapomiał o nim (bo zainteresował się innym). Pozatym wypowiadasz się jakbyś mówił za wszystkich. Dlaczego na przykład Yoda napisał posta wcześniej?

A, i nie usprawiedliwiaj się tym, że inni robią to samo.
Ponieważ Lordis doublepostnął, żeby odświeżyć, nie dostał warna, a o odświeżaniu w regulaminie nic nie pisze to sądziłem, że wolno odswieżać.
Odnośnik do komentarza
Udostępnij na innych stronach

Odświeżanie tyczy się starych tematów (ale nie archaicznych typu 1-3 lata - za to jest warn) ale i tak ciesz się że nie dostałeś warna za dubla. Niekiedy modzi i admini mają lepszy dzień i przymykają na to oko, więc nie nadużywajmy ich dobroduszności i nie kontynuujmy tej rozmowy. Pozdro

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