Atölye › Tuğla Kırma › 20/39. adım
Top bir tuğlaya yandan çarparsa yukarı-aşağı değil, sağa-sola sekmeli. Hangi yüzden girdiğini nasıl anlarız?
Topun merkezi tuğlanın yatay aralığındaysa (tam altında ya da üstündeyse) alt veya üst yüzden girmiştir: dikey yönü çevir. Değilse bir yana çarpmıştır: yatay yönü çevir.
```js
const throughTopOrBottom = ball.x >= brick.x && ball.x <= brick.x + BRICK_W
if (throughTopOrBottom) ball.vy = -ball.vy
else ball.vx = -ball.vx
```ball.x >= brick.x && ball.x <= brick.x + BRICK_W → topun merkezi tuğlanın sol ve sağ kenarı arasında mı?
Cevabı throughTopOrBottom ("üstten ya da alttan") adına koyuyoruz.if (throughTopOrBottom) ball.vy = -ball.vy → evetse dikey yönü çevir.else ball.vx = -ball.vx → else "değilse" demek: koşul yanlışsa bu satır çalışır ve yatay yön döner.if (brick) { bloğunda ball.vy = -ball.vy satırını sil; yerine üç yeni satırı yaz (brick.alive = false
satırı kalıyor). Çalıştır ve topu tuğlaların yanlarına çarptırmaya çalış.
Beceriler: Çarpışma tespiti