我在嘗試着解決如何在8個方向中的一個上射擊子彈時遇到了麻煩。在旅行方向上的子彈火箭
玩家只能在羅盤方向0,45,90,135,180等點
所以我需要的是,我可以在spawnEntity用來發送子彈的方向上的播放機的公式面臨着不變的速度。
我試過這個;
sinAngle = Math.cos(90) * 1000;
cosAngle = Math.sin(90) * 1000;
bulletX = (this.pos.x);
bulletY = (this.pos.y);
return { x: bulletX, y: bulletY, sin: sinAngle, cos: cosAngle };
這樣的調用是這樣的;
trajectory = this.calculateAngle();
ig.game.spawnEntity(EntityBullet, trajectory.x, trajectory.y, { vel: { x: trajectory.sin, y: -trajectory.cos } });
但是,一切都是弧度,我希望它在羅盤度。
沒有java類,正是我已經有的,哪些不起作用。我正試圖提供數學函數與羅盤度,但他們期待弧度。我需要一個函數,將計算基於度數指南針的x和y – griegs
所以你很好,用角度而不是某種方式來表示N,S,E,W等?因爲這很簡單。修復問題... – Jwosty
我現在有這個,但0度羅盤出來0和180羅盤出來270.翻轉和顛倒。我可以編程,但不覺得這是一個很好的解決方案 – griegs