Skocz do zawartości

Poruszanie z animacją


Rekomendowane odpowiedzi

Witam.

Coś mi dzisiaj nie idzie, dlatego znowu zwracam się z pomocą do was, napisałem już z tysiąc niepoprawnych kodów, a tych poprawnych nie moge znaleźć, wytłumaczcie, co ja zrobiłem źle

GML
if keyboard_check( ord ("A"))

{

sprite_index=spr_Kaban_animation;

image_speed=0.4;

if place_free(x-4,y)

{x-=4}

speed=0

}

 

Chodzenie ma być na WSAD, często było tak, że animacja się odpalała ale bohater stał w miejscu.

Odnośnik do komentarza
Udostępnij na innych stronach

Napisałem teraz w ten sposób i animacja działa tak jak powinna ale bohater stoi w miejscu zamiast iść w lewo

GML
if keyboard_check( ord ("A"))

{

sprite_index=spr_Kaban_animation;

image_speed=0.4;

if place_free(x-4,y)

{x-=4}

speed=0

}

if keyboard_check_released( ord ("A"))

{

sprite_index=spr_Kaban;

image_speed=0.4;

}

Odnośnik do komentarza
Udostępnij na innych stronach

Fakt, źle przepisałem kod z FAQ ale i tak jest problem, ponieważ gdy naciskam A to bohater stoi w miejscu z odpaloną animacją, a gdy puszcze idzie w lewo ale bez animacji

GML
if keyboard_check( ord ("A"))

{

speed=3

sprite_index=spr_Kaban_animation;

image_speed=0.4;

}

if keyboard_check_released( ord ("A"))

{

sprite_index=spr_Kaban;

image_speed=0.4;

}

Odnośnik do komentarza
Udostępnij na innych stronach

Zmieniłem kod na taki

GML
if dir = 1

{

image_speed=0.5

sprite_index=spr_Kaban_animation

}

else

if dir = -1

{

image_speed=0.5 //możesz zmniejszyć, wiadomo;]

sprite_index=spr_Kaban_animation

}

 

if keyboard_check(ord("A"))

{

dir=-1

if place_free(x-3,y)

{x-=3}

 

}

 

if keyboard_check(ord("D"))

{

dir=1

if place_free (x+3,y)

{x+=3}

}

if keyboard_check_released(ord ("A"))

{

image_speed=0

sprite_index=spr_Kaban

}

if keyboard_check_released(ord ("D"))

{

image_speed=0

sprite_index=spr_Kaban

}

Przy czym są plusy, moge już chodzić wraz z animacją lecz animacja jest ciągle aktywna, nawet jeśli puszcze przyciski A albo D

 

PS; w create bohatera dałem dir = 1

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if keyboard_check(ord("A"))

{

dir=-1

if place_free(x-3,y)

{x-=3}

}

 

if keyboard_check(ord("D"))

{

dir=1

if place_free (x+3,y)

{x+=3}

}

if keyboard_check(ord ("A")) or keyboard_check(ord ("D"))

//jezeli klawisz a lub d jest wcisniety

{

image_speed=.5//obrazek zmienia klatki(animacja)

sprite_index=spr_Kaban_animation//animacja chodzenia

}else//nie jest wcisniety zaden klawisz

{

image_speed=0//brak zmiany klatek(nie ma animacji)

sprite_index=spr_Kaban//obrazek bez ruchu

}

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