eXo Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 Mam problem z pewną"akcją".Otóż nie wiem jak zrobić,by kiedy obiekt 1 koliduje z obiektem 2 , obiekt 2 tracił stopniowo energię,ale tylko kiedy gracz sterujący obiektem 1 wciskał alt.W grze wyglądało by to na uderzanie mieczem. Mam również drugie pytanie:jak zrobić by obiekt 3,kiedy koliduje z obiektem 5 tracił energię 20%. Szukałem tego w szukajce,na portalu i nie mogłem znaleźć.Dziękuję z góry za odpowiedź bo to jedyne co mi jeszcze potrzeba do ukończenia gry. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 Logiczne myślenie :) . W kolizji obiektu 1 z 2: if keyboard_check( vk_alt ) { other.zycie -= 0.1; } W kolizji obiektu 3 z 5: other.energia -= other.energia * 0.2; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Yoda Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 Ja bym zrobił tak. W evencie Alt daj żeby sprawdzał czy dystans do obiektu 1(distance_to_object) jest mniejszy niz np. 5. Jesli tak to zycie -= np. 5 A co do drugiego to nie wiem jak się liczy na procentach. Nigdy tego nie używałem :P EDIT: Można też takjaknapisał MIstrzunio (czyli z keyboard_check) jak kto woli :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
eXo Opublikowano 17 Lipca 2007 Autor Udostępnij Opublikowano 17 Lipca 2007 dziękuję,tylko że muszę zrobić grę od nowa(reset kompa),więc skorzystam troszkę później. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 Yoda, nie chcę się spierać, ale to już lepiej w Step zrealizować. Nie ma nic gorszego jak używanie tych bezsensownych Eventów klawiszów, skoro istnieją fukcje typu: keyboard_check() . Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
eXo Opublikowano 17 Lipca 2007 Autor Udostępnij Opublikowano 17 Lipca 2007 Misztrzunio-u mnie twój kod nie działa.Mógłbyś podać jakąś alternatywę? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 Obydwa nie działają? Nic się nie dzieje? W Step obiektu 1: n = instance_nearest(x,y,obiekt2); if distance_to_object(n) <= 2 && keyboard_check(vk_alt) { n.nazwa_zmiennej -= 1; } W Create obiektu 2: nazwa_zmiennej = ilosc_zycia; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 17 Lipca 2007 Administratorzy Udostępnij Opublikowano 17 Lipca 2007 ale wywala ci jakiś błąd? czy po prostu nie te zmienne podstawiłeś i dla tego nie działa ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
eXo Opublikowano 17 Lipca 2007 Autor Udostępnij Opublikowano 17 Lipca 2007 to jest dla mnie czarna magia... to mi wywaliłohttp://img524.imageshack.us/img524/3412/scras6.jpg Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pentalinio Opublikowano 17 Lipca 2007 Udostępnij Opublikowano 17 Lipca 2007 O jej. Aby przechowywać dane dotyczące punktów musisz zadeklarować zmienną, najlepiej w Create. W create obiektu 2 napisz np. zycie = 100; Nastawia zmienną o nazwe zycie na 100, czyli 2 obiekt będzie miał 100 pkt zycia. W step obiektu 1 napisz: n = instance_nearest(x,y,obiekt2); if distance_to_object(n) <= 2 && keyboard_check(vk_alt) { n.zycie-= 1; } Czyli jeżeli (if) będzie 2 piksele (distance_to_object) obok obiektu 2 lub mniej (<=) i (&&) przyciśniesz alt, to jego zycie (zmienna) będzie o 1 mniejsza :) . I ot cała filozofia. 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ę