Atölye › Asteroids › 5/41. adım
Gemiyi ok tuşlarıyla süreceğiz. Hangi tuşların basılı olduğunu keys adlı bir nesnede tutacağız: basılınca
true, bırakılınca false. Böylece oyun her karede "sol ok basılı mı?" diye sorabilecek.
Klavye bir olay (event) bildirir: tuşa basılınca keydown, bırakılınca keyup. Kapıya zil takmak gibi: zil
çalınca verdiğin iş yapılır. Bu adımda ekran değişmez.
```js
const keys = {}
document.addEventListener('keydown', (event) => {
keys[event.key] = true
})
document.addEventListener('keyup', (event) => {
keys[event.key] = false
})
```const keys = {} → boş nesne; basılı tuşlar içine yazılacak.document.addEventListener('keydown', (event) => { ... }) → "bir tuşa basılınca bu fonksiyonu çalıştır".
(event) => { ... } kısa yoldan yazılmış bir fonksiyon (ok fonksiyonu); event olayın bilgisi.event.key → basılan tuşun adı: 'ArrowLeft' (sol ok), 'ArrowUp' (yukarı ok), ' ' (boşluk)...keys[event.key] = true → köşeli parantez, adı değişkenden gelen alana yazar: keys['ArrowLeft'] ile
keys.ArrowLeft aynı şey.'keyup' → tuş bırakılınca o tuşa false yazar.let ship satırının altına const keys = {} yaz.function drawShip() { satırının üstüne iki olay dinleyicisini yaz; altlarında bir boş satır kalsın.Beceriler: Klavye ve fare girdisi