Atölye › 2048 › 20/26. adım

2048 yapmak

Ne yapıyoruz

2048 karosunu yapmak kazanmak demek. Ama oyun 4096'ya ve ötesine devam edebilir. Bu yüzden kazanmak ayrı bir durum olacak: 'won'. Oyuncu devam etmeyi seçerse bunu keepPlaying bayrağında hatırlarız; yoksa kazanma ekranı her hamlede yeniden gelirdi.

'playing' --2048 yapıldı--> 'won' --devam--> 'playing' (keepPlaying)
'playing' --hamle yok-->    'over'
```js
let keepPlaying // true once the player chose to continue after making 2048

  keepPlaying = false

  if (!keepPlaying && board.some((row) => row.includes(2048))) state = 'won'
  else if (!canMove()) state = 'over'
```

Ne işe yarıyor

Sıra sende

  1. let state satırının altına let keepPlaying ... yaz; newGame içinde state = 'playing' satırının altına keepPlaying = false yaz.
  2. move içindeki if (!canMove()) state = 'over' satırını sil; yerine iki satırı yaz.
  3. Çalıştır.

Beceriler: Oyun durumları, Diziler ve nesneler

Tüm adımlar

  1. Tahta
  2. On altı hücre
  3. Sayılardan bir ızgara
  4. Her sayıya bir renk
  5. Karolara sayılar
  6. Büyük sayı, küçük yazı
  7. Boş hücreleri bul
  8. Yeni bir karo
  9. Başlangıçta iki karo
  10. Bir satırı kaydır
  11. Eşit karoları birleştir
  12. Sola hareket
  13. Ok tuşu
  14. Yalnız gerçek hamleler sayılır
  15. Sağ, ters çevrilmiş sol
  16. Yukarı ve aşağı sütunlardır
  17. Skor
  18. Hamle kaldı mı?
  19. Oyun bitti
  20. 2048 yapmak
  21. Kazanma ve kaybetme ekranları
  22. Devam için Boşluk
  23. Rekor
  24. Kaydırmalar
  25. Dokunmak kaydırmak değildir
  26. Kendin yap: geri al