Atölye › 2048 › 23/26. adım
Rekoru saklayalım. Tarayıcının küçük bir kalıcı defteri var: localStorage. Oraya yazılan, sayfa kapansa da
kalır. Her hamleden sonra skor rekordan büyükse rekoru güncelleyip deftere yazacağız ve sağ üstte göstereceğiz:
Best: 40.
```js
let best = Number(localStorage.getItem('2048-best')) || 0
addTile()
if (score > best) {
best = score
localStorage.setItem('2048-best', best)
}
ctx.textAlign = 'right'
ctx.fillText('Best: ' + best, canvas.width - GAP, TOP / 2)
```localStorage.getItem('2048-best') → defterdeki kaydı okur; yoksa null.Number(...) || 0 → yazıyı sayıya çevirir; ilk kez oynuyorsan 0.if (score > best) { ... } → skor rekoru geçtiyse best'i güncelle ve localStorage.setItem ile deftere yaz.
Gerçek bir hamleden sonra çalışır (boş hamleler daha önce return false ile çıktı).ctx.textAlign = 'right' → yazının sağ ucu canvas.width - GAP'e (sağdan 12 piksel içeri) gelsin.let keepPlaying ... satırının altına let best = ... yaz.move içinde addTile() satırının altına if (score > best) { ... } bloğunu yaz.draw içinde ctx.fillText('Score: ' ... satırının altına iki Best satırını yaz.Beceriler: Oyun durumları
← Devam için Boşluk Kaydırmalar →