Atölye › Satranç › 46/48. adım
Beyin hazır; onu oyuna bağlayalım. Sen beyazla oynarsın, sıra siyaha geçince bilgisayar oynar.
Ama hemen değil: bilgisayar anında cevap verirse kendi hamlenin yerine oturduğunu göremezsin. Bu yüzden kısa bir
bekleme koyacağız: thinking = 20 → 20 kare (saniyenin üçte biri kadar) bekle, sonra oyna.
Beklemeyi sayan ve zamanı gelince oynayan fonksiyon update olacak; oyun döngüsü her karede çizmeden önce onu
çağıracak.
```js
let thinking // frames until the computer moves
thinking = 0
if (legalMoves().length === 0) state = inCheck(turn) ? 'checkmate' : 'stalemate'
else if (turn === 'b') thinking = 20
function update() {
if (state !== 'playing' || turn !== 'b') return
thinking -= 1
if (thinking <= 0) play(computerMove())
}
function loop() {
update()
draw()
```let thinking → bilgisayar oynamadan önce kalan kare sayısı. reset onu 0 yapar.else if (turn === 'b') thinking = 20 → oyun bitmediyse (değilse eğer) ve sıra siyahtaysa bekleme başlasın.function update() { → her karede bir kez çalışacak "güncelle" fonksiyonu:if (state !== 'playing' || turn !== 'b') return → oyun bittiyse veya sıra beyazdaysa hiçbir şey yapma.thinking -= 1 → beklemeyi bir azalt.if (thinking <= 0) play(computerMove()) → süre dolduysa en iyi hamleyi bul ve senin tıklamalarının
kullandığı aynı play ile oyna.loop içindeki update() → her karede önce güncelle, sonra çiz.let state ... satırının altına let thinking ... satırını yaz.reset içinde state = 'playing' satırının altına thinking = 0 yaz.play içinde son satırın (if (legalMoves()...) altına else if satırını yaz.function draw() { satırının üstüne update fonksiyonunu yaz; altında bir boş satır kalsın.loop içinde draw() satırının üstüne update() yaz.Beceriler: Oyun döngüsü, Oyun durumları
← Önce iyi görünen hamleler Sen beyazsın →