Skocz do zawartości

Problem z pętlami


Rekomendowane odpowiedzi

Moim celem jest obrócenie sprita za pomocą zmiennej body_direction. Chce żeby to był płynny obrót o 360 stopni. Dzieje się to po naciśnięciu klawisza z tym że gdy obrót trwa nie można zacząć obrotu póki się nie skończy. Chce zrobić tą animacje za pomocą skryptu.

A teraz co już mi się udało wydukać:

Niby proste zrobię pętle i po sprawie...

Mam:

if keyboard_check(vk_shift)
{
    if ( can_hit )
    {slash()};
}

 

can_hit jest to zmienna zapobiegająca ponownemu uruchomieniu animacji obrotu. Ale w sposobie jaki podam i tak nie mam gdzie jej ustawić z powrotem na 1. Ale to zobaczycie.

 

Skrypt Slash powstawiałem już liczby zamiast argumentów ale chce mieć argumenty do łatwego modyfikowania dlatego chce zrobić animacje w skrypcie:

 

do
{body_direction-=6;}
until (body_direction<=-360);

 

Z tego co rozumiem pętle... a widocznie ich nie rozumiem ;) powinna ona się wykonywać aż wyrażenie w until będzie na true.

Ale jak się okazuje po puszczeniu klawisza pętla też zostaje przerwana ja natomiast chciałbym żeby dokończyła ona obrót a po obrocie: body_direction=0

Drugim problem pozostaje jeszcze can_hit jeżeli ustawie na początku skryptu na 0 oznajmiając ,że jest wykonywany obrót to skoro jak puszcze klawisz pętla się nie wykonuje to tak samo w przypadku gdy can_hit=0 a po obrocie zmienna powinna wrócić z powrotem na 1.

 

Próbowałem już różnych pętli, może coś źle zrobiłem. Nie wiem. Ale różne dziwne rzeczy mi się działy. A więc proszę o pomoc. Nie musi być tym sposobem który napisałem jeżeli jest jakiś inny. Proszę o pomoc!

 

Z góry dzięki,

Tomalas

Odnośnik do komentarza
Udostępnij na innych stronach

Nie da rady... bo chce żeby po jednorazowym wciśnięciu klawisza zrobił mi pełny obrót. Więc muszę zrobić pętle aż zrobi ten pełny obrót.

Lol. Jeżeli chcesz rozlożyć czynność w czasie to użyj timeline. Pętla da ci wykonanie tego pomiędzy dwoma czyszczeniami ekranu, czyli nie zauwazysz tego.

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