Atölye › Pinball › 35/42. adım
Rekorunu kıran oyuncu, sayfayı kapatıp açınca rekorunu görmek ister. Bunun için tarayıcının küçük bir defteri
var: localStorage. İçine yazılanlar sayfa kapansa da kalır.
```js
let best = Number(localStorage.getItem('pinball-best')) || 0
state = 'over'
if (score > best) {
best = score
localStorage.setItem('pinball-best', best)
}
ctx.font = '13px sans-serif'
ctx.fillText('Best ' + best, 200, 50)
```localStorage.getItem('pinball-best') → defterden 'pinball-best' adlı kaydı okur. Kayıt yazı olarak döner
('1234'); hiç kayıt yoksa null (hiçbir şey).Number(...) → yazıyı sayıya çevirir. null'dan ya da bozuk bir yazıdan işe yarar bir sayı çıkmaz.|| 0 → "değilse 0 kullan": soldaki değer işe yaramazsa (yok, 0 ya da sayı değil) sağdakini alır.if (score > best) { → oyun biterken skor rekoru geçtiyse:best = score → yeni rekor;localStorage.setItem('pinball-best', best) → deftere aynı adla yaz. Bir dahaki açılışta okunacak.ctx.font = '13px sans-serif' ve ctx.fillText('Best ' + best, 200, 50) → ortalanmış, küçük bir Best yazısı.let flash ... satırının altına let best = ... satırını yaz.update içinde else bloğunda, state = 'over' satırının altına if (score > best) { ... } bloğunu yaz.draw içinde ctx.textAlign = 'center' satırının altına iki Best satırını yaz.Beceriler: Oyun durumları
← Yeniden oyna Bırakınca fırlat →