Skocz do zawartości

Pomoc przy animacji


Rekomendowane odpowiedzi

Witam Serdecznie, mam do Was ogromną prośbę, otóż chciałbym zrobić animację z sekwencji obrazków jednego sprite, ale aby była ona odtworzona tylko jeden raz, np. mam box, który się rozwala, załóżmy, że ma 20 obrazków (image_index) i chcę aby animacja zaczęła się od pierwszego i skończyła na 20 i tak już pozostała.

Mam jeszcze drugie pytanie, co zrobić, aby po przejściu do innego pokoju nie kasowały mi się globalne, np, global.level w pokoju pierwszym mam 3, natomiast gdy przejdę do następnego ma on wartość startową.

Pozdrawiam i z góry dziękuję za wszelką pomoc. :)

Odnośnik do komentarza
Udostępnij na innych stronach

w evencie animation end daj:

image_speed=0

image_index=20

(pewnie jest to nieoptymalne, wiem)

 

co do drugiego to właśnie to jest sens istnienia globalnych - aby nie kasowały się po przejściu do innego pokoju. pewnie masz jakiś obiekt, który ustawia ci zmienną globalną w tym drugim pokoju.

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, dziękuję za odpowiedź, bardzo mi pomogłeś :), nasunęło mi się jeszcze jedno, mianowicie: Co zrobić, aby obiekt podążał za viewem, np mam jakiś healthbar i chcę, aby on był cały czas w prawym górnym rogu, robiłem to za pomocą draw, ale wtedy jest to tylko sprite, a ja chciałbym, aby to był obiekt. Opcja z zaznaczeniem ,,object following'' w roomie też odpada, ponieważ jest aktualnie używana przez gracza.

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, dziękuję za odpowiedź, bardzo mi pomogłeś :), nasunęło mi się jeszcze jedno, mianowicie: Co zrobić, aby obiekt podążał za viewem, np mam jakiś healthbar i chcę, aby on był cały czas w prawym górnym rogu, robiłem to za pomocą draw, ale wtedy jest to tylko sprite, a ja chciałbym, aby to był obiekt. Opcja z zaznaczeniem ,,object following'' w roomie też odpada, ponieważ jest aktualnie używana przez gracza.

 

Jeżeli korzystasz ze Studia, istnieje taki event jak Draw GUI. Wszystko, co tam rysujesz, jest wyświetlone na wierzchu całego obszaru roboczego gry, niezależnie od widoków. Jest to o tyle dobre, że rozdzielczość GUI w pikselach można dowolnie skalować (domyślnie jest to, odpowiednio, room_width i room_height), co zdecydowanie się sprawdza przy dopasowywaniu się gry do rozdzielczości ekranu.

 

Jeżeli coś rysujesz (czyli coś się będzie działo w eventach Draw GUI/Draw/obydwu z nich), nadpisuje to domyślne rysowanie sprite (które uwzględnia sprite_index, skalowanie, przeźroczystość, animacje etc). Rozwiązaniem jest

 

GML
draw_self();

 

w evencie Draw; narysuje nam wszystko to, co jest rysowane bez obecności skryptów w którymkolwiek z wymienionych eventów. Może być umieszczone pod i nad innymi rysowanymi elementami.

Odnośnik do komentarza
Udostępnij na innych stronach

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