Witajcie,
Po kliknięciu klawisza do zmiennej dir jest wysyłana jakaś literka, setInterval co 260 ms sprawdza czy w zmiennej dir coś się pojawiło, jeśli tak to ma wykonać się jakaś tam akcja. Wszystko działa prawidłowo, ale bardzo często po kliknięciu klawisza nic się nie dzieje, bo setInterval jeszcze nie włączył funkcji która to sprawdza, jest to niby błahostka, ale jednak irytuje. Czy da się zrobić coś z tym setIntervalem, żeby wykonał się jak tylko coś kliknę, a nie po 260 ms?
Edit: wiem, że mogę zmniejszyć czas do np. 100 ms, ale rzecz w tym, że czas musi pozostać nie zmieniony.
var dir = 0; window.addEventListener('keydown', function(event) { switch (event.keyCode) { //aswd case 65 : dir='W'; break; //lewo case 87 : dir='N'; break; //góra case 68 : dir='E'; break; //prawo case 83 : dir='S'; break; //dół //up, down, right, left case 37 : dir='W'; break; //lewo case 38 : dir='N'; break; //góra case 39 : dir='E'; break; //prawo case 40 : dir='S'; break; //dół } }, false); function game() { ///// } setInterval(game, 260);