Dzień dobry,
Szukam pomocy w napisaniu mojego programu, w ktorym jedynym zadaniem ma byc poruszanie sie kwadraciku za pomoca wasd we wszystkie strony, jednak porusza sie on tylko prawo lewo. Czy moglby ktos pomoc mi i sprawdzic, co jest nie tak w kodzie. Jestem poczatkujacy i od dwoch godzin nie wiem co zrobilem zle :((
https://codepen.io/laniewski/pen/OJxBQya
0
2
Czemu tutaj masz downPressed==false; ???
if (e.key=="s"){
downPressed==false;
}
Analogicznie dla klawisza "w"
0
Dla ruchu w lewo i prawo masz... inaczej...
if(e.key == "d") {
rightPressed = true;
}
0
dziekuje slicznie XARVIEL <3
1
@Laniewski: Problem rozwiązany, ale coś dopowiem.
Jeśli chciałbyś rozwijać tę aplikację lub dopracować, pomyśl nad pozbyciem się invertalu, zamiast którego ruch będzie wywoływany przez keyUpHandler
. Będzie to wydajniejsze rozwiązanie, bo kod nie będzie sprawdzał co 10ms czy użytkownik się ruszył, tylko po wywołaniu listenera np. naciśnięciu "W" uruchomiona zostanie odpowiednia funkcja.