flash cs6
actionscript3.0
在最上层新建一层做为代码层,然后选择第一帧按F9打开代码编辑器。加入以下内容:(一般情况下在输入相应事件时软件会自动加入)import flash.utils.Timer;import flash.events.TimerEvent;import flash.events.MouseEvent;import flash.media.SoundChannel;这些内容主要是提供相应类库。
设置初始状态各个变量:var num:int = 0;var m1:int = 0;var m2:int = 0;var s1:int = 0;var s2:int = 0;m_mc1.gotoAndPlay('p0');m_mc2.gotoAndPlay('p0');s_mc1.gotoAndPlay('p0');s_mc2.gotoAndPlay('p0');
加入Timer侦听事件,1000毫秒(一秒)执行一次。var tTimer:Timer = new Timer(1000);tTimer.addEventListener(TimerEvent.TIMER,ontimer);function ontimer(e:TimerEvent):void{ if (num>0) { num--; sc = mysound.play(); s_mc2.play(); if (s_mc2.currentLabel == 'p0') { s_mc1.play(); } if (s_mc1.currentLabel == 'p0' && s_mc2.currentLabel == 'p0') { m_mc2.play(); } if (s_mc1.currentLabel == 'p0' && s_mc2.currentLabel == 'p0' && m_mc2.currentLabel == 'p0') { m_mc1.play(); } } else { tTimer.stop(); sc.stop(); }}
加入鼠标按下MOUSE_DOWN侦听事件:addEventListener(MouseEvent.MOUSE_DOWN,ondown);function ondown(e:MouseEvent):void{ switch (e.target.name) { case 'p1_btn' : m_mc1.play(); break; case 'p2_btn' : m_mc2.play(); break; case 'p3_btn' : s_mc1.play(); break; case 'p4_btn' : s_mc2.play(); break; case 'start_btn' : num = s2 + s1 * 10 + m2 * 60 + m1 * 600; tTimer.start(); break; case 're_btn' : tTimer.stop(); m_mc1.gotoAndPlay('p0'); m_mc2.gotoAndPlay('p0'); s_mc1.gotoAndPlay('p0'); s_mc2.gotoAndPlay('p0'); break; default : break; }}至此,在帧上的代码已经完成。
在上面的代码中有四个变量,s1,s2,m1,m2这四个代码的变量从哪里得到呢,又要回到m_mc1,m_mc2,s_mc1,s_mc2这四个影片剪辑里去了,我们以m_mc1为例,打开m_mc1这个影片剪辑:如图所示,第四个动画完成时的stop()后加一句MovieClip(root).m1=4;第三个加MovieClip(root).m1=3,依此类推在每个翻牌结束是为m1赋值。用同样的方法在m_mc2里为m2赋值,在s_mc1里为s1赋值,在s_mc2里为s2赋值。然后保存文件,所有动画完成。 完成预览请看参考链接!