(文末有源码)
休息会玩了会微信小游戏。但是那个级别只是微信小游戏做的 demo,要说玩的话在体验方面还有不少可以优化的:
1. done:移动操作是跟随手指的(我要给改成 向某个坐标移动,坐标就根据点击的位置获取)
2. 只有发子弹,攻击模式单一 (我要支持积攒能量,用能量兑换无敌、增加射击强度、回血)
3. done:一条命(我要支持血条)
4. 敌机不会发射子弹(我要支持发子弹)
血条用数字先代替下效果如图:
在界面的左上角,我加了个 life ,用于标识还剩几条命,其实就是血条一个意思了,我们看看实现过程:
1. 我先让 player 有血条属性,我们在 index.js 中定义 playerBlood,并将句柄通过构造方法传递出去:
而后提供两个函数,一个查当前,一个是减血:
player 有了这几个能力, 我们就可以在主函数中,改造它的逻辑了,我们要在碰撞检测的时候,扣掉一次血。当然要判断是否低于 playerBlood :
另外界面上需要展示血条,所以 在gameinfo.js 中增加绘制血条的函数:
然后托管给 main.js :
到这里,我们的小飞机就支持血条啦!(也可以理解为多条命)
我们一起快乐的玩耍吧。(下次想要实现什么功能呢。。让敌机能发子弹,还是增加防护罩。。)
源码地址,欢迎交流: