Skocz do zawartości

losowa grafika w sprite


Rekomendowane odpowiedzi

Witam jak zrobić by po stworzeniu obiektu losowo wybrał jeden z obrazów w sprite. Próbowałem zastosować tu

GML
image_index = choose (0,1,2,3,4,5,6,7..)
ale niestety nie działa. Poza tym jest ograniczenie do 15 fragmentów w nawiasie, a ja mam aż 53 grafiki.

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Zależy czy twoje grafiki to image czy subimage. Jeżeli to subimage (czyli kilka grafik w jednym sprite) to twój kod by działał. image_index określa aktualny subimage czyli jakby klatkę animacji.

 

sprite_index pozwala na przypisanie całego sprite do obiektu. W choose() musisz podawać całe nazwy grafik. Ale jest fajna sztuczka którą Cię nauczę:

GML
sprite_index=spr_pierwsza_z_losowych_grafik + irandom(ile jest losowych grafik)

W ten sposób nie masz limitu 16 z choose. Warunek jest taki że grafiki muszą być ułożone jedna po drugiej w drzewku asobów.

Odnośnik do komentarza
Udostępnij na innych stronach

GML
image_speed=0;

image_index=irandom(53);

Wiem, że jest jakaś funkcja, która łączy w sobie te dwie, ale nigdy jej nie pamiętam, a nie ma jej w dokumentacji.

 

 

Threef, napisał jeden z losowych obrazków w sprite, czyli chyba chodzi o image_index.

Odnośnik do komentarza
Udostępnij na innych stronach

GML
image_speed=0;

image_index=irandom(53);

Wiem, że jest jakaś funkcja, która łączy w sobie te dwie, ale nigdy jej nie pamiętam, a nie ma jej w dokumentacji.

 

 

Threef, napisał jeden z losowych obrazków w sprite, czyli chyba chodzi o image_index.

image_single

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