NukeBoards

Pomoc - Prędkość zależna od odległości

Tasmpol - 20-11-2005, 22:16
: Temat postu: Prędkość zależna od odległości
Po raz kolejny (Ech... -_- ) zwracam się z prośbą o pomoc. Tym razem chodzi mi o cos takiego:
Bohater rusza się w 8 kierunkach. Na górze pojawia się wróg, schodzi w dopóty, dopóki na poziomie nie będzie bohatera. Jak bohater będzie nad nim to zacznie lecieć w góre. To umniem zrobić, jednak wygląda to nieciekawie - chodzi mi o coś dynamiczniejszego - im dalej wróg jest ode mnie, tym szybciej leci na osi Y i stara się ze mną zrównać. Jak do mnie się zacznie przybliżać to hamuje. I teraz, jak to zrobić?
Omenski - 20-11-2005, 22:52
:
Z tego co mówisz nasuwa się coby wprowadzić przyspieszenie pionowe dla obiektu zbliżającego się.
Najprościej:
1) Ay = (Obiekt1.pozycjaY - Obiekt2.pozycjaY)
2) Vy = Vy + Ay
3) Obiekt2.pozycjaY = Obiekt2.pozycjaY + Vy.
Obiekt2 - przeciwnik goniący, obiekt1 - gracz, Ay, Vy - jakieś liczniki lub wartości

Do tego dla odpowiedniego efektu dobrze jest wsprowadzić odpowiednie współczynniki.
Yyyy... trzeba to trochę przerobić by przeciwnik hamował zanim jego pozycja Y jest równa pozycji gracza. Można to zrobić sprawdzając różnicę ich odległości, w przypadku małej różnicy ustawiamy Ay tak by zmniejszała |Vy|.
To tak ogólnie, żeby już nie odwalać całej roboty :) .
Tasmpol - 20-11-2005, 22:59
:
Ja myslałem o czymś takim, obliczamy odległość między Bohater a Wróg i potem dzielimy ją przez np. 100, a o otrzymaną wartość przesuwamy wroga. Jednak, to raczej nie zadziała.
W jednej grze było tak, że im dalej był kursor od piłki, tym szybciej piłka doń leciała - tam jest prawie gotowe rozwiązanie, użyte do tego celu było Advenced Math.
msg - 21-11-2005, 14:53
:
Tasmpol - twój pomysł by wypalił, ale tylko gdy wróg będzie się zbliżał od dołu, bo gdy będzie nadchodził z góry to wynik Twojego obliczenia będzie ujemny i wróg zacznie się prawdopodobnie cofać.
Dominika - 21-11-2005, 15:17
:
Tasmpol ta gra to był chyba golf autorstwa Wolf :)
Fadex - 21-11-2005, 16:04
:
To był mój przykład!!! LOOK!!
To przykład stworzony dla gry MichU (blow ball)
Nudziło mi się, więc zrobiłem ten przykład:
http://rapidshare.de/files/7948160/kulka.rar.html
Cieszę się, że w czymś mogę pomóc...
Szybkość określamy na tak jak tam jest, a kierunki oznaczamy na A (góra).
Tasmpol - 21-11-2005, 17:18
:
Aj, to to było.
Okazuje się, że problem był prosty, te rozwiązanie, które podałem wcześniej okazało się właśnie dobre. Niepotrzebnie zakładałem temat ;) Dobra, problem rozwiązany.