Atölye › Yılan › 17/28. adım

Yemi yılanın üstüne koyma

Ne yapıyoruz

Rastgele seçilen yem bazen yılanın gövdesine denk gelir; o zaman görünmez olur. Çözüm: seçilen hücre yılanın üstündeyse tekrar seç, boş bir hücre bulana kadar.

```js
function placeFood() {
  do {
    food = { x: Math.floor(Math.random() * COLS), y: Math.floor(Math.random() * ROWS) }
  } while (snake.some((part) => part.x === food.x && part.y === food.y))
}
```

Ne işe yarıyor

Sıra sende

placeFood içindeki satırın üstüne do { yaz, satırı iki boşluk daha içeri al, altına } while (...) satırını yaz. Çalıştır.

Beceriler: Diziler ve nesneler, Döngüler

Tüm adımlar

  1. Canvas'ı bul
  2. Kalemi al
  3. Tahtayı boya
  4. Hücrelerle düşün
  5. Yeri bir değişkende tut
  6. Çizen bir fonksiyon
  7. Hareket ettiren bir fonksiyon
  8. Oyun döngüsü
  9. Yavaşlat
  10. Gidilecek yön
  11. Ok tuşlarıyla yönlendir
  12. Listeden bir gövde
  13. Bütün gövdeyi yürüt
  14. Yeme bir yer seç
  15. Yemi çiz
  16. Ye ve büyü
  17. Yemi yılanın üstüne koyma
  18. Yön tablosu
  19. Geri dönüş yok
  20. Duvara çarpma
  21. Kendine çarpma
  22. Oyun bitti yazısı
  23. Skoru göster
  24. Oyunu başlatan tek fonksiyon
  25. Boşlukla yeniden oyna
  26. En iyi skoru hatırla
  27. Büyüdükçe hızlan
  28. Kendin yap: duvarlardan geç