当检测到与形成障碍物的 div 的上部发生碰撞时,我遇到了问题。
我可以检测到与侧面和下边缘的碰撞,但不能检测到与上边缘的碰撞。
for (i = 0; i < game.obstacles.length; i++){
// Colisiones con los bordes laterales
if (marioX < obstacleX[i] + obstacleWidth[i] &&
marioX + marioWidth > obstacleX[i] &&
marioY < obstacleY[i] + obstacleHeight[i] &&
marioY + marioHeight > obstacleY[i]) {
game.player.collisionLateral();
}
// Colisiones con el borde inferior
if (marioY < obstacleY[i] + obstacleHeight[i] &&
marioY + marioHeight > obstacleY[i] &&
marioX < obstacleX[i] + obstacleWidth[i] &&
marioX + marioWidth > obstacleX[i]) {
game.player.collisionDown();
}
// Colisiones con el borde superior
if (marioY > obstacleY[i] + obstacleHeight[i] &&
marioY + marioHeight < obstacleY[i] &&
marioX < obstacleX[i] + obstacleWidth[i] &&
marioX + marioWidth > obstacleX[i]) {
//entonces
game.player.collisionUp();
}
}
我有这两次碰撞,但我无法让角色留在那个 div 上
我在这里留下了 github 的链接https://github.com/JesusSilva/super-mario