我正在製作我的第一款HTML5遊戲,並且我需要弄清楚如何判斷兩個矩形是否互相碰撞。到目前爲止,我真的不知道如何。這是我嘗試過的代碼,但只有當敵人擊中這個畫點時纔有效。這是迄今爲止:看看兩個矩形是否已經在HTML5畫布中擊中
if(this.drawX >= enemies[i].drawX && this.drawX <= enemies[i].drawX + enemies[i].width && this.drawY >= enemies[i].drawY && this.drawY <= enemies[i].drawY + enemies[i].height) {
我很困惑如何做到這一點。任何人都可以幫我嗎?
編輯:我想這個代碼:
if (!(this.drawX + this.width < enemies[i].drawX ||
enemies[i].drawX + enemies[i].width < this.drawX ||
this.drawY + this.height < enemies[i].drawY ||
enemies[i].drawY + enemies[i].height < this.drawY)) {
gameOver();
}
的代碼似乎使該遊戲結束幾乎隨機。我該如何解決這個問題呢,對於等待這麼久抱歉。
類似的問題:http://stackoverflow.com/questions/5098002/javascript-canvas-collision-side-detection – Kerstomaat 2012-07-08 16:19:54