js实现飞机大战小游戏

一开始先定义一个变量state记录游戏的状态

预备

游戏开始前的准备界面的内容

画布的宽高

游戏的各种状态  自定义的规则,定义常量来实现  

绘制不断运动的背景图片,

创建图片对象,给定图片的src属性  加载图片

设置背景图片对象的详细信息,宽度,高度,图片对象,

自定义构造函数

设置基本的数据

设置绘图的需要的坐标  --两张图片需要不断的运动    0,0,0,-this.height

绘制图片的方法 ----两张图片

图片运动的方法---两张图片的y坐标不断的更改---判断临界点

实例化背景图片的对象   通过构造函数实例化

游戏的logo

直接在画布中绘制logo  state == START

 

点击画布  STARTING

我方飞机出场阶段  游戏过渡阶段

飞机出场

准备好飞机出场的所有图片 数组  宽高一致,只是飞机在图片中的位置不一样而已

设置加载图片的信息,这是个对象  有哪些图片  属性imgs:LOADINGS  宽 高 

记录了加载的图片数量

自定义的动画效果构造函数

基本数据  -----  上面的对象数据都要包含

索引 ----- 记录当前绘制第几张图片

绘制图片  坐标固定  :0,画布高度-图片的高度

速度的属性

运动的方法  每一次增加这个速度,当这个数去取某个数的余数等于0的时候

切换索引 --- 索引值+1

如果所有的图片都绘制了,表示需要切换游戏状态为RUNNING

实例化动画效果的对象

 

开始游戏

我方飞机加载完成以后,直接进入游戏开始阶段

敌方飞机进场   我方飞机发射子弹

记录分数  生命值的变化

具体的步骤和前面的步骤

构造函数 创建对象完成

暂停游戏

游戏中,如果鼠标出了画布,就暂停游戏

鼠标再次进入时,恢复游戏

结束游戏

当生命值为0的时候,结束游戏

启动游戏

通过定时器调用函数

任何时候都需要绘制背景图片

在START状态下绘制logo

在STARTING状态下绘制  动画效果的绘制方法以及运动方法

总结:做这个小游戏之前需要先分析每个游戏状态下要做的事情,

通过构造函数来绘制我方飞机,子弹,敌方飞机等,

最后通过定时器来调用各个函数。

 

转载于:https://www.cnblogs.com/hyh888/p/11587316.html

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值