此步我们来制作游戏中决定主角每次所走步数的骰子。
1. 新建一个graphic组件并命名为主体,然后在编辑区中用矩形工具画一个填充色为白色,边框为黑色的正方形,作为掷骰子前骰子的状态,如图8所示:
2. 在建立一个graphic组件,并命名为点,也就是作为骰子上的点,用椭圆工具画一个黑色的正圆,如图9所示:
3. 新建一个movie clip组件,命名为“合成的点”,在这个mc里来制作从一点到六点的不同状态。将图层layer1的第1到第6帧全部设置为关键帧,然后分别将组件”点”拖到编辑区中,第一帧放一个,第二帧放两个,依此类推,第六帧放六个,然后用align工具排列好,如图所示:
4. 再新建一个图层layer2,在第1帧加as: /:dianzhi = 1;, 在第2帧加as: /:dianzhi = 2;, 在第3帧加as: /:dianzhi = 3;, 在第4帧加as: /:dianzhi = 4;, 在第5帧加as: /:dianzhi = 5;, 在第6帧加as: /:dianzhi = 6;, 在第7帧加如下as:
if (Number(/:red) == 1) {
tellTarget ("/re") {
gotoAndStop(1);
}
/:red = 0;
} else {
tellTarget ("/re") {
gotoAndPlay(2);
}
/:red = 1;
}
//通过变量red的不同值,触发不同的动作,并对red进行不同的设置
5. 因为我们的骰子需要通过鼠标点击来触发,所以需要用到按钮,确切的说是用一个隐形按钮配合前面的主体对象,就可以实现。所以我们新建一个button组件,并命名为触发器,只在hit帧插入关键帧,然后画一个矩形,大小和前面的主体组件差不多就可以,如图16所示:
图16
6. 下面我们就用前面准备好的组件来制作骰子控制器。新建一个movie clip组件,命名为” 合成的控制器”,进入组件编辑状态后,建立三个图层,分别命名为layer1,layer2和layer3.
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)7. 将组件”主体”拖放到layer1的第1帧中,然后将组件”触发器”拖放到图层layer3的第1帧中,并调整位置和主体重叠,然后加入as:stop();,如图17所示:
图17
8、在图层layer1的第15帧插入一个关键帧,做一个主体对象从右到左的旋转移动motion,帧范围是1—15帧之间,然后将按f5将帧延续到30帧,在图层layer2的第15帧也插入一个关键帧,将组件”合成的点”拖动到主体的上面,然后在properties面板上命名为”dian”,并也同样延续到30帧,如图18所示:
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)图18
8. 回到图层layer3,在第15帧加入as:
tellTarget ("dian") {
gotoAndStop(random(7));
}
//控制骰子的随机跳转,以决定显示几点
在第30帧加入as:
if (Number(/:red) == 1) {
tellTarget ("/kong") {
gotoAndStop(4);
}
} else {
tellTarget ("/kong") {
gotoAndStop(2);
}
}
/