-[PhariseuS]- Opublikowano 13 Października 2006 Udostępnij Opublikowano 13 Października 2006 Witam! Piszę silnik RTS i mam pewien problem. Otóż chciałbym, żeby "oodział" tylu żołnierzy, ilu zaznaczę, udawał się w wyznaczone miejsce. To mi się udało. Oddział ten rozmieszcza się na obszarze prostokąta o wymiarach 80x40 (jako że silnik ten będzie w 2.5d; widok częściowo z przodu, częściowo z góry). Z tego też jestem zadowolony. Martwią mnie jednak te niezmienne rozmiary prostokąta, na którym oddział się rozmieszcza - chciałbym, żeby im większy oddział (więcej zaznaczonych ludków), tym większy był ten prostokąt. Każdy ludek ma zmienną "zaznaczony" - z wartością false lub true. I tu się pojawia moje pytanie. Chciałbym, żeby skrypt zliczał wszystkich ludków, którzy są zaznaczeni, i przez tę liczbę odpowiednio mnożył wymiary prostokąta (z tym sobie już poradzę :P:P). Trochę ch***owo wygląda prostokąt 80x40 na którym tłoczy się 200 ludzików. Zaznaczam, że używam GM5.3a (taaa... wierny retroguy ze mnie). Jeżeli taka funkcja zwracająca nie jest możliwa, to może jest jakiś inny sposób na rozmiary prostokąta zależne od ilości zaznaczonych kolesiów. Thanks from mountain xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matthew Opublikowano 13 Października 2006 Udostępnij Opublikowano 13 Października 2006 i = instance_count; ilosc = 0; while (i >= 0) { if (instance_id[i].object_index = zolnierz) { if (instance_id[i].zaznaczony) ilosc += 1; } i -= 1; } wartosc = wymiar * ilosc; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
BeWuO Opublikowano 13 Października 2006 Udostępnij Opublikowano 13 Października 2006 A gdzie zapamietujesz zaznaczonych zolnierzy? W jakiejs tablicy czy czyms? Czy zawsze idziesz po wszystkich i sprawdzasz czy ja zaznaczoe = true i dajesz akcje? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 13 Października 2006 Udostępnij Opublikowano 13 Października 2006 ilosc = 0; with(obiekty) { if( zaznaczony ) { other.ilosc += 1; } } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
-[PhariseuS]- Opublikowano 13 Października 2006 Autor Udostępnij Opublikowano 13 Października 2006 http://www.gmclan.org/up21_4_bimberts.html Oto i silnik w baaaaardzo podstawowej wersji :P Dzięki wam wielkie za pomoc! Jeżeli ktoś będzie chciał tego użyć (co jednak ze względu na pewną "skomplikowataść" wymaga "duzio siamokontrora i ćbicień z sensei" xD), feel free, tylko niech mi napomknie na PW lub gg :P Grafik jednak sam będę używał, więc nunu-ruszać :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pieter Opublikowano 14 Października 2006 Udostępnij Opublikowano 14 Października 2006 dorób jeszcze żeby jednostki się w szeregach ustawiały :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
-[PhariseuS]- Opublikowano 14 Października 2006 Autor Udostępnij Opublikowano 14 Października 2006 Właśnie POJĘCIA NIE MAM jak to zrobić. Jeżeli ktoś ma to pojęcie, byłbym wdzięczny za pomoc! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matthew Opublikowano 14 Października 2006 Udostępnij Opublikowano 14 Października 2006 1. zapisujesz id zaznaczonych jednostek do tablicy gosc[gosc_index] i zwiększasz gosc_index o 1 2. obliczasz średnie x i średnie y 3. potem dla każdego zaznaczonego obliczasz odległość od śx i śy 4. współrzędne punktu docelowego obliczasz: punkt_docelowyx = punkt_docelowyx + odl_śx; punkt_docelowyy = punkt_docelowyy + odl_śy EDIT: whoops! to kod na ustawienie pozycji... pokombinuj z tym... 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ę