1、贪吃蛇游戏贪吃蛇游戏一、作品展示及分析:一、作品展示及分析:贪吃蛇游戏贪吃蛇游戏二、游戏制作步骤:二、游戏制作步骤:1.新建文档,新建文档,600*410,背景色为,背景色为#0066CC。2.在图层在图层1“背景背景”上绘制一个上绘制一个400*400的黑色矩形,再绘制一个的黑色矩形,再绘制一个160*385的黑色矩形,调整成平行四边形。在第的黑色矩形,调整成平行四边形。在第8帧插入普通帧。帧插入普通帧。3.新建图新建图“蓝色矩形蓝色矩形”,绘制一个,绘制一个400*400的矩形,颜色的矩形,颜色#66ccff,插入,插入点:点:0,0。放置在黑色矩形上,形成阴影效果。也可直接复制,修改颜。
2、放置在黑色矩形上,形成阴影效果。也可直接复制,修改颜色后形成阴影效果。同理,绘制一个平行四边形形成阴影效果。色后形成阴影效果。同理,绘制一个平行四边形形成阴影效果。贪吃蛇游戏贪吃蛇游戏4.新建元件新建元件food,在第在第1帧输入脚本代码:帧输入脚本代码:stop();第第2帧帧绘制一个苹果,调整尺寸大小为绘制一个苹果,调整尺寸大小为13.8*15.25.新建元件新建元件worm,绘制一个直径为,绘制一个直径为16的绿色放射状圆的绿色放射状圆形,插入点为(形,插入点为(-8,-8)。再绘制两条直线做为触角。)。再绘制两条直线做为触角。6。新建元件。新建元件worm_tail,直径为直径为16,
3、放射状灰色,插入,放射状灰色,插入点为(点为(-8,-8)。)。贪吃蛇游戏贪吃蛇游戏7.新建按钮元件新建按钮元件new_game如下:如下:8.新建图层新建图层”小格子小格子“:在蓝色矩形上绘制在蓝色矩形上绘制16*16的小格子的小格子,白色,线宽白色,线宽1。复制更多的小格子,摆放整齐。每行。复制更多的小格子,摆放整齐。每行25个,共个,共25行。行。贪吃蛇游戏贪吃蛇游戏9.新建图层新建图层“右面板右面板”,输入静态文本,输入静态文本“Worm!”及及“Use the arrow keys to comtrol the snake”,拖入拖入arrow 和和 apple元件。最元件。最后创建
4、动态文本框。变量名为后创建动态文本框。变量名为eaten。拖入。拖入New Game按钮,添加动作脚按钮,添加动作脚本:本:on(release)gotoAndPlay(initialize);贪吃蛇游戏贪吃蛇游戏10.新建图层新建图层”蛇和苹果蛇和苹果”,在第在第3帧插入空白关键帧帧插入空白关键帧,拖入拖入worm、worm_tail、food元件。实例名称分别为:元件。实例名称分别为:worm、tail1、tail2、food。在第。在第6帧插入空白关键帧插入空白关键帧,输入静态文本:帧,输入静态文本:Game Over!贪吃蛇游戏贪吃蛇游戏11.新建图层新建图层“标签标签”,在第,在第2
5、帧插入空白关键帧,输入标签名:帧插入空白关键帧,输入标签名:initialize;在第;在第3帧插入空白关键帧,输入标签名:帧插入空白关键帧,输入标签名:game loop;在第;在第6帧插入空白关键帧,输入标签名:帧插入空白关键帧,输入标签名:game over。12.新建图层新建图层”动作动作”,在第在第1帖输入动作代码帖输入动作代码:stop();在第在第2帧输入动作代码帧输入动作代码:mleft=1;mright=0;mup=0;mdown=0;food=0;tails=2;eaten=0;time=0;贪吃蛇游戏贪吃蛇游戏在第在第3帧输入动作代码帧输入动作代码:dead=0;if(!
6、food)randomy=16*(random(25);randomx=16*(random(25);setProperty(/food,_x,(randomx+8);setProperty(/food,_y,(randomy+8);food=1;tellTarget(/food)gotoAndStop(2);贪吃蛇游戏贪吃蛇游戏if(mleft)if(getProperty(/worm,_x)=8)lastx=getProperty(/worm,_x);lasty=getProperty(/worm,_y);setProperty(/worm,_x,(getProperty(/worm,_x
7、)-16);setProperty(/worm,_rotation,0);elsedead=1;else if(mright)if(getProperty(/worm,_x)=8)lastx=getProperty(/worm,_x);lasty=getProperty(/worm,_y);setProperty(/worm,_y,(getProperty(/worm,_y)-16);setProperty(/worm,_rotation,90);elsedead=1;else if(mdown)if(getProperty(/worm,_y)=392)lastx=getProperty(/w
8、orm,_x);lasty=getProperty(/worm,_y);setProperty(/worm,_y,(getProperty(/worm,_y)+16);setProperty(/worm,_rotation,270);elsedead=1;贪吃蛇游戏贪吃蛇游戏for(currenttail=1;currenttail=tails;currenttail+)usex=lastx;usey=lasty;lastx=getProperty(/tailadd currenttail,_x);lasty=getProperty(/tailadd currenttail,_y);setPr
9、operty(/tailadd currenttail,_x,usex);setProperty(/tailadd currenttail,_y,usey);fcurrentx=getProperty(/food,_x);fcurrenty=getProperty(/food,_y);wcurrentx=getProperty(/worm,_x);wcurrenty=getProperty(/worm,_y);if(wcurrentx=fcurrentx&wcurrenty=fcurrenty)food=0;tellTarget(/food)gotoAndStop(1);eaten+=1;贪吃
10、蛇游戏贪吃蛇游戏if(eaten%2=0)_root.tail1.duplicateMovieClip(tail+(tails+1),tails+1);setProperty(/tailadd tails,_x,usex);setProperty(/tailadd tails,_y,usey);tails+=1;if(!dead)for(currenttail=1;currenttail=tails;currenttail+)if(getProperty(/worm,_x)=getProperty(/tailadd currenttail,_x)if(getProperty(/worm,_y)
11、=getProperty(/tailadd currenttail,_y)dead=1;break;if(dead)gotoAndPlay(game over);贪吃蛇游戏贪吃蛇游戏在第在第4帧输入动作代码帧输入动作代码:gotoAndPlay(game loop);在第在第6帧输入动作代码帧输入动作代码:for(currenttail=3;currenttail=tails;currenttail+)setProperty(/tail add currenttail,_visible,false);在第在第7帧插入动作代码帧插入动作代码:stop();贪吃蛇游戏贪吃蛇游戏13最后最后,为为w
12、orm影片添加动作脚本:影片添加动作脚本:onClipEvent(keyDown)if(Key.isDown(Key.LEFT)if(!./:mright)./:mleft=1;./:mright=0;./:mup=0;./:mdown=0;if(Key.isDown(Key.RIGHT)if(!./:mleft)./:mleft=0;./:mright=1;./:mup=0;./:mdown=0;贪吃蛇游戏贪吃蛇游戏if(Key.isDown(Key.UP)if(!./:mdown)./:mleft=0;./:mright=0;./:mup=1;./:mdown=0;if(Key.isDow
13、n(Key.DOWN)if(!./:mup)./:mleft=0;./:mright=0;./:mup=0;./:mdown=1;贪吃蛇游戏贪吃蛇游戏14为为worm影片添加动作脚本:影片添加动作脚本:onClipEvent(keyDown)if(Key.isDown(Key.LEFT)if(!./:mright)./:mleft=1;./:mright=0;./:mup=0;./:mdown=0;if(Key.isDown(Key.RIGHT)if(!./:mleft)./:mleft=0;./:mright=1;./:mup=0;./:mdown=0;贪吃蛇游戏贪吃蛇游戏if(Key.isDown(Key.UP)if(!./:mdown)./:mleft=0;./:mright=0;./:mup=1;./:mdown=0;if(Key.isDown(Key.DOWN)if(!./:mup)./:mleft=0;./:mright=0;./:mup=0;./:mdown=1;贪吃蛇游戏贪吃蛇游戏注意:注意:1、在拖入、在拖入worm元件时,一定要将其放在元件时,一定要将其放在16*N+8的位置上,否则就不能跟的位置上,否则就不能跟food的坐标的坐标保持一致的话就不能吃到苹果了。保持一致的话就不能吃到苹果了。2、修改发布设置:、修改发布设置:flash 5,版本为版本为1.0