Atölye › Frogger Tarzı Karşıya Geçiş › 10/22. adım

Üç can

Ne yapıyoruz

Kurbağanın üç canı var. Her çarpma bir can götürür; son can da gidince oyun biter: hiçbir şey hareket etmez, tahtanın üstüne bir mesaj gelir.

```js
let lives = 3
let state = 'playing' // 'playing' or 'over'

function die() {
  lives -= 1
  if (lives > 0) {
    newFrog()
    return
  }
  state = 'over'
}

  if (state !== 'playing') return

  ctx.fillStyle = 'white'
  ctx.font = 'bold 18px sans-serif'
  ctx.textAlign = 'right'
  ctx.fillText('Lives: ' + lives, canvas.width - 10, 27)

  if (state === 'over') {
    ctx.fillStyle = 'rgba(15, 23, 42, 0.75)'
    ctx.fillRect(0, 0, canvas.width, canvas.height)
    ctx.fillStyle = 'white'
    ctx.textAlign = 'center'
    ctx.font = 'bold 32px sans-serif'
    ctx.fillText('Game Over', canvas.width / 2, canvas.height / 2)
    ctx.font = '18px sans-serif'
    ctx.fillText('Press Space to play again', canvas.width / 2, canvas.height / 2 + 32)
  }
```

Ne işe yarıyor

Sıra sende

  1. frog satırının altına lives ve state satırlarını yaz.
  2. die fonksiyonunun içini yeni satırlarla değiştir.
  3. hop ve update fonksiyonlarının ilk satırı if (state !== 'playing') return olsun.
  4. draw'ın sonuna, kurbağayı çizen satırın altına can yazısını ve bitiş bloğunu yaz.
  5. Çalıştır ve üç kez ezil.

Beceriler: Oyun durumları

Tüm adımlar

  1. Yol ve nehir
  2. Kurbağa
  3. Çizmeye devam
  4. Zıpla
  5. Kaydırarak zıpla
  6. Trafik şeritleri
  7. Arabalar
  8. Trafik akıyor
  9. Araba çarptı
  10. Üç can
  11. Yeniden oyna
  12. Dokunarak yeniden oyna
  13. Nehirdeki kütükler
  14. Kütüklerde kal
  15. Kütüğe bin
  16. Yeniden hizaya
  17. Ev yuvaları
  18. Eve var
  19. İlerlemeye puan
  20. Sonraki seviye
  21. En iyi skor
  22. Kendin yap: süre sınırı