对于我的教育,我必须在HTML5画布中制作基本游戏。这款游戏是一款射击游戏。当你可以左移 - >右移,空间正在射击。当我射击子弹时会向上移动。敌人向下移动。当子弹击中敌人时,敌人必须消失,并且会获得+1分。但是在屏幕出现后敌人会消失。帆布游戏:碰撞检测
演示:http://jordikroon.nl/test.html
空间=射击+敌人显示出来
这是我的代码:
for (i=0;i<enemyX.length;i++) {
if(enemyX[i] > canvas.height) {
enemyY.splice(i,1);
enemyX.splice(i,1);
} else {
enemyY[i] += 5;
moveEnemy(enemyX[i],enemyY[i]);
}
}
for (i=0;i<bulletX.length;i++) {
if(bulletY[i] < 0) {
bulletY.splice(i,1);
bulletX.splice(i,1);
} else {
bulletY[i] -= 5;
moveBullet(bulletX[i],bulletY[i]);
for (ib=0;ib<enemyX.length;ib++) {
if(bulletX[i] + 50 < enemyX[ib] ||
enemyX[ib] + 50 < bulletX[i] ||
bulletY[i] + 50 < enemyY[ib] ||
enemyY[ib] + 50 < bulletY[i])
{
++score;
enemyY.splice(i,1);
enemyX.splice(i,1);
}
}
}
}
对象:
function moveBullet(posX,posY) {
//console.log(posY);
ctx.arc(posX, (posY-150), 10, 0 , 2 * Math.PI, false);
}
function moveEnemy(posX,posY) {
ctx.rect(posX, posY, 50, 50);
ctx.fillStyle = '#ffffff';
ctx.fill();
}
我想为+1描述性很强的主题“击中敌人时取消”,但无法为此而做! – Tom
那你到底想要什么?如果你想要什么,请发布正确的问题。 – LPD
更适合http://gamedev.stackexchange.com/ – Christoph