Atölye › Yazı Yağmuru › 11/33. adım

Bir kelimeye kilitlen

Ne yapıyoruz

Hangi kelimeyi yazıyorsun? Bunu hiç söylemezsin; oyun anlar. Yazdığın ilk harf, o harfle başlayan bir kelimeye kilitlenir. O harfle başlayan birkaç kelime varsa en alttaki seçilir: yere en yakın olan, en acil olan.

Kilitlendiğimiz kelimeyi target (hedef), onun kaç harfini yazdığımızı typed değişkeninde tutacağız.

```js
let target // the word being typed, or null
let typed // how many letters of the target are typed

  target = null
  typed = 0

function type(key) {
  if (!target) {
    // Lock on to the lowest word starting with this letter: it is the most urgent.
    const options = words.filter((w) => w.text[0] === key).sort((a, b) => b.y - a.y)
    if (options.length === 0) return
    target = options[0]
    typed = 0
  }
}
```

Ne işe yarıyor

Sıra sende

  1. let words ... satırının altına let target ... ve let typed ... satırlarını yaz.
  2. reset içinde words = [] satırının altına target = null ve typed = 0 yaz.
  3. reset fonksiyonunun kapanan }'sinin altında bir boş satır bırak ve type fonksiyonunu yaz.
  4. Çalıştır: henüz hiçbir tuş type'ı çağırmıyor.

Beceriler: Oyun durumları, Diziler ve nesneler

Tüm adımlar

  1. Kelimeler için bir gökyüzü
  2. Zemin
  3. Canvas'ta bir kelime
  4. Çizen bir fonksiyon
  5. Kelime listesi
  6. Düşür
  7. Oyun döngüsü
  8. Listeden yeni bir kelime
  9. Yağmur başlasın
  10. Zemini geçince gider
  11. Bir kelimeye kilitlen
  12. Klavyeyi dinle
  13. Harf harf
  14. Yarım kelime sarı
  15. Kaybolan kelimeyi bırak
  16. Canlar
  17. Kalpler
  18. Puan
  19. Canlar bitti
  20. Oyunu dondur
  21. Oyun bitti kartı
  22. Yeniden oyna
  23. Seviyeler
  24. Gittikçe hızlanarak
  25. Rekor
  26. Doğruluk
  27. Dakikada kelime
  28. Sonunda hızın
  29. Tuşlar nereye
  30. Klavyeyi çiz
  31. Sıradaki tuşu yak
  32. Tuşlara dokun
  33. Kendin yap: fikir değiştir