Atölye › Tuğla Kırma › 2/39. adım

Tekrar tekrar çiz

Ne yapıyoruz

Şu an resim bir kez çiziliyor ve öyle kalıyor. Raket kıpırdasa bile ekran bunu göstermez. Oyunlar resmi saniyede yaklaşık 60 kez yeniden çizer; bir çizgi filmin kareleri gibi.

Çizim satırlarını draw (çiz) adlı bir fonksiyona koyacağız ve onu bir oyun döngüsünden sürekli çağıracağız. Ekran yine aynı görünecek, ama artık her karede yeniden çiziliyor.

```js
function draw() {
  ctx.fillStyle = '#0f172a'
  ctx.fillRect(0, 0, canvas.width, canvas.height)

  ctx.fillStyle = '#e2e8f0'
  ctx.fillRect(paddle.x, PADDLE_Y, PADDLE_W, PADDLE_H)
}

function loop() {
  draw()
  requestAnimationFrame(loop)
}

requestAnimationFrame(loop)
```

Ne işe yarıyor

Sıra sende

  1. Dört çizim satırının üstüne function draw() { yaz, satırları iki boşluk içeri al, altlarına } koy.
  2. Bir boş satırdan sonra loop fonksiyonunu, bir boş satır daha bırakıp en alta requestAnimationFrame(loop) satırını yaz.
  3. Çalıştır: ekran aynı görünmeli, kontroller yeşil olmalı.

Beceriler: Oyun döngüsü, Fonksiyonlar

Tüm adımlar

  1. Oyun alanı ve raket
  2. Tekrar tekrar çiz
  3. Sayıyı sınırlar içinde tut
  4. Fareyi takip et
  5. Başka boyda gösterilen canvas
  6. Hızı olan bir top
  7. Yuvarlak top çiz
  8. Topu yürüt
  9. Yan duvarlardan sek
  10. Tavandan sek
  11. Açık zemin
  12. Raketten sek
  13. Raketle nişan al
  14. Bir sıra tuğla
  15. Tuğlaları çiz
  16. Koca bir duvar: döngü içinde döngü
  17. Her sıraya bir renk
  18. Daire kutuyla buluşuyor
  19. Tuğla kır
  20. Tuğlanın yanına çarpmak
  21. Rakette bekle
  22. Raketle birlikte git
  23. Topu fırlat
  24. Tıkla ya da Boşluk'a bas
  25. Basılı tuşları hatırla
  26. Ok tuşlarıyla sür
  27. Üç can
  28. Ekranda canlar ve bir ipucu
  29. Oyun bitti
  30. Puan tut
  31. Puanı göster
  32. Oyunu kazan
  33. Yeni oyun için tek fonksiyon
  34. Yeniden oyna
  35. Bir avuç parçacık
  36. Kıvılcımlara dönüş
  37. Hareket et, düş ve kaybol
  38. Solarak kaybol
  39. Kendin yap: sağlam tuğlalar