Atölye › Sonsuz Koşucu › 9/19. adım
Bir geri sayım sıradaki kaktüsün sağ kenarda ne zaman belireceğine karar versin. Her kaktüsten sonra bekleme rastgele olsun ki oyun tahmin edilemesin; ama hiç 50 kareden kısa olmasın, yoksa iki kaktüs arasına inip yeniden zıplamak imkânsızlaşır.
```js
let nextIn = 60 // frames until the next obstacle
function spawn() {
obstacles.push({ x: canvas.width, y: GROUND - 40, w: 20, h: 40 })
// At least 50 frames apart, so there is always room to land and jump again.
nextIn = 50 + Math.floor(Math.random() * 70)
}
nextIn -= 1
if (nextIn <= 0) spawn()
```obstacles.push({ x: canvas.width, y: GROUND - 40, w: 20, h: 40 }) → sağ kenarda, zeminde duran 20×40'lık bir kaktüs.Math.floor(Math.random() * 70) → 0 ile 69 arası rastgele tam sayı. 50 + ... → bekleme 50–119 kare.nextIn -= 1 → her kare geri sayım bir azalır; if (nextIn <= 0) spawn() → sıfıra inince yeni kaktüs (ve yeni
bekleme).let speed = 6 satırının altına nextIn satırını yaz.pointerup satırının altına bir boş satır bırakıp spawn fonksiyonunu yaz.update içinde engelleri kaydıran satırın hemen üstüne geri sayım satırlarını yaz.Beceriler: Oyun durumları
← Üstüne gelen engeller Başlangıcı bekle →