YoshiPoland Opublikowano 7 Czerwca 2016 Udostępnij Opublikowano 7 Czerwca 2016 Witam, napotkałem ostatnio pewien problem. Kiedy wciskam lewy przycisk, a następnie prawy to postać zmienia kierunek z lewej strony na prawą. Lecz gdy wciskam prawy przycisk, a następnie lewy to postać nie zmienia kierunku i idzie dalej w prawą stronę. Nie wiem jak to naprawić, mój kod znajduje się poniżej. Liczę na pomoc ;p GML if (keyboard_check(vk_left)) { image_speed=0.2; sprite_index=spr_player_move image_xscale=-1 } if (keyboard_check(vk_right)) { image_speed=0.2; sprite_index=spr_player_move image_xscale=1 } if left && xspeed>-max_x { xspeed=-2; image_xscale=-1 } if right && xspeed<max_x { xspeed=2; image_xscale=1 } if keyboard_check_released(vk_left) or keyboard_check_released(vk_right) { sprite_index=spr_player_stay } if xspeed<0 && !left then xspeed+=frc; if xspeed>0 && !right then xspeed-=frc; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am vader Opublikowano 22 Czerwca 2016 Udostępnij Opublikowano 22 Czerwca 2016 Ponieważ kod ruch w prawo wykonuje się najpóźniej, co znaczy, że nadpisze kod w lewo. Jeżeli nie chcesz żadnego ruchu przy obu przyciskach po prostu wprowadzaj zmiany jesli "wcisnal w lewo ale nie w prawo" albo "wcisnal w prawo ale nie w lewo". Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MaxGaming Opublikowano 22 Czerwca 2016 Udostępnij Opublikowano 22 Czerwca 2016 Nie testowałem, ale powinno działać :) GML if (keyboard_check(vk_left)) { image_speed=0.2; sprite_index=spr_player_move image_xscale=-1 } if (keyboard_check(vk_right)) { image_speed=0.2; sprite_index=spr_player_move image_xscale=1 } xspeed = (left && xspeed>-max_x)*-2 + (right && xspeed<max_x)*2; //będzie przybierać odpowiednie wartości -2, 2 lub 0(zero jeżeli oba przyciski naciśnięte). W jednej linijce i chyba najoptymalniej if keyboard_check_released(vk_left) or keyboard_check_released(vk_right) { sprite_index=spr_player_stay } if xspeed<0 && !left then xspeed+=frc; if xspeed>0 && !right then xspeed-=frc; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę