Atölye › Ay'a İniş › 29/31. adım
Parçaları hareket ettirelim. Her karede her parça: aracınkiyle aynı yerçekimiyle düşsün, hızı kadar ilerlesin, ömründen bir kare kaybetsin. Ömrü bitenler listeden çıksın.
Dikkat: parçalar kazadan sonra uçar; oysa update uçmuyorsak hemen çıkıyor. Bu yüzden parça kodunu o satırın
üstüne yazıyoruz.
```js
for (const d of debris) {
d.vy += gravity
d.x += d.vx
d.y += d.vy
d.life -= 1
}
debris = debris.filter((d) => d.life > 0)
```d.vy += gravity → parça da aynı yerçekimiyle hızlanarak düşer.d.x += d.vx, d.y += d.vy → hızı kadar ilerler.d.life -= 1 → ömründen bir kare gider.debris.filter((d) => d.life > 0) → yalnız ömrü kalanları tutan yeni liste. Silmeyi unutursak liste büyür durur.if (state !== 'flying') return'ün üstünde: kazadan sonra da çalışır.update fonksiyonunun en başına, if (state !== 'flying') return satırının üstüne bu satırları yaz. Çalıştır:
parçaları bir sonraki adımda göreceğiz; kontroller yeşil olmalı.
Beceriler: Hız ve yerçekimi
← Parçalara ayrıl Enkazı çiz →