スプライトアニメーションを処理するためにeaselJSを使用してHTML5RPGゲームを作成しようとしています。矢印キーを任意の方向に押すと、キャラクターはアニメーションを再生しません。代わりに、アニメーションをループする代わりに、フレーム0に戻って停止するように見えます。
必要なのは、キーが押されている間ループを継続するアニメーションです。代わりに、キャラクターがフレームに引っかかってしまいます。
これが私がこれまでに持っているゲームです、私が実験していて、まだHTML5を学んでいるので、それは本当に混乱です。 http://cloudrealms.com/dev/
これが私が使用しているコードです:
アローキーキャプチャ:
$(window).keydown(
function(e){
keys[e.which] = true;
if(isMovementKey(e.which))
{
moveOrder.unshift(e.which);
jQuery.unique(moveOrder);
animationsToPlay.push(1);
}
e.preventDefault();
return false;
}
);
$(window).keyup(
function(e){
keys[e.which] = false;
if(isMovementKey(e.which))
{
moveOrder.splice(jQuery.inArray(e.which, moveOrder),1);
}
}
);
私のダニには、HandleInput()という関数があります。コードは次のとおりです。
function HandleInput()
{
switch (moveOrder[0]) {
case 38: /* Up arrow was pressed */
playerSequence[playerID].gotoAndPlay("walk_up");
playerSequence[playerID].y -= playerSequence[playerID].vY;
break;
case 40: /* Down arrow was pressed */
playerSequence[playerID].gotoAndPlay("walk_down");
playerSequence[playerID].y += playerSequence[playerID].vY;
break;
case 37: /* Left arrow was pressed */
playerSequence[playerID].gotoAndPlay("walk_left");
playerSequence[playerID].x -= playerSequence[playerID].vX;
break;
case 39: /* Right arrow was pressed */
playerSequence[playerID].gotoAndPlay("walk_right");
playerSequence[playerID].x += playerSequence[playerID].vX;
break;
}
}
知りたいのは、矢印キーを押している間にプレーヤーのスプライトをアニメーション化するにはどうすればよいですか?