Scratch经典游戏之坦克大战
2021-06-25陈新龙
电脑报 2021年2期
陈新龙
小时候能够花点钱在小卖部游戏机上玩一下午那是非常开心的事情,当时最吸引我的是坦克大战,因为可以和哥哥双人PK,为了美好的童年回忆,今天就和大家一起用Scratch完成坦克大战吧。
游戏分为红蓝两方,两个玩家分别通过方向键和WASD键控制坦克方向。和其他游戏的方向控制方式不同,坦克的运动方式是上下键控制坦克前进和后退,左右键控制坦克旋转(左键逆时针旋转,右键顺时针旋转)。
与原版的坦克大战不同,游戏地图的障碍物无法破坏,但可以反弹炮弹。这样在游戏中玩家可以利用地形打击对方,使游戏的可玩性大大提升。相应的我们针对炮弹的射程也做了适当限制,这样当炮弹击中障碍物后不会无限反弹。
1. 绘制地图
首先自己在背景中绘制地图,不同的背景地图相当于游戏的关卡,选择合适的颜色与适当粗细的线段画出来就可以了,你可以绘制多张地图随机调用(图1)。

2. 坦克代码
坦克代码首先要实现运动控制功能。首先对红色坦克编程,当玩家按下上下键时坦克前进或后退5步。为了控制坦克旋转角度,设置新的变量“红色坦克方向”,用面向“变量”方向的积木实现方向控制(图2)。

在绘制坦克图形时有个小技巧,我们将坦克的前后两部分的外边设置成了不同的颜色,这样就可以侦测出当坦克向前移动时撞到墙壁后自动倒退5步,完成停止不动的效果,后退也是相同的原理(图3)。

3. 炮弹代码
当两个玩家按下空格键和J键便可分别发射黄色的炮弹,炮弹击中敌方的坦克和误伤到自己都会扣10滴生命值。……
登录APP查看全文
