我一直在試圖讓敵人的座標,所以我可以採取行動,他們在哪裏。我使用似乎並沒有工作代碼:Robocode如何獲得敵人座標
double absBearing = e.getBearingRadians() + e.getHeadingRadians();
double ex = getX() + e.getDistance() * Math.sin(absBearing);
double ey = getY() + e.getDistance() * Math.cos(absBearing);
我似乎得到那些給我值比外地甚至負號的尺寸更大奇回報,有沒有人對如何ammend這個任何想法一段代碼以我的X
和Y
被返回的方式獲得敵人的X
和Y
?
有很多開源的robocode坦克需要看看。他們都有這種邏輯。通過考察別人解決問題的方式,你可能會找到一個更好的方法來嘗試你正在嘗試的方法。 –
我認爲你已經得到了你的罪和cos逆轉,即,使用cos()代替ex並且使用sin()代替ey。你還必須確保你的天使是一致的,因爲通常情況下y會向上增加,但在電腦屏幕上,y會向下增加。祝你好運! – Roy