Atölye › Klondike Solitaire › 9/40. adım
Masayı yedi sütuna bölüyoruz: ilki soldan 16 piksel içeride, her biri öncekinden 64 piksel sağda. Üst sırada deste 0. sütunun, açılan kartlar 1. sütunun, dört temel 3. ile 6. sütunların üstünde durur. Alttaki yedi sütun da kendi yerinde.
pileX (yığının x'i) fonksiyonu bir yığının adından yerini hesaplayacak. Adın ilk harfi türünü söyler: f
temel, t sütun.
```js
const LEFT = 16
const COL = 64 // distance between columns
const colX = (i) => LEFT + i * COL
// Where each pile sits on the table.
function pileX(key) {
if (key === 'stock') return colX(0)
if (key === 'waste') return colX(1)
if (key[0] === 'f') return colX(3 + Number(key[1]))
return colX(Number(key[1]))
}
```const LEFT = 16, const COL = 64 → ilk sütunun soldan uzaklığı ve iki sütun arası mesafe.const colX = (i) => LEFT + i * COL → i. sütunun x'i: 0 → 16, 1 → 80, 2 → 144...if (key === 'stock') return colX(0) → ad 'stock' ise cevap 0. sütun; return cevabı verir ve fonksiyonu
bitirir, alttaki satırlara hiç inilmez.key[0] → yazının ilk harfi (yazılar da diziler gibi 0'dan sayılır). 'f2'[0] → 'f', 'f2'[1] → '2'.Number(key[1]) → '2' yazısını 2 sayısına çevirir. Temel f2 → colX(3 + 2) → 5. sütun.t4 → colX(4).const CH = 78 satırının altına LEFT ve COL satırlarını yaz.const last = ... satırının altına colX satırını yaz.deal fonksiyonunun kapanan }'sinden sonra bir boş satır bırak; yorumuyla birlikte pileX fonksiyonunu yaz.Beceriler: Fonksiyonlar
← Yedi sütunu dağıt Yığınları masaya koy →