触摸动作不会动画

时间:2013-02-22 00:24:26

标签: actionscript-3

好的,所以我正在开发Adobe Flash游戏(空中),这将是一款手机游戏。我刚才问过这个问题,但动画不起作用所以知道我回来了。无论如何,我遇到的问题是,当我按下按钮时没有连续的动作,所以我不得不一直按下按钮移动。这个人告诉我使用刻度线,所以这就是我如何构建运动引擎,当我去添加我的动画时,它会进行一次,只是停止(动画)这里是我的代码:

myButton.addEventListener(MouseEvent.MOUSE_DOWN,mouseDown);

function mouseDown(e:Event):void {
    stage.addEventListener(MouseEvent.MOUSE_UP,mouseUp); //listen for mouse up on the stage, in case the finger/mouse moved off of the button accidentally when they release.
    addEventListener(Event.ENTER_FRAME,tick); //while the mouse is down, run the tick function once every frame as per the project frame, this is where I add the players animation.
}

function mouseUp(e:Event):void {
    removeEventListener(Event.ENTER_FRAME,tick);  //stop running the tick function every frame now that the mouse is up
    stage.removeEventListener(MouseEvent.MOUSE_UP,mouseUp); //remove the listener for mouse up
}

function tick(e:Event):void {
    //do your movement
}

我所说的是,无论如何都要解决这个问题?我怎么能用刻度线动画!

1 个答案:

答案 0 :(得分:0)

和其他人一样,我发现代码非常好。由于我无法访问整个代码和时间表,因此我对此问题进行了以下猜测:

因为,您只想在鼠标按下时启动动画,那么您必须在动画的第一帧中执行stop()动作。 (如果不是这样,请纠正我)。动画的最后一帧必须再次使用gotoAndPlay(x)动作进行循环。

基于上述假设,当动画循环时,它再次到达已定义了stop()动作的帧。