Skocz do zawartości

Ludzik z paru objectów...


Rekomendowane odpowiedzi

Jak zrobić aby ludzik zkładał się z 3 objectów (głowy, tułowia i nóg)??. I jeśli jedna z tych rzeczy oberwie to wszystkie giną, ale jak będzie więcej takich ludzików jak oberwie głowa jednego to inne na tym nie ucierpią?? Próbowałem z ID tylko jakoś te nie mogłem zrobić zeby np.: tułów wiedział ze ten ID to od jego głowy, a nie jakiegoś innego, czyli jak głowa oberwała to gineła ale nogi i tółów nic sobie z tego nie robiły bo niewiedziły ze to ich głowa dostała... Jak to zorbić??

Odnośnik do komentarza
Udostępnij na innych stronach

Quetzacotl chodzi ci o if kolizja free to rób to i to ... i takie tam blebleble ? Jeżeli tak to ja bym nie polecał tej metody. Może lepiej zrobić to na podstawie odległości od obiektu. Distance_to_object czy jakoś tak :D

Odnośnik do komentarza
Udostępnij na innych stronach

Dobra z tamtym już sobie poradziłem (Gooman).. Ale mam kolejny problem. Oto fragment kody poruszania postacią:

if keyboard_check(vk_right)
global.s.x+=1;

if keyboard_check(vk_left)
global.s.x+=1;

 

Global.s to id aktualnie wybranej postaci. Id wszystki postaci mam zapisany w tablicy. I niewiem co zrobić bo jak mam 5 postaci to kod robi x+=1*5 przez co zaznaczona postać porusza się co 5 pikseli a nie co 1. Jak temu zaradzić, żeby postać poruszała się o jeden piksel?

Odnośnik do komentarza
Udostępnij na innych stronach

Wydaje mi się że kod wali się z prostej przyczyny... uzyćia do chodzenia zmiennej globalnej ? oO

Jeżlei robisz ruch dla jednej jednostki niewolno używać zmiennych globalnych bo wtedy jednostki te bedą poruszać się wszytskie naraz w tym samym kierunku. A jeżeli jest ich więcej niż1 wtedy są wysyłane 2 komendy naraz = global.s.x + 1 i jeszcze raz przez co jednostka poruszy sie 2-krotnie...

 

Edit... Hmmm więc to kod do wybierania jednostki ? dość dziwne... Jednak nadal radze zastosować zwykłe zmienne. Funkcje globalne stosuje się [ przynamniej ja :P ] tylko w ostateczności gdy należy przenieść ważniejsze wartości do innych roomow. Więc równie dobrze wybieranie jednostki można rozwiązać poprzez kliknięcie myszką na obiekt np.

if (global.select_can=true) { meSelected=true;};

a w stepie [ bo widze że go użyłeś :P ]

if ( keyboard_check(vk_left) && meSelected=true ) {
//ruch jednostki }

Jeżeli zaś przedtem była wybrana jednostka to dajemy kod w eventcie - Mouse -> RightPressed

meSelected=false;
global.select_can=true;

Te 3 kodziki mówią nam o tym że jeżeli klikniemy prawym przyciskiem myszy na jednostke ta automatycznie zostanie wybrana. Jeżeli zaś klikniesz na nią ponownie prawym przyciskiem myszy, ta przestanie być aktywana i w tym momencie możesz wybrać kolejną jednostkę. Oczywście jeżeli chcemy bardziej efektownego działania nalezy się tym troche pobawić :P [ Jeżeli kod niedziałą to sry, ale pisany z pamięci... ]

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 tygodnie później...

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