Javascript 在JS中触摸后角色不会跳转
我正在用JS为一个平台编写碰撞检测程序。出于某种原因,当我的角色在顶部触地时,它不会再跳了。这是我的密码:Javascript 在JS中触摸后角色不会跳转,javascript,collision-detection,game-development,Javascript,Collision Detection,Game Development,我正在用JS为一个平台编写碰撞检测程序。出于某种原因,当我的角色在顶部触地时,它不会再跳了。这是我的密码: if (isCollideY(platforms[i].getBoundingClientRect(), document.getElementById('spriteNotReal').getBoundingClientRect()) == true) { if (falling == true && (jumping == false))
if (isCollideY(platforms[i].getBoundingClientRect(), document.getElementById('spriteNotReal').getBoundingClientRect()) == true) {
if (falling == true && (jumping == false)) {
moveY = platforms[i].getBoundingClientRect().y + 3;
momentumY = 0;
onSolidGround = true;
}
}
if(event.code=='KeyW'&&(moveY 0){
跳跃=正确;
}
否则{
跳跃=错误;
}
moveX+=动量x/3+1;
document.getElementById(“spritentreal”).src=“jumpmain.gif”;
}
我的问题有点愚蠢。检查输入代码后,我意识到跳转没有发生,因为它只会在我设置要测试的“平台”上跳转,而不会在它实际在平台上跳转。下面是改进的代码:
if (event.code == 'KeyW' && (onSolidGround == true)) {
moveY += 1;
move (moveX, moveY);
momentumY = momentumY + 20;
onSolidGround = false;
falling = false;
jumping = true;
}
我的问题有点愚蠢。在检查输入代码后,我意识到跳转没有发生,因为它只会在我设置要测试的“平台”上跳转,而不会在它实际在平台上跳转。下面是改进的代码:
if (event.code == 'KeyW' && (onSolidGround == true)) {
moveY += 1;
move (moveX, moveY);
momentumY = momentumY + 20;
onSolidGround = false;
falling = false;
jumping = true;
}
你能提供一个最小的可复制的例子吗?是的。我编辑并添加了物理。你能提供一个最小的可复制的例子吗?是的。我编辑并添加了物理
if (event.code == 'KeyW' && (onSolidGround == true)) {
moveY += 1;
move (moveX, moveY);
momentumY = momentumY + 20;
onSolidGround = false;
falling = false;
jumping = true;
}