Atölye › Asteroids › 2/41. adım
Gemiyi birkaç bilgiyle tek bir nesnede tutacağız: yeri (x, y), baktığı açı (angle) ve hızı (vx, vy).
resetShip (gemiyi sıfırla) onu ortaya, yukarı bakar hâlde koyacak. Bu adımda ekranda bir şey görünmez; gemi
önce bellekte doğuyor.
Bu oyunun farkı şu: gemi dört yöne değil her açıya bakabilir. JavaScript açıyı derece değil radyan ile ölçer:
Math.PI (π ≈ 3.14) yarım tur, 2 * Math.PI tam tur.
```js
let ship
function resetShip() {
ship = { x: canvas.width / 2, y: canvas.height / 2, angle: -Math.PI / 2, vx: 0, vy: 0 }
}
resetShip()
```let ship → gemi; resetShip onu dolduracak.canvas.width / 2, canvas.height / 2 → tuvalin ortası: (300, 225).angle: -Math.PI / 2 → açılar şöyle: 0 sağa bakar. Tuvalde y aşağı doğru büyüdüğü için Math.PI / 2
aşağı, -Math.PI / 2 yukarı bakar. Çeyrek tur = Math.PI / 2.vx: 0, vy: 0 → sağa ve aşağı doğru hız. Şimdilik gemi duruyor.resetShip() → en altta, draw()'dan önce çağrılır: önce gemi kurulur, sonra çizilir.function draw() { satırının üstüne let ship satırını ve resetShip fonksiyonunu yaz; aralarında ve
draw'dan önce birer boş satır kalsın.draw() satırının üstüne resetShip() yaz.Beceriler: Oyun durumları, Hız ve yerçekimi
← Kapkara uzay Nereye bakıyor? →