Atölye › Tetris Tarzı Bloklar › 7/32. adım

Şekil listesi

Ne yapıyoruz

Bütün parça şekillerini tek bir listede toplayacağız: SHAPES. Önce üçüyle başlıyoruz: uzun I, kare O ve T. Sayılar renk: I camgöbeği (1), O sarı (2), T mor (3).

Dikkat: bütün matrisler kare (4×4, 2×2, 3×3); bazılarında boş satırlar var. Boşa yer harcıyor gibi görünür ama birkaç adım sonra parçayı merkezi etrafında döndürmemizi sağlayan şey bu.

Düşen parça, şablonun kendisini değil bir kopyasını alacak. Sebebi: parçayı döndürüp değiştirdiğimizde asıl şablon bozulmasın.

```js
// Each piece is a square matrix; the number is its color. Square matrices rotate around their center.
const SHAPES = [
  [
    [0, 0, 0, 0],
    [1, 1, 1, 1],
    [0, 0, 0, 0],
    [0, 0, 0, 0],
  ],
  [
    [2, 2],
    [2, 2],
  ],
  [
    [0, 3, 0],
    [3, 3, 3],
    [0, 0, 0],
  ],
]

let piece = { shape: SHAPES[2].map((row) => [...row]), x: 3, y: 0 }
```

Ne işe yarıyor

Sıra sende

  1. COLORS satırının altına yorum satırını ve üç matrisli SHAPES listesini yaz.
  2. let piece satırında shape: değerini SHAPES[2].map((row) => [...row]) yap.
  3. Çalıştır: T aynı yerde durmalı.

Beceriler: Diziler ve nesneler

Tüm adımlar

  1. Kuyu
  2. Sayı satırlarından tahta
  3. Bir hücre çiz
  4. Bütün tahtayı çiz
  5. Sayı renktir
  6. Parça küçük bir ızgaradır
  7. Şekil listesi
  8. Yedi parçanın hepsi
  9. Kuyunun içine sığıyor mu?
  10. Bloklar yolu kapatır
  11. Önce dene, sonra taşı
  12. Oklarla oynat
  13. Matrisi döndür
  14. Yukarı okla döndür
  15. Duvar itmesi
  16. Kendiliğinden düşüş
  17. Tepede rastgele bir parça
  18. Yere otur ve kilitlen
  19. Oyunu başlatan tek fonksiyon
  20. Yığın tepeye ulaşınca
  21. Ekranda Game Over
  22. Yeniden oyna
  23. Dolu satırları sil
  24. Satırlara puan
  25. Yan panel
  26. Seviyeler
  27. Her seviyede daha hızlı
  28. Adil bir parça torbası
  29. Sıradaki parça
  30. Bırak gitsin
  31. Hayalet parça
  32. Kendin yap: parçayı beklet