Atölye › Blackjack › 10/22. adım
Sıra sendeyken bir kart daha isteyebilirsin: buna "hit" (kart) denir. Kimin sırası olduğunu phase (evre)
hatırlıyor. Her tuş küçük bir tablodan bir düğme adına çevriliyor ve press düğmenin dediğini yapıyor. H → Hit.
Tablo öbür düğmeleri de biliyor; press onları sonraki adımlarda öğrenecek.
```js
let phase // 'player' (your turn), 'dealer' (the dealer draws) or 'done' (the round is over)
phase = 'player'
}
function hit() {
if (phase !== 'player') return
player.push(nextCard())
}
function press(button) {
if (button === 'Hit') hit()
}
document.addEventListener('keydown', (event) => {
const keys = { h: 'Hit', s: 'Stand', d: 'Double', n: 'Deal', ' ': 'Deal' }
const button = keys[event.key.toLowerCase()]
if (!button) return
event.preventDefault()
press(button)
})
```deal sıranı başlatır: phase = 'player'.hit → sıra sende değilse hiçbir şey yapma; sendeyse desteden bir kart çek.keys[event.key.toLowerCase()] → H ile h aynı olsun; tabloda olmayan tuşlarda button boş kalır ve return.event.preventDefault() → Boşluk sayfayı kaydırmasın.press'i çağıracak; tuşla düğme hiç farklı davranamaz.let dealer satırının altına yorumuyla phase yaz.deal'ın sonuna phase = 'player' yaz; deal'ın altına hit fonksiyonunu yaz.drawCard'ın üstüne press fonksiyonunu ve tuş dinleyicisini yaz.Beceriler: Klavye ve fare girdisi, Oyun durumları