12.最后的任务就是给游戏设置Action动作脚本来控制游戏了。在图层actions的第7帧添加如下AS:
/:pos1 = "0";
/:pos2 = "1";
/:pos3 = "0";
/:count = Number(int(random(5)))+6;
//初始化3个变量,count取一个随机数,范围在4到10之间的整数
stop();
//将游戏停止在这里,直到用户响应
图层actions的第12帧添加如下AS:
stop();
//将游戏停止在此帧
if (Number(/:count)<>0) {
/:count = /:count-1;
//如果随机数count的值不等于0,count的值减1
ran = random(3);
//设置随机变量ran,取值范围在0到2之间
if (Number(ran) == 0) {
gotoAndStop("swap12");
//如果随机数ran的值等于0,则执行swap12这帧,交换1和2
} else if (Number(ran) == 1) {
gotoAndStop("swap13");
//如果随机数ran的值等于1,则执行swap13这帧,交换1和3
} else {
gotoAndStop("swap23");
//如果随机数ran的值等于2,则执行swap23这帧,交换3和2
}
} else {
gotoAndStop("guess");
//如果随机数count的值等于0,执行guess帧,交换结束,等待玩家进行判断
}
图层actions的第18帧添加如下AS:
temp = /:pos2;
/:pos2 = /:pos1;
/:pos1 = temp;
图层actions的第25帧添加如下AS:
temp = /:pos3;
/:pos3 = /:pos1;
/:pos1 = temp;
图层actions的第32帧添加如下AS:
temp = /:pos2;
/:pos2 = /:pos3;
/:pos3 = temp;
//上面三帧都是分别设置三个变量
13.回到图层card的第7帧,给最左边的纸牌添加如下AS:
on (release) {
if (Number(pos1) == 1) {
gotoAndStop("pos1");
} else if (Number(pos2) == 1) {
gotoAndStop("pos2");
} else {
gotoAndStop("pos3");
}
}
//根据变量pos1.pos2,pos3的不同值,跳到相应的帧
给中间的纸牌添加AS:
on (release) {
gotoAndPlay("shuffle");
}
//如果点此纸牌,则开始游戏
最后的时间线如图16所示:
6
图16
在上面action编写过程中,为了简化编写过程,我们给图层actions的一些帧设置了帧标签,可以达到明确当前帧作用的目的,所以在动画制作中推荐大家多使用帧标签,可以在一定程度上提高工作效率,具体的帧标签设置大家可以参考附带的源文件。
最后发布游戏,就可以开始玩了,看看你的眼力是不是很好哦:)