Milky Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 Witam! Oto mój problem. Robie właśnie bijatykę i chciałem, aby po wciśnięciu CTRL, zmieniał sie Sprite na np. Ludzik_Attack. Wydaje się proste, ale próbowałem na klockach i w kodzie i nie idzie. Wykorzystałem chodzenie z przykładu Ruch Platformowy, Tymona. Wszystko dobrze, tylko nie wiem jak to zrobić. Tymon wykorzystał tam różne skrypty animacji, a ja sie jeszcze trochę w tym nie łapie. Bardzo proszę o pomoc, co zrobić, aby po wciśnięciu danego klawisza zmieniał się sprite? Oto link do tego przykładu. Z góry dzięki za pomoc! Pozdrawiam, Milky! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Harv Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 LOL, dokumentacja... Naucz się szukać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sirluki Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 LOL, dokumentacja... Naucz się szukać. Naucz się pomagać <_< Create: GML if (keyboard_check(vk_control)) sprite_index = sprite; //sprite akatku albo po prostu w evencie Key press -> control GML sprite_index = sprite; //sprite akatu :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Milky Opublikowano 26 Kwietnia 2008 Autor Udostępnij Opublikowano 26 Kwietnia 2008 Ech... przecież czytałem to parę razy... Myślę, że nie wiesz o co mi chodzi... Przecież nie zrobię tej gry na klockach... Inne sugestie? Edit// Och wyprzedziłeś mnie! :D Zaraz sprawdzę, lecz wydaje mi sie, że tak próbowałem :) Dzięki! Edit2// Niestety nie działa, a szkoda. Próbowałem tak, ściągnij przykład Tymona zobaczysz na czym to polega :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Bixon Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 Jak nie działa ? Co wyskakuje ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Milky Opublikowano 26 Kwietnia 2008 Autor Udostępnij Opublikowano 26 Kwietnia 2008 Nic nie wyskakuje, po prostu kiedy naciskam klawisz nic sie nie dzieje. Zrobiłem tak, jak mówił Sirluki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
fervi (Skovv) Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 A może change_sprite? czy sprite_change, nie wiem jak było ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sirluki Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 A może change_sprite? To nic nie da. Tymon zrobił to inaczej w przykładzie. Narazie kombinuje, może się uda :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 Pod animacjami dodaj jeszcze jedną animacje w ten sposób: GML // Animacje animationInit(); animationStoi = animationAdd( sGraczStoi, 0.5 ); animationIdzie = animationAdd( sGraczIdzie, 0.4 ); animationSkacze = animationAdd( sGraczSkacze, 0.6 ); animationAtak = animationAdd( Ludzik_Attack, 0.5); A w end step zamień na: GML // Kierunek animacji if( speedH != 0 ) image_xscale = sign( speedH ); // Gracz jest w powietrzu if( place_free( x, y + 1 ) ) animationPlay( animationSkacze ); else // Gracz jest na platformie { // Gracz stoi if( speedH = 0 ) && !keyboard_check(vk_control) animationPlay( animationStoi ); if (keyboard_check(vk_control)) {animationPlay( animationAtak );} else // Gracz porusza się animationPlay( animationIdzie ); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Milky Opublikowano 26 Kwietnia 2008 Autor Udostępnij Opublikowano 26 Kwietnia 2008 Wszystko działa, tylko, że bohater nie chce sie zatrzymać :P Znaczy biega w miejscu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 No to logiczne że trzeba użyć else... E: GML // Gracz jest w powietrzu if( place_free( x, y + 1 ) ) animationPlay( animationSkacze ); else animationPlay( animationStoi ); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Milky Opublikowano 26 Kwietnia 2008 Autor Udostępnij Opublikowano 26 Kwietnia 2008 No tak, lecz teraz bohater ciągle biega w miejscu i nie zmienia sprite przy skakaniu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 26 Kwietnia 2008 Udostępnij Opublikowano 26 Kwietnia 2008 wybacz mój błąd zrób tak: GML // Kierunek animacji if( speedH != 0 ) image_xscale = sign( speedH ); // Gracz jest w powietrzu if( place_free( x, y + 1 ) ) animationPlay( animationSkacze ); else // Gracz jest na platformie { if (keyboard_check(vk_control)) {animationPlay( animationAtak );} if ( speedH = 0 ) && !keyboard_check(vk_control){animationPlay( animationStoi ); } // Gracz porusza się if ( speedH != 0 ) && !keyboard_check(vk_control) animationPlay( animationIdzie ); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Milky Opublikowano 26 Kwietnia 2008 Autor Udostępnij Opublikowano 26 Kwietnia 2008 Ok, działa. Wielkie dzięki! Sam nigdy bym sobie z tym nie poradził. Jeszcze raz dzięki! 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ę