Atölye › Pong › 24/26. adım
Tek başına mı oynuyorsun? Sağ raketi bilgisayar yönetsin. Top kendine doğru gelirken raketini topun hizasına götürsün. Ama senden biraz yavaş olsun ki yenilebilsin; yenilmez rakip eğlenceli değildir.
twoPlayers (iki oyuncu) false iken bilgisayar oynar; bir sonraki adımda bunu bir tuşla değiştireceğiz.
```js
const AI_SPEED = 4 // slower than the player, so the computer can be beaten
let twoPlayers = false
if (twoPlayers) {
if (keys.ArrowUp) right.y -= PADDLE_SPEED
if (keys.ArrowDown) right.y += PADDLE_SPEED
} else if (ball.vx > 0) {
const target = ball.y + BALL / 2 - PADDLE_H / 2
right.y += clamp(target - right.y, -AI_SPEED, AI_SPEED)
}
```if (twoPlayers) { ... } → iki oyunculu modda ok tuşları sağ raketi eskisi gibi oynatır.else if (ball.vx > 0) → değilse ve top sağa (bilgisayara) geliyorsa bilgisayar oynar. Top uzaklaşırken
beklemesi onu daha insan gibi yapar.const target = ball.y + BALL / 2 - PADDLE_H / 2 → raketin ortası topun ortasına gelsin diye raketin üst kenarının
olması gereken yer.target - right.y → gitmesi gereken mesafe (eksi: yukarı, artı: aşağı).clamp(..., -AI_SPEED, AI_SPEED) → bu mesafeyi en fazla 4 piksele sınırla. Senin raketin 6 piksel gidiyor;
bilgisayar biraz yavaş kalır.const PADDLE_SPEED = 6 satırının altına AI_SPEED satırını, let state ... satırının altına
let twoPlayers = false satırını yaz.update içindeki ArrowUp ve ArrowDown satırlarını if (twoPlayers) { ... } else if ... bloğuyla değiştir (iki
satır bloğun içine girer).Beceriler: Oyun durumları
← Her vuruşta hızlan Tek ya da iki oyuncu →