| 游戏制作步骤:
游戏素材的准备:
1. 进一步往下制作前需要准备好游戏中需要的素材,此游戏一共需要五个素材,分别是蓝色宝石,黄色宝石,红色宝石,炸弹和小人,素材的获得有很多方法,可以直接从外部文件中获得,也可以自己动手在Flash中绘制,图2所示为本游戏中的宝石和小人:

图2
2. 分别将蓝色宝石,黄色宝石,红色宝石和炸弹制作成相应的Graphic组件,然后新建一个Movie
clip组件,将小人图象拖进去,并重命名为小人。现在游戏中一共有5个组件,分别是Graphic组件蓝色宝石,黄色宝石,红色宝石和炸弹以及Movie
clip组件小人。
游戏中主要组件的制作:
1.记时器的制作:游戏中需要用到一个记时器,用来记录游戏的剩余时间,本游戏时间限制为100秒,并进行倒记时,时间为0后则游戏结束。新建一个Movie
clip组件,重命名为mTimebar,进入组件的编辑状态后,使用文本工具在编辑区的中心输入”剩余时间”几个字,然后新建一个图层layer2,在文字下面使用文本工具绘制一个文本框,在Properties属性面板中设置此文本框的类型为Dynamic
text动态文本,设置为动态文本框的原因是游戏中此文本框的时间会不断变化,所以需要设置为动态的,然后设置此文本框的变量名为txt,设置变量名的目的是为了使用Action控制文本框中的内容,如图3所示:

图3
将图层layer1和layer2都延长到第3桢,然后新建一个图层并重命名为Actions,在此图层的第1
关键桢添加如下as:
now = new Date();
startTime = now.getTime();
hasTime = 100;
txt = hasTime;
//第一句创建了一个新的Date日期对象now,然后第2句将当前时间赋给变量//startTime,接下来将值100赋给变量hasTime,最后一句将变量hasTime的值100设//置为文本框的初始值。
此图层的第2 关键桢添加如下as:
now = new Date();
tempTime = now.getTime();
txt = hasTime-int((tempTime-startTime)/1000);
if (!txt) {
_root.gotoAndStop("end");
this.stop();
}
//第一句创建了一个新的Date日期对象now,然后第2句将当前时间赋给变量//tempTime,第三句将表达式hasTime-int((tempTime-startTime)/1000)的值设置给//文本框,tempTime-startTime为当前时间与初始时间的差,也就是已经花掉的时间,
//此值再被hasTime减去,则为剩余时间。If语句判断文本框中的值是否为零,如果//剩余时间为零,则主场景中会跳到最后一桢并停止,意味着游戏结束。
此图层的第3关键桢添加如下as:
gotoAndPlay (_currentframe-1);
//如果剩余时间不为零,自然会播放到此桢,但是为了持续记数需要返回到上一桢播放,//所以_currentframe-1达到了此目的。
|