微信demo游戏飞机大战从无到有
现在创建新项目会默认给飞机大战的demo,这里给大家从基础开始讲解游戏的从无到有是怎么实现的。
具体实现步骤:
创建背景图->背景图运动起来->创建飞机并随背景图一起动->控制飞机移动->飞机发射子弹->创建敌机->消灭敌机->玩家飞机被击毁->显示结算界面
首先删除所有自带文件,只保留game.js、game.json和project.config.json(原来的最好保留,因为等会要复制一些内容)
删除game.js中的内容,此时模拟器为一片漆黑,如下图所示
好,我们正式开始一步步开始编写飞机大战
官方提供了Adapter库,方便我们操作,官方的解释如下:
这里weapp-adapter足够用,就不用其它游戏引擎了!
1、weapp-adapter
新建JS文件夹,在js文件夹中新建libs文件夹,将weapp-adapter复制进来(原来保存中复制),然后js目录下新建一个main.js文件
2、在game.js中添加代码
main.js先空着,我们要先建立精灵类
3、创建精灵类
精灵,是构成游戏中活动体(比如,飞机、野兽等游戏人物)的最基本单元。
在JS目录下新建sprite.js文件,添加代码,定义背景图的文件,大小,位置等,并显示在画布上。
4、显示背景图
然后添加背景图片images/bg.jpg,在background.js文件中添加代码
背景图片的方法已经完成,现在到主函数main.js中实现图片显示,添加代码
即可实现图片加载,效果如下:
5、背景图运动起来
如果细心的朋友会发现,前面背景图方法里是绘制了两张图片的,一张是和铺满屏幕的,另一张是在屏幕上方看不到的。
如果让背景图运动起来,就要是图片向下移动,因为每一帧都会重新绘制,所以要再背景图方法中加一个向下运动的方法
然后再loop循环中添加
此时背景图就运动起来了
6、加载飞机,并随地图一起运动
新建玩家飞机类
转存失败重新上传取消
转存失败重新上传取消
转存失败重新上传取消
在主函数中添加飞机相关
将loop循环中的内容拆分为重绘和更新
此时,玩家飞机出现,并可以和地图一起运动