用FLash制作漂亮的翻页倒计时:[4]编写代码
通过前三节,基本完成了倒计时动画的场景页面设计,本节主要介绍相关控制代码,从而实现倒计时功能。
代码控制元件,首先要有实例名才能控制。所以第一步就是给场景中的各个元件加实例名,具体如图:
在最上层新建一层做为代码层,然后选择第一帧按F9打开代码编辑器。
加入以下内容:(一般情况下在输入相应事件时软件会自动加入)
import flash.utils.Timer;import flash.events.TimerEvent;
import flash.events.MouseEvent;i
mport 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赋值。然后保存文件,所有动画完成。
完成预览请看参考链接!
版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/article/137837.html