Atölye › Pong › 14/26. adım
Raketler topu karşılayabilmeli. Önce şu soruyu cevaplayalım: top rakete değiyor mu?
Top da raket de dikdörtgen. İki dikdörtgen, hem yatayda hem dikeyde üst üste biniyorsa çakışır. Yatayda biniyor ama dikeyde binmiyorsa, top raketin üstünden ya da altından geçiyor demektir. Bu adımda yalnız soruyu soran fonksiyonu yazıyoruz.
```js
function touches(paddle) {
return (
ball.x < paddle.x + PADDLE_W &&
ball.x + BALL > paddle.x &&
ball.y < paddle.y + PADDLE_H &&
ball.y + BALL > paddle.y
)
}
```function touches(paddle) → bir raket alır (parametre) ve true ya da false geri verir.ball.x < paddle.x + PADDLE_W → topun sol kenarı raketin sağ kenarından önce mi?ball.x + BALL > paddle.x → topun sağ kenarı raketin sol kenarını geçti mi? İkisi birlikte: yatayda biniyorlar.&& → "ve": dördü de doğru olmalı; biri bile yanlışsa false.return ( ... ) → parantez, tek bir cevabı birkaç satıra yaymamızı sağlar.clamp fonksiyonunun altına bir boş satır bırak ve touches fonksiyonunu yaz (function update'in üstünde). Çalıştır.
Beceriler: Çarpışma tespiti
← Üstten ve alttan sek Raketler geri vurur →