Raqe Opublikowano 12 Lutego 2012 Udostępnij Opublikowano 12 Lutego 2012 Witajcie! 1. Napotkałem problem, który nie za bardzo wiem jak obejść. Otóż posiadam koszary, w których rekrutuję ludzi. Problem polega na tym, że tworzą się oni jeden na drugim, a przez to nie mogą się ruszyć (chodzą za pomocą mp_potential_step). Wszystkie rozwiązania które próbowałem zastosować zawodzą... Próbowałem zrobić by nowonarodzeni żołnierze podążali przez chwilkę do jakiegoś punktu w okolicy baraków, jednak ostatecznie do tego miejsca robiła się kolejka, i znów ostatni w kolejce "zrastał się" z nowym rekrutem. 2. Kolejne pytanie: Jak inaczej zrobić system poruszania? Na razie jest tak, że zaznaczam ludzi i przez kliknięcie na mapę każę im iść. Oni zapisują sobie cel w zmiennych wewnętrznych i idą, a gdy są przy nim (około 20 pikseli) to się zatrzymują. Problem w tym, że im więcej ludzi próbuje dojść tym więcej "tańczy" dookoła punktu w którym już stoją ludzie i zajmują miejsce. Z góry dziękuję i pozdrawiam! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 12 Lutego 2012 Udostępnij Opublikowano 12 Lutego 2012 1. Generalnie mp_potential_step sam z siebie to mało. Przydało by się stworzenie jakiejś siatki po której Twoje jednostki mogły by się poruszać. Przejrzyj funkcje mp_... 2. Grupuj. Niech grupa podąża do celu w jakiejś formacji. Bo tu problemem jest, że każda jednostka ma ten sam punkt docelowy no i próbuje go osiągnąć. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Raqe Opublikowano 12 Lutego 2012 Autor Udostępnij Opublikowano 12 Lutego 2012 Dziwnie trochę to rozwiązałem. Całą mapę mam podzieloną na pola 32x32, pola te podzieliłem jeszcze na 4, i w nich ustawiam jednostki (8x8). Po prostu jeśli reszta z dzielenia zmiennych cel_x i cel_y (odpowiadających za cel podróży jednostek) nie wynosi zero to odejmuję po 1 i sprawdzam jeszcze raz. Niewiem na ile to jest dobre rozwiązanie, bo tylko jedna jednostka osiąga cel. Teraz jednak mam więcej danych odnośnie położenia jednostek. Istnieje funkcja, która pozwoli mi określić czy w danym punkcie stoi już jednostka? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 12 Lutego 2012 Udostępnij Opublikowano 12 Lutego 2012 Istnieje funkcja, która pozwoli mi określić czy w danym punkcie stoi już jednostka? instance_position(x,y,object) collision_point(x,y,object,prec,notme) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Raqe Opublikowano 12 Lutego 2012 Autor Udostępnij Opublikowano 12 Lutego 2012 Pomocne. Już jednostki lepiej ogarniają jak mają się poruszać, ale to jeszcze nie wszystko... Jeśli jednostka pojawi się w polu do którego miały iść wszystkie inne, to niewiem w jaki sposób kazać im wyszukać kolejnego wolnego miejsca, którego najbliżej są i które jest najbliższe temu zajętemu... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 12 Lutego 2012 Udostępnij Opublikowano 12 Lutego 2012 Musisz sprawdzić czy w miejscu, do którego idzie jednostka, jest wolne. Jeśli nie jest to powinna poszukać innego wolnego miejsca lub się zatrzymać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę