hit Temat założony przez niniejszego użytkownika |
[Allegro] Animacja postaci w różnych kierunkach. » 2013-09-22 16:21:50 Witam,
próbuję zrobić animację postaci w mojej małej gierce, znalazłem w internecie taki sprite:
http://oi43.tinypic.com/oqzt5z.jpg
I zastanawiam się jak przypisać konkretne części tego sprite'a do konkretnych ruchów. W kursie który jest na tej stronie jest napisane, że można jakoś podawać fragmenty za pomocą funkcji blit, ale mi to nie wychodzi. No i nie wiem jak zrobić, żeby animowały się konkretne rzeczy dla konkretnego klawisza. Proszę o pomoc. |
|
pekfos |
» 2013-09-22 16:31:16 |
|
hit Temat założony przez niniejszego użytkownika |
» 2013-09-22 16:38:19 Ok w porządku, zaraz będę próbował. A co do drugiej części? Jak to poprzypisywać do konkretnych klawiszy?
Edit:
masked_blit działa poprawnie, chociaż w funkcji draw_sprite pokazuje, że nie mogę jej bezpośrednio użyć. Jest jakiś sposób, czy trzeba stworzyć bitmapki? |
|
pekfos |
» 2013-09-22 16:46:44 |
|
Gabes |
» 2013-09-22 17:00:15 Jedna klatka to obrazek 36x36 pikseli, czyli tworzysz zmienną: gdy w prawo to zmienna=36, lewo 108,itd widać to na obrazku, dodajesz do poz. y w masked_blit.A poszczególne klatki z danego kierunku +36 do x w określonej jednostce czasu.Może trochę rozjaśni o co mi chodzi Animacja |
|
hit Temat założony przez niniejszego użytkownika |
» 2013-09-22 17:02:43 Czytałem ten kurs i rozdział o animacjach wielokrotnie. Już zauważyłem swój błąd, masked_blit nie jest wykorzystywany przez draw_sprite tylko go skutecznie zastępuje. Klawisz też udało mi się przypisać co w sumie jest banalne, powinno się to znaleźć w tym kursie :) To póki co dziękuję za pomoc. |
|
hit Temat założony przez niniejszego użytkownika |
» 2013-09-22 17:13:15 Gabes, chodziło o to, żeby postać się poruszała wtedy jak coś wcisnę, a nie cały czas. Zwykły if rozwiązał sprawę tylko że musiałem go dodać za pętlą while(speed>0). Teraz postać mi się animuje prawie poprawnie. W międzyczasie animacji podczas ruchu, miga klatka kiedy postać stoi. Wynika to z tego:
masked_blit( bomber, bufor, 70, 0, bomber_x, bomber_y, 36, 36 );
jednak jak to usunę, to jeśli się nie ruszam to w ogóle nie wyświetla postaci. Zatem gdzie powinienem to umieścić, żeby było ok?
Edit: Jak tak sobie myślę, to wystarczy sprawdzać czy żaden klawisz nie jest wciśnięty. Poszukam informacji. Chyba, że ktoś z Was wie jak to sprawdzić? |
|
pekfos |
» 2013-09-22 17:39:34 |
|
« 1 » 2 |