轻松实现多个MC自动连播

  • 来源: 中国IT实验室 作者: somesun   2008-03-18/12:01
  • 有时需要swf内实现多个MC自动连播,如何实现这种效果呢?
    一般的做法是在每个MC内设置一些代码,如果只有几个MC,那种做法未尝不可,但当有比较多的MC时,这种方法就有些麻烦了。能不能在MC内不添加任何代码,实现所有需要连播放的MC按既定的顺序自动播放呢?答案是肯定的。
    具体方法如下:
    /*首先将需要连续播放的MC在场景中命名(这里是三个,其实数量不限,你可以放N个),并存放到数组mcA中,mcA数组的目的是便于程序检索MC对象。*/
    var mcA:Array = [MC1_mc, MC2_mc, MC3_mc];   //内置的三个MC,不需要在其内加任何代码 
    mcA[1.stop();       //第一个MC播放,其它两个停止
    mcA[2].stop();
    var i:Number = 0;      //次序变量,决定三个MC的播放顺序
    onEnterFrame = function () {   //以下是关键代码部分,实现不断检索
            if (mcA._currentframe == mcA._totalframes) {  //当正在播放的MC播放到最后一帧时
                    mcA[i].stop();       //停止播放当前的MC                   
                    i++;                    //变量递增1
                    if (i>2) {             //播完第三个MC时
                            i = 0;          //播放第一个MC
                    }
                    mcA[i].play();        //数组mcA内第i个MC播放
            }
    };
    轮播MC:


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多