Atölye › Frogger Tarzı Karşıya Geçiş › 7/22. adım

Arabalar

Ne yapıyoruz

items bir şeritteki her arabanın şu an nerede olduğunu hesaplıyor: her spacing karede bir araba, şeridin kayması (offset) kadar ötede, tekrar boyu (period) içinde başa sararak. Sonra her arabayı renkli bir kutu olarak çiziyoruz.

```js
// Left edges (in tiles) of the cars or logs in a lane right now.
function items(lane) {
  const p = period(lane)
  const xs = []
  for (let start = 0; start < p; start += lane.spacing) {
    xs.push((((start + lane.offset) % p) + p) % p - lane.len)
  }
  return xs
}

  for (const lane of LANES) {
    ctx.fillStyle = lane.color
    for (const x of items(lane)) {
      ctx.fillRect(x * TILE + 2, TOP + lane.row * TILE + 6, lane.len * TILE - 4, TILE - 12)
    }
  }
```

Ne işe yarıyor

Sıra sende

  1. period fonksiyonunun altına yorumu ve items fonksiyonunu yaz.
  2. draw içinde satır döngüsü ile kurbağa arasına şerit döngüsünü yaz.
  3. Çalıştır: yolda duran arabalar görmelisin.

Beceriler: Diziler ve nesneler, Canvas üzerine çizim

Tüm adımlar

  1. Yol ve nehir
  2. Kurbağa
  3. Çizmeye devam
  4. Zıpla
  5. Kaydırarak zıpla
  6. Trafik şeritleri
  7. Arabalar
  8. Trafik akıyor
  9. Araba çarptı
  10. Üç can
  11. Yeniden oyna
  12. Dokunarak yeniden oyna
  13. Nehirdeki kütükler
  14. Kütüklerde kal
  15. Kütüğe bin
  16. Yeniden hizaya
  17. Ev yuvaları
  18. Eve var
  19. İlerlemeye puan
  20. Sonraki seviye
  21. En iyi skor
  22. Kendin yap: süre sınırı