Atölye › Missile Command Tarzı Savunma › 12/35. adım
Karşılık verme zamanı. Senin füzelerine önleyici (interceptor) diyeceğiz. fire(tx, ty) (ateşle) üsten
(tx, ty) noktasına giden bir önleyici yapıp shots (atışlar) listesine ekleyecek.
Yere ateş etmek anlamsız; üssün biraz üstünden aşağıdaki noktalar görmezden gelinecek. Bu adımda önleyiciler henüz görünmüyor ve kıpırdamıyor.
```js
let shots // your interceptors on their way: { x, y, tx, ty }
shots = []
function fire(tx, ty) {
if (ty > BASE.y - 10) return
shots.push({ x: BASE.x, y: BASE.y, tx, ty })
}
```let shots → yoldaki önleyicilerin listesi; reset onu boşaltır.if (ty > BASE.y - 10) return → hedef, üssün 10 piksel üstünden daha aşağıdaysa (y büyükse) hiçbir şey yapma,
fonksiyondan çık.shots.push({ x: BASE.x, y: BASE.y, tx, ty }) → önleyici üsten başlar ve hedefini (tx, ty) hatırlar; tıpkı düşman
füzeleri gibi. Bu yüzden onu da stepTowards ile yürütebileceğiz.let incoming ... satırının altına yorumuyla birlikte let shots yaz.reset içinde incoming = [] satırının altına shots = [] yaz.// Move a point ... yorumunun üstüne fire fonksiyonunu yaz; altında bir boş satır kalsın.Beceriler: Oyun durumları