Atölye › Ritim Şeritleri › 13/35. adım

Şeritlere tuşlar

Ne yapıyoruz

Şimdi oyuncu işin içine giriyor. Dört şerit için dört tuş: D, F, J, K (klavyede parmaklarının zaten durduğu yer) ya da dört ok tuşu. Bir tuşa basınca o şerit yanacak.

Hangi tuşun hangi şeride gittiğini küçük bir tablo tutacak; bir sözlük gibi: tuşu ararsın, karşısında şerit numarası yazar. İşi yapan ise tek bir fonksiyon olacak: press(lane), "şu şeride basıldı".

```js
const KEYS = { d: 0, f: 1, j: 2, k: 3, ArrowLeft: 0, ArrowDown: 1, ArrowUp: 2, ArrowRight: 3 }

function press(lane) {
  lit[lane] = 8
}

document.addEventListener('keydown', (event) => {
  const lane = KEYS[event.key] ?? KEYS[event.key.toLowerCase()]
  if (lane === undefined) return
  event.preventDefault()
  press(lane)
})
```

Ne işe yarıyor

Sıra sende

  1. const LEAD = ... satırının altına KEYS satırını yaz.
  2. function update() { satırının üstüne press fonksiyonunu yaz; altında bir boş satır kalsın.
  3. function draw() { satırının üstüne (yani update'in altına) keydown dinleyicisini yaz; altında bir boş satır kalsın.
  4. Çalıştır, oyuna bir kez tıkla (klavye oyuna gitsin) ve D, F, J, K'ye bas: şeritler bir an parlamalı.

Beceriler: Klavye ve fare girdisi

Tüm adımlar

  1. Notalar için bir sahne
  2. İlk şerit
  3. Döngüyle dört şerit
  4. Vuruş çizgisi
  5. Çizen bir fonksiyon
  6. Yazı olarak şarkı
  7. Yazıdan notalara
  8. Yeri saat belirler
  9. Notaları çiz
  10. İşleyen bir saat
  11. Oyun döngüsü
  12. Yanan şeritler
  13. Şeritlere tuşlar
  14. Tuşları göster
  15. En yakın notaya vur
  16. Zamana yeterince yakın
  17. Bir basış, bir vuruş
  18. Ekranda bir mesaj
  19. Hit mesajı
  20. Mesaj gitsin
  21. Kusursuz ya da iyi
  22. Say
  23. Kaçan notalar
  24. Puan
  25. Art arda vuruşlar
  26. Çarpan
  27. Şarkı biter
  28. Saati durdur
  29. Doğruluk
  30. Not
  31. Sonuçlar
  32. Yeniden oyna
  33. En iyi puan
  34. Dokunulabilen şeritler
  35. Kendin yap: hız ayarı