Atölye › Tuğla Kırma › 33/39. adım
Yeni bir oyun başlatmak birkaç iş demek: duvarı yeniden kur, canları doldur, puanı sıfırla, servise geç. Hepsini tek
bir fonksiyonda toplayacağız: newGame. Oyunun en başında da onu çağıracağız; böylece ilk oyun ile onuncu oyun
aynı koddan başlar ve birbirinden farklı başlayamaz.
Canlar ve puan artık ilk değerlerini newGame'den alacak.
```js
let lives
let score
function newGame() {
buildBricks()
lives = 3
score = 0
resetBall()
}
newGame()
requestAnimationFrame(loop)
```let lives, let score → artık değersiz tanımlanıyor; değerlerini newGame() veriyor.function newGame() { ... } → dört işi sırayla yapar: duvar, canlar, puan, servis.newGame, kendisinden daha aşağıda yazılmış buildBricks()'i çağırıyor; bu sorun değil. Önemli olan,
newGame() çalıştırıldığı anda (en alttaki çağrıda) bütün fonksiyonların tanımlanmış olması.newGame() → ayrı ayrı buildBricks() ve resetBall() çağrılarının yerini alır.let lives = 3 satırından = 3'ü, let score = 0 satırından = 0'ı sil.clamp fonksiyonunun kapanış }'inin altına bir boş satır bırak ve newGame fonksiyonunu yaz.buildBricks() ve resetBall() satırlarını sil; yerlerine newGame() yaz.Beceriler: Fonksiyonlar, Oyun durumları