【问题标题】:Playing reverse of a MovieClip using ActionScript 3.0使用 ActionScript 3.0 反向播放影片剪辑
【发布时间】:2018-08-10 19:29:19
【问题描述】:

我在 Adob​​e Animate 中制作了动画。我希望它反向播放。我尝试反转帧,但它有点搞砸了我的动画。所以我决定为它写一个代码。

我尝试参考这篇文章的代码: Flash - Play movie clip in reverse?

只要我的鼠标不在 MovieClip 上,这会使我的动画反向播放。我不太熟悉修改代码以使动画出现并循环反转的编码,即使没有将鼠标悬停。

这是代码:

mc.stop();
mc.addEventListener(MouseEvent.MOUSE_OVER,mover);
mc.addEventListener(MouseEvent.MOUSE_OUT,mout);

function mover(e:MouseEvent):void {
    stopPlayReverse();
    mc.play();
}

function mout(e:MouseEvent):void {
    this.addEventListener(Event.ENTER_FRAME, playReverse, false, 0, true);
}

function playReverse(e:Event):void {
    if (mc.currentFrame == 1) {
        stopPlayReverse();
    } else {
        mc.prevFrame();
    }
}

function stopPlayReverse():void {
    if (this.hasEventListener(Event.ENTER_FRAME)) {
        this.removeEventListener(Event.ENTER_FRAME, playReverse);
    }
}

我希望mout 直接在舞台上工作并循环,而不是停止。我该怎么做?

【问题讨论】:

  • this > stagestopPlayReverse(); > mc.gotoAndStop(mc.totalFrames); 另外,第一行,订阅 stage,而不是 mc
  • “我希望 mout 直接在舞台上工作”是什么意思?
  • @BadFeelingAboutThis 我希望该事件不是 MouseEvent,而是一个永远在舞台上运行的正常事件,而不是由鼠标操作触发。
  • @Organis 谢谢你的工作。我首先让 mc 先到最后一帧: mc.gotoAndStop("Last");然后添加:stage.addEventListener(Event.ENTER_FRAME,mout);并删除: mc.addEventListener(MouseEvent.MOUSE_OVER,mover); mc.addEventListener(MouseEvent.MOUSE_OUT,mout);

标签: actionscript-3 flash actionscript movieclip


【解决方案1】:

我首先让 mc 先到最后一帧:mc.gotoAndStop("Last");

然后补充:

stage.addEventListener(Event.ENTER_FRAME,mout); 

并删除:

mc.addEventListener(MouseEvent.MOUSE_OVER,mover); 
mc.addEventListener(MouseEvent.MOUSE_OUT,mout);

【讨论】:

    猜你喜欢
    • 2013-05-29
    • 1970-01-01
    • 2012-11-24
    • 2014-04-03
    • 2023-03-03
    • 2014-07-14
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    相关资源
    最近更新 更多