【发布时间】:2014-10-02 14:22:15
【问题描述】:
似乎一切都符合这个“更新”功能。一个蓝色的桨(矩形)应该出现在我的舞台右下角,但它没有。
const ARROW_KEY_LEFT = 37;
const ARROW_KEY_UP = 38;
var stage,padle;
var leftKeyDown,rightKeyDown = false;
function init(){
stage = new
createjs.Stage(document.getElementById("canvas"));
createjs.Ticker.addEventListener("tick", tick);
createjs.Ticker.setFPS(60);
startGame();
};
function startGame(){
padle = new createjs.Shape();
padle.width = 100;
padle.graphics.beginFill("#0000FF").drawRect(0, 0, padle.width, 20);
padle.x = padle.nextX = 0;
padle.y = stage.canvas.height - 20;
stage.addChild(padle);
window.onkeydown = movePadle;
window.onkeyup = stopPadle;
};
function movePadle(e){
e = !e ? window.event : e;
switch (e.keyCode){
case ARROW_KEY_LEFT:
leftKeyDown = true;
break;
case ARROW_KEY_RIGHT:
rightKeyDown = true;
break;
}
};
function stopPadle(e){
e = !e ? window.event : e;
switch (e.keyCode){
case 37:
leftKeyDown = false;
break;
case 39:
rightKeyDown = false;
break;
}
};
这是似乎不起作用的更新功能。任何帮助表示赞赏!
function update(){
var nextX = padle.x;
if (leftKeyDown){
nextX = padle.x - 10;
if(nextX < 0){
nextX = 0;
}
}else if (rightKeyDown){
nextX = padle.x + 10;
if(nextX > stage.canvas.width - padle.width){
alert("right key down");
nextX = stage.canvas.width - padle.width;
}
}
function tick(e){
update();
render();
stage.update();
};
它不再适用于 jsfiddle
【问题讨论】:
-
您是否收到任何错误消息?您可以在jsfiddle.net 上发布代码,包括 html。
标签: html html5-canvas createjs