Atölye › Candy Crush Tarzı Üçlü Eşleştirme › 3/29. adım

Oyun döngüsü

Ne yapıyoruz

Mücevherler ileride yanıp sönecek ve düşecek; resmin saniyede yaklaşık 60 kez yeniden çizilmesi gerekecek. Bu yüzden bütün çizimi bir fonksiyona koyuyoruz: draw (çiz). Bir de oyun döngüsü: loop her turda draw()'u çağırır ve tarayıcıdan bir sonraki turu ister. Ekran aynı görünecek.

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

  for (let r = 0; r < N; r++) {
    for (let c = 0; c < N; c++) {
      const x = LEFT + c * SIZE
      const y = TOP + r * SIZE
      ctx.fillStyle = (r + c) % 2 === 0 ? '#312e81' : '#3730a3'
      ctx.fillRect(x, y, SIZE, SIZE)
    }
  }
}

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

requestAnimationFrame(loop)
```

Ne işe yarıyor

Sıra sende

  1. Boyama satırlarının üstüne function draw() { yaz; altındaki bütün satırları (iki döngü dahil) iki boşluk içeri al ve en sona kapanan } yaz.
  2. Bir boş satırdan sonra loop fonksiyonunu, bir boş satır daha bırakıp requestAnimationFrame(loop) satırını yaz.
  3. Çalıştır: ızgara aynı görünmeli.

Beceriler: Oyun döngüsü, Fonksiyonlar

Tüm adımlar

  1. Tahtanın yeri
  2. Damalı ızgara
  3. Oyun döngüsü
  4. Rastgele mücevherli tahta
  5. Mücevherleri çiz
  6. Eşleşmesiz başla
  7. Bir mücevhere tıkla
  8. Seçimi göster
  9. İki komşuyu takas et
  10. Bütün eşleşmeleri bul
  11. Eşleşme yoksa takas yok
  12. Skor ve yeni başlangıç
  13. Eşleşeni sil
  14. Mücevherler düşsün
  15. Silmenin iki yarısı
  16. Silmeden önce bekle
  17. Yanıp sön, dokunma
  18. Zincirleme
  19. Mücevher nereden geldi
  20. Kayarak in
  21. Üstün altından çık
  22. Hiç hamle var mı?
  23. Asla sıkışma
  24. Beş saniye sonra ipucu
  25. İpucunu göster
  26. Yirmi hamle
  27. Oyunun sonu
  28. En iyi skoru hatırla
  29. Kendin yap: kaydırarak takas