坦克大战(七)大功告成

最后的收尾工作还有:增加游戏启动和结束页面、添加音效、复制生成另外两辆敌方坦克。请先下载补充素材,解压到原素材文件夹。下载链接:https://pan.baidu.com/s/1FFqRdAWdvFcXbiX25eT33Q 密码:aplt


  • 游戏启动和结束页面


游戏启动时,生成地图的时间比较长,可以用一个启动页面先将舞台遮挡起来。游戏结束时,要区别显示游戏胜利或者失败,并显示重新开始的按钮。

为了让游戏可以重新开始,要新建一个广播消息:游戏开始,把角色的启动条件从“当绿旗被点击”改为“当接收到游戏开始”。

操作步骤如下:

1、修改老家的代码,第一次启动由老家发出“游戏开始”的广播消息,老家被子弹击中时,改为广播“游戏失败”。

2、修改其它角色的代码,将全部“当绿旗被点击”改为“当接收到游戏开始”;

3、用装载中1.png生成一个新角色;

4、用装载中2.png、装载中3.png、装载中4.png 添加3个造型;

5、当接收到游戏开始消息时,将页面移至最上层,循环播放4个造型9次,每次间隔0.5秒,(这段时间遮住舞台)然后隐藏页面。代码如下:

6、修改“角色形状”的代码,将生命值等于0时的“停止所有”,改为广播消息“游戏失败”。修改“敌方形状1”的代码,将得分=7之后的“停止所有”,改为广播消息“顺利过关”;

7、用结束页面.png新建一个角色,添加代码如下:


8、用胜利页面.jpg(在补充素材中)新建一个角色,添加代码如下:

9、用重新开始.png新建一个角色,添加代码如下:



  • 添加音效

音效文件在补充素材中,以下场景需要播放音效:

1、游戏开始时,先播放一段经典的背景音乐“BGM-坦克大战.wav”;

2、我方坦克发射子弹时,播放“laser2.wav”;

3、我方发射的子弹碰撞到物体时,播放“碰撞.wav”;

4、我方坦克、敌方坦克和老家中弹爆炸时,播放“炸弹爆炸.wav”;

以添加我方坦克中弹爆炸为例,对“角色形状”进行如下操作:


  • 复制角色增加两辆敌方坦克

将鼠标移到角色区对准角色,在右键弹出菜单中选择复制,可以连代码一起生成一个新的角色。先复制敌方1两次,再复制敌方形状1两次,得到敌方2、敌方3和敌方形状2、敌方形状3,然后修改代码。

修改后敌方2代码如下:


注:截图不完整,碰撞判断后面还有:或碰到边缘 或碰到敌方形状1 或碰到敌方形状3 


敌方形状2的代码如下:


然后复制敌方子弹1两次,生成敌方子弹2和敌方子弹3。

敌方子弹2代码修改如下:

注:碰撞判断后面还有:或碰到边缘 或碰到角色形状。

敌方子弹3也作类似修改。


注意:增加坦克和子弹以后,我方坦克及敌方坦克1的移动碰撞判断中要增加碰到敌方形状2和敌方形状3;我方坦克、普通砖块、老家的中弹判断中要增加敌方子弹2和敌方子弹3。


至此大功告成,我把项目上传到了Scratch官网,想体验游戏和查看完整源代码,请访问以下地址:https://scratch.mit.edu/projects/209630396/。