0
我已經提出了一些線程,要求與過去碰撞的幫助,並取得了一些進展,我正在製作一個2D Java遊戲,屏幕上的播放器隨鍵盤輸入一起移動,問題是,在我的背景(地圖)上有很多障礙,目前我的播放器只是直接穿過它們,到目前爲止,在本論壇的用戶的幫助下,我已經在代碼中獲得了此代碼以檢測碰撞:Java碰撞無法正常工作
public void changeBuckyPos(float deltaX, float deltaY) {
float newX = buckyPositionX + deltaX;
float newY = buckyPositionY + deltaY;
// check for collisions
Rectangle rectOne = new Rectangle((int)newX, (int)newY, 40, 40);
Rectangle rectTwo = new Rectangle(-100, -143, 70,70);
if (!rectOne.intersects(rectTwo)) {
buckyPositionX = newX;
buckyPositionY = newY;
}
}
當我把它放到我的遊戲中時,現在這個代碼沒有錯誤,但是發生了更大的問題,雖然這段代碼沒有錯誤,但它什麼也沒有做,我的意思是當我進入遊戲時,沒有碰撞,當兩人再次發生什麼事情時ctangles相交,任何人都可以幫助我,我一直堅持了很長時間。
謝謝。
那麼......當兩個r長方形會見?您提供的代碼僅僅是這樣做的,如果新位置相交,那麼位置不會更新。 – SJuan76
你如何使用這個功能? –
調試方法,嘗試添加一些完整的日誌記錄並瀏覽結果。它被稱爲?它是否被正確的參數調用?它的輸出是否被使用?如此多的問題...... –