Atölye › 2048 › 19/26. adım
Oyunun durumunu bir değişkende tutacağız: state. Oyun sürerken 'playing'; hiç hamle kalmayınca 'over'
(bitti). Oyun bitince move artık hiçbir şey yapmayacak.
```js
let state // 'playing', 'won' or 'over'
state = 'playing'
function move(direction) {
if (state !== 'playing') return false
addTile()
if (!canMove()) state = 'over'
return true
}
```let state → oyunun durumu. Yorumda üç durum yazıyor; 'won' (kazandı) bir sonraki adımda gelecek.newGame içinde state = 'playing'.if (state !== 'playing') return false → oyun sürmüyorsa hamle yok.if (!canMove()) state = 'over' → yeni karo eklendikten sonra bak: hamle kalmadıysa oyun bitti. (!
"değil".) Kontrol karodan sonra olmalı; tahtayı son karo doldurur.let score satırının altına let state ... yaz; newGame içinde score = 0 satırının altına
state = 'playing' yaz.move'un ilk satırı olarak if (state !== 'playing') return false yaz.move içinde addTile() satırının altına if (!canMove()) state = 'over' yaz.Beceriler: Oyun durumları
← Hamle kaldı mı? 2048 yapmak →