管道的第一个动画片段包含3帧“普通”,“右”和“左”以及不同图层上的火焰动画片段。 当我向右或向左按时,应该有火焰动画,这是一个内部有4帧的动画片段。问题是我得到一个一次动画,然后火焰的动画停止了。我希望火焰动画片段在按下我的按键时继续动画,就像火正在燃烧一样。
var speedHoriz:Number = 0;
function animPig(evt:Event):void{
pipe.x += speedHoriz;
}
pipe.addEventListener(Event.ENTER_FRAME, animPig);
function keyDownHandler (evt:KeyboardEvent):void {
if(evt.keyCode==37) {
speedHoriz -= .1;
pipe.gotoAndStop("left");
} else if(evt.keyCode==39) {
speedHoriz += .1;
pipe.gotoAndStop("right");
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
function keyUpHandler (evt:KeyboardEvent):void {
pipe.gotoAndStop("normal");
}
stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
答案 0 :(得分:0)
我找到了解决方案!来自其他论坛的那个人帮帮我:DO! 您需要重置键盘轮询。
function keyDownHandler (evt:KeyboardEvent):void {
if(evt.keyCode==37) {
speedHoriz -= .1;
keyCode==evt.keyCode?null:pipe.gotoAndStop("left");
} else if(evt.keyCode==39) {
speedHoriz += .1;
keyCode==evt.keyCode?null:pipe.gotoAndStop("right");
}
keyCode=evt.keyCode;
}