我正在制作带有2个动画的flash游戏。常备动画和动画动画。我希望如果有人按上下左右箭头然后播放移动动画,如果没有按下这些键,则播放常备动画。
我用过:
stage.addEventListener(KeyboardEvent.KEY_DOWN, movingAnimation);
function movingAnimation(event:KeyboardEvent):void
{
if (event.keyCode == 37)
{
account_animation.gotoAndPlay("moving");
}
if (event.keyCode == 38)
{
account_animation.gotoAndPlay("moving");
}
if (event.keyCode == 39)
{
account_animation.gotoAndPlay("moving");
}
if (event.keyCode == 40)
{
account_animation.gotoAndPlay("moving");
}
}
stage.addEventListener(KeyboardEvent.KEY_UP, standingAnimation);
function standingAnimation(event:KeyboardEvent):void
{
if (event.keyCode == 37)
{
account_animation.gotoAndPlay("standing");
}
if (event.keyCode == 38)
{
account_animation.gotoAndPlay("standing");
}
if (event.keyCode == 39)
{
account_animation.gotoAndPlay("standing");
}
if (event.keyCode == 40)
{
account_animation.gotoAndPlay("standing");
}
}
这不起作用。我在这做错了什么?
答案 0 :(得分:0)
目前您的代码没有任何问题。你应该验证一些事情:
在预览时点击您的swf(可能您未在该窗口中选择,因此键盘事件未触发。)
确保动画帧标签正确无误。
检查account_animation
是否是正在执行gotoAndPlay的资产。
我测试了您的代码以验证它是否正常工作,因此您需要验证资产和时间线设置,以确保所有这些都正确,因为我们无法在您的fla文件中看到您的时间轴。