这是我的 jsfiddle:http://jsfiddle.net/2tLCk/4/
如您所见,如果您按下向上按钮,马里奥会跳得很远,然后再向下跳一次,但如果您再次按下它,他将不会跳 我该如何解决这个问题?当我按下向上按钮时,马里奥会跳到一个特定的位置,假设 y=32 然后再向下返回(总是不止一次)?
var Jump = function () {
if (character.y > limit && !goingDown) {
character.y -= limit;
} else {
goingDown = true;
character.y += limit;
if (character.y >= 184) {
clearInterval(jumping);
goingDown = false;
limit = 0;
character.y = 184;
}
}
}
最佳答案
在此if语句中设置限制
if (keydown.up) {
limit = 10;
jumping = setInterval(Jump, 150);
}
要指定特定的高度,您可以删除一个名为 limitHeight 的新变量,并在此 if 语句中将其与 limit 切换
if (character.y > limitHeight && !goingDown) {
// ^^^^^^^^^^^
在这个新的演示中,我还在 keydown.up 语句中放置了 clearInterval 以修复一些错误
关于javascript - 让角色在 Canvas 内跳跃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21235011/