Atölye › 15 Bulmacası › 13/27. adım

Taş kaydır

Ne yapıyoruz

Bir taşı kaydırmak aslında çok basit: taş ile boşluk yer değiştirir. Listede taşın numarasını boşluğun yerine yazar, taşın eski yerine 0 yazarız.

Ama sadece boşluğun komşusu olan taş kayabilir; uzaktaki bir taşa tıklamak hiçbir şey yapmamalı.

```js
// Slide the tile at position i into the gap, if it is next to the gap.
function move(i) {
  const gap = tiles.indexOf(0)
  if (!neighbors(gap).includes(i)) return
  tiles[gap] = tiles[i]
  tiles[i] = 0
}
```

Ne işe yarıyor

Sıra sende

function squareX(i) { satırının üstüne yorum satırını ve move fonksiyonunu yaz; arada bir boş satır kalsın. Çalıştır. Tıklamayı bir sonraki adımda bağlayacağız; kontroller fonksiyonu kendileri çağırıyor.

Beceriler: Oyun durumları, Diziler ve nesneler

Tüm adımlar

  1. Tek listede bir tahta
  2. Tuval ve kalem
  3. Masayı boya
  4. Çizen bir fonksiyon
  5. Satır ve sütun
  6. Her kare nerede
  7. Bir taş çiz
  8. Taşın üstündeki sayı
  9. Bütün taşlar
  10. Tekrar tekrar çiz
  11. N'den çözülmüş tahta
  12. Komşular
  13. Taş kaydır
  14. Taşa tıkla
  15. Ok tuşları
  16. Hamleleri say
  17. Gerçek kaydırmalarla karıştır
  18. Hangi tahtalar çözülür?
  19. Çözüldü mü?
  20. Kaymayı hatırla
  21. Kareleri say
  22. Akıcı kayma
  23. Çözüldü!
  24. Kazandığını göster
  25. Yeniden oyna
  26. Kırılacak bir rekor
  27. Kendin yap: bir süre sayacı