我想做一个'Tron-game like'小游戏,继承人代码,我已经做过:http://jsfiddle.net/Jim_Y/KQW5w/2/ 代码段:
$(document).keydown(function (e) {
if (e.keyCode == 37) {
// leftArrowPressed
palette.leftArrowPressed();
} else if (e.keyCode == 38) {
// topArrowPressed
palette.topArrowPressed();
} else if (e.keyCode == 39) {
// rightArrowPressed
palette.rightArrowPressed();
} else if (e.keyCode == 40) {
// bottomArrowPressed
palette.bottomArrowPressed();
}
return false;
});
Palette.prototype.leftArrowPressed = function () {
this.X = this.X - this.game.speed;
this.context.lineTo(this.X, this.Y);
this.context.stroke();
}
问题是,当我按下其中一个箭头键并画一条线,然后按另一个箭头键时,图纸上有一点间断,所以画线不连续:/ 有什么建议吗?
答案 0 :(得分:0)
我在你提供的演示中没有看到任何中断。
无论如何,第一次按箭头时,没有画线。
我通过在palette.context.beginPath()
之前设置palette.context.moveTo()
指令更新了您的代码,请参阅jsfiddle了解结果。
palette.context.beginPath();
palette.context.moveTo(palette.X, palette.Y);