预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共21页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《Flash游戏编程》实验(训)指导书 目录 实训指导书编写说明………………………………………………1 实训一二维数组的建立和使用……………………………………2 实训二弹球程序的实现……………………………………………5 实训三打字游戏的实现……………………………………………8 实训四角色设计……………………………………………………11 实训五扫雷游戏的实现……………………………………………14 实训六战场生存记游戏的实现……………………………………17 实训七战场生存记游戏过关版的实现……………………………20 实训指导书编写说明 1.课程名称应与教学计划一致,写课程全称。 2.开课学年填写阿拉伯数字,学期填写中文汉字,如2009-2010学年第二学期。 3.总学时和周学时填写时,均带单位,如54学时、3学时。 4.授课班级填写全称,如2008级计算机网络1、2班。 5.教研室名称填写全称:如计算机应用教研室、计算机技术教研室、公共基础课教研室。 6.实验(训)项目应与实验(训)日历和实验(训)大纲一致。 7.实验(训)目的在填写时注意层次性,如了解……,理解……,掌握……,运用……。 8.实验(训)过程要注意步骤详略得当。操作部分不宜过于简略,应尽量详细。 《Flash游戏编程》实训指导书 实训一二维数组的建立和使用 一、实训目的 理解和使用数组对象(Array); 掌握数组对象的创建和多维数组的使用; 掌握用数组解决简单的地图编码问题的方法; 二、实训设备与环境 Windows操作系统+Adobeflashcs4软件 三、实训要求 在FlashCS4中,使用AS3创建一个n行m列的数组cells,n和m可以任意指定。cell数组将用来存储扫类游戏每个方块上是否有雷。0表示没有雷,1表示有雷。这个实验中,要求根据给定的n和m创建这个数组,并给这个数组随即地分配k个地雷(即有k个位置值为1,其余位置值为0)。 四、实训步骤与要点 打开FlashCS4Professional,选择【文件】|【新建】,或者按Ctrl+N,弹出新建文档对话框。选择“Flash文档(ActionScript3.0)”,按确定新建一个Flash文档。 双击图层上的“图层1”文字,进入修改状态,将“图层1”改为“action”。此修改是为了以后使用方便,对本次实验结果没有影响。 点击“action”图层的第1帧,按【F9】弹出动作面板,这个时候就可以编辑和输入ActionScript代码了。 在动作面板中输入代码1。(代码清单附于实验文档最后,请自行完成代码编写部分,这里给出的代码仅为参考!) 按Ctrl+S保存文件,然后选择【控制】|【测试影片】,或者按Ctrl+Enter测试影片。直到达到预定的效果为止。 继续编写代码,在原有代码的基础上,在creatArea()函数定义之前添加代码2(仅部分完成),完成选做部分。 代码1: varm:int,n:int;//雷区有m行n列。 vark:int;//总共有k个地雷。(k<m*n) m=10; n=15; k=20; varcells:Array=creatArea(); trace("创建的二维数组为:"); trace2DArray(cells); addBomb(k);//给雷区添加k个地雷 trace("添加地雷后的二维数组为:"); trace2DArray(cells); functioncreatArea():Array{ vararr:Array=newArray(m);//定义一维数组 for(vari=0;i<m;i++){ //一维数组的每个元素为一个新的数组 arr[i]=newArray();//创建一个空数组 for(varj=0;j<n;j++){ arr[i].push(0);//给数组添加新元组的一种方法,这里是在数组cells[i]的末尾添加一个新元组,值为0 } } returnarr; } functiontrace2DArray(arr:Array){//输出二维数组 for(vari=0;i<arr.length;i++){ trace(arr[i]); } } functionaddBomb(bombNumber:int){//给雷区添加k个地雷 if(bombNumber>m*n){ return; } vari,j,k; while(bombNumber>0){ k=int(Math.random()*m*n); i=int(k/n); j=k%m; if(cells[i][j]!=1){ cells[i][j]=1; bombNumber--; } }