首先,我学习JavaScript并尝试创建一个旧的Atari Pong游戏。我被困在这个地方,我可以让其中一个桨移动,但不是第二个。游戏仍然有效,但一个桨不会移动。这里是我的桨代码不会移动:需要帮助在画布上移动两个对象
var p2X = canvas.width/2 + 550;
var p2Y = canvas.height/2;
var p2Radius = 35;
var p2Height = 100;
和:
var p2UpPressed = false;
var p2DownPressed = false;
document.addEventListener("keydown", keyDownHandler, false);
document.addEventListener("keyup", keyUpHandler, false);
我已经使用事件侦听和KeyUp/downHandler的第一桨,我想知道,如果这是为什么第二个不会移动?
function keyDownHandler(e){
if(e.keyCode == 87){
p2UpPressed = true;
}
else if(e.keyCode == 83){
p2DownPressed = true;
}
}
function keyUpHandler(e){
if(e.keyCode == 87){
p2UpPressed = false;
}
else if(e.keyCode == 83){
p2DownPressed = false;
}
}
下面是实际的移动位:
if(p2UpPressed && p2Y <canvas.height-p2Radius){
p2Y += 7;
}
else if(p2DownPressed && p2Y > 0){
p2Y-=7;
}
任何帮助将非常感激。谢谢!
被称为玩家1的处理程序是什么?你已经为玩家2称他们为'keyDownHandler'和'keyUpHandler',那么他们对玩家1有相同的名字吗? – Clonkex
他们对桨1有相同的名字。我想我已经开始看到我出错的地方了。 – slikk
更改p2的处理程序名称并猜测是什么?有用!谢谢! – slikk