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

Yarım kelime sarı

Ne yapıyoruz

Oyuncu nereye kadar yazdığını görmeli: hedefin yazılan kısmı sarı, kalanı beyaz olsun. Ama canvas'ta "kelimenin yarısını boya" diye bir komut yok. Çözüm: kelimeyi iki parça çizmek. Önce yazılan kısım x'te, sonra kalan kısım tam birinci parçanın bittiği yerde. Bitişi measureText ile ölçeriz.

Eş aralıklı yazı tipi sayesinde iki parça dikişsiz birleşir.

```js
for (const w of words) {
  // The typed part in yellow, the rest in white right after it.
  const done = w === target ? w.text.slice(0, typed) : ''
  ctx.fillStyle = '#facc15'
  ctx.fillText(done, w.x, w.y)
  ctx.fillStyle = w === target ? '#ffffff' : '#cbd5e1'
  ctx.fillText(w.text.slice(done.length), w.x + ctx.measureText(done).width, w.y)
}
```

Ne işe yarıyor

Sıra sende

  1. draw içindeki ctx.fillStyle = '#cbd5e1' satırını ve tek satırlık for satırını sil.
  2. Yerine yeni döngüyü yaz (ctx.font ve ctx.textAlign satırları üstte kalır).
  3. Çalıştır ve bir kelimeyi yazmaya başla: yazdığın harfler sararmalı.

Beceriler: Canvas üzerine çizim

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