Atölye › Conway'in Hayat Oyunu › 30/32. adım

Ekranda düğmeler

Ne yapıyoruz

Telefonda klavye yok; bu yüzden ızgaranın altına beş düğme koyacağız: Play, Step, Random, Clear, Gun. Bu adımda onları çiziyoruz; tıklamayı bir sonraki adımda bağlayacağız.

Düğme adları bir listede durur. Canvas 480 piksel geniş, 5 düğme var: her birine 480 ÷ 5 = 96 piksel düşer. Dünya çalışırken Play düğmesinde Pause (duraklat) yazacak.

```js
const BAR_Y = TOP + ROWS * CELL + 12 // the row of buttons
const BUTTONS = ['Play', 'Step', 'Random', 'Clear', 'Gun']
const BUTTON_W = canvas.width / BUTTONS.length

  BUTTONS.forEach((label, i) => {
    ctx.fillStyle = '#334155'
    ctx.fillRect(i * BUTTON_W + 4, BAR_Y, BUTTON_W - 8, 36)
    ctx.fillStyle = 'white'
    ctx.font = 'bold 16px sans-serif'
    ctx.textAlign = 'center'
    ctx.fillText(label === 'Play' && playing ? 'Pause' : label, i * BUTTON_W + BUTTON_W / 2, BAR_Y + 24)
  })
```

Ne işe yarıyor

Sıra sende

  1. const TOP = 36 satırının altına üç düğme sabitini yaz (SPEED satırı onların altında kalır).
  2. draw içinde, iki döngünün kapanışından ( }) sonra bir boş satır bırak ve forEach bloğunu yaz. Generation yazısını çizen satırlar onun altında kalır.
  3. Çalıştır: ızgaranın altında beş gri düğme görmelisin. Boşluk'a basınca Play, Pause olur.

Beceriler: Canvas üzerine çizim, Diziler ve nesneler

Tüm adımlar

  1. Oyun tahtası
  2. Izgarayı ölç
  3. Tek bir canlı hücre
  4. Çizen bir fonksiyon
  5. Hafızadaki dünya
  6. Her canlı hücreyi çiz
  7. Rastgele bir çorba
  8. Komşuları say
  9. Dört kural
  10. Tekrar tekrar çiz
  11. N ile sonraki nesil
  12. Nesilleri say
  13. Nesli göster
  14. Kenarsız bir dünya
  15. Canlıları say
  16. Birkaç karede bir nesil
  17. Yaşasın
  18. Çalışıyor mu?
  19. Düğmeler için tek bir yer
  20. Boşlukla oynat, N ile adım at
  21. Temizle ve karıştır
  22. İşaretçi nerede?
  23. Hangi hücre?
  24. Hücreye tıkla
  25. Boya mı sil mi?
  26. Sürükleyerek boya
  27. Metinden desenler
  28. Planör topu
  29. Topu ateşle
  30. Ekranda düğmeler
  31. Düğmelere dokun
  32. Kendin yap: duran dünya