Atölye › Ay'a İniş › 28/31. adım
Yalnız "Crashed" yazan bir kaza hayal kırıklığıdır. Araç parçalara ayrılıp etrafa saçılsın ve parçalar geri düşsün: işte bu bir an olur. Bu aynı zamanda en basit parçacık sistemidir: her biri kendi konumu, hızı ve ömrü olan bir sürü minik nesne.
Bu adımda parçaları üretiyoruz: kazada 24 tane, her biri rastgele bir yöne.
```js
let debris
debris = []
// A burst of pieces flying out from the wreck.
for (let i = 0; i < 24; i++) {
const a = Math.random() * Math.PI * 2
const speed = 1 + Math.random() * 3
debris.push({ x: lander.x, y: lander.y, vx: Math.cos(a) * speed, vy: Math.sin(a) * speed - 2, life: 60 })
}
```let debris → enkaz parçaları; startLevel her uçuşta listeyi boşaltır.const a = Math.random() * Math.PI * 2 → rastgele bir yön: tam bir tur içinde herhangi bir açı.const speed = 1 + Math.random() * 3 → 1 ile 4 arası rastgele bir hız.Math.cos(a) * speed, Math.sin(a) * speed → yönü ve hızı yatay ve dikey hıza çevirir. (Burada açı sağdan
ölçülüyor: cos yatay, sin dikey parça.)- 2 → her parçayı biraz yukarı iter; patlama yerden fırlamış gibi görünür.life: 60 → her parça 60 kare (1 saniye) yaşar.let state ... satırının altına let debris yaz.startLevel içinde state = 'flying' satırının altına debris = [] yaz.touchdown içinde state = 'crashed' satırının altına (rekor bloğunun üstüne) yorumu ve for döngüsünü yaz.Beceriler: Hız ve yerçekimi, Diziler ve nesneler
← Rekor Parçalar düşüp kaybolur →