Atölye › Angry Birds Tarzı Sapan › 24/47. adım
Bir seviyeyi kodla değil veriyle yazacağız: her blok bir satır, [tür, x, y, en, boy]. Sağ tarafa bir kule:
iki tahta direk, üstlerinde yatay bir tahta kiriş ve yanında bir taş blok.
reset, boş listeyle başlamak yerine bu satırların her birini bir gövdeye çevirecek. Yeni bir kule istediğinde tek
yapman gereken sayıları değiştirmek.
```js
// The level: [kind, x, y, width, height], x and y the top left corner.
const LEVEL = [
['wood', 380, 230, 12, 60], ['wood', 440, 230, 12, 60], ['wood', 370, 218, 94, 12], ['stone', 480, 250, 40, 40],
]
bodies = LEVEL.map(([kind, x, y, w, h]) => body(kind, x, y, w, h))
```const LEVEL = [ [...], [...], ... ] → dizilerden oluşan bir dizi. Her iç dizi bir blok: tür, sol üst köşe
(x, y), en, boy. Direkler 12 × 60, kiriş 94 × 12, taş 40 × 40.LEVEL.map(...) → listedeki her elemanı bir fonksiyondan geçirip sonuçlardan yeni bir liste yapar.
filter eleman seçiyordu; map her elemanı dönüştürür.([kind, x, y, w, h]) => body(kind, x, y, w, h) → gelen satırı (5 elemanlı dizi) beş ayrı ada açar ve onlarla bir
gövde yapar.MATERIALS'ın kapanan } satırının altına yorumu ve LEVEL'ı yaz.reset içinde bodies = [] satırını sil; yerine map satırını yaz.Beceriler: Diziler ve nesneler
← Tahta ve taş İç içe geçen kutuları ayır →