the Fighter Game
By Payen S.Tsung
- 面向对象
- webpack 搭建环境
- 移动端touch事件
- ES6 类、模块、解构赋值、模板字符串...
- HTML5 画布 Canvas
- HTML5 媒体 Media
- HTML5 动画 requestAnimationFrame
- HTML5 客户端本地存储 sessionStorage
- 装饰者模式:面向切面AOP
- 状态模式:状态机
- 发布-订阅模式/观察者模式
- 策略模式
- 资源预加载
- 对象池技术
- 分数记录
- 武器升级
- 炸弹清屏
- 音乐、音效
- 游戏难度晋升
- 语言环境选项
- 间隔发射弹幕的boss
- 普通敌机精灵与智能敌机精灵
- 暂停游戏、重新游戏等控制
移动端2D飞行射击游戏
触摸飞机移动躲避敌机
道具:
- 炸弹(清屏,点触左下使用,上限3枚)
- 武器(20s强化,可叠加4次)
分数:
- 小型敌机精灵:100分
- 中型敌机精灵:1200分
- 大型敌机精灵:3500分
左上点触暂停
电脑版chrome 需要F12切换为移动端页面(调整为iphone6看起来更舒服)
移动端chrome 无法取消下滑默认浏览器移动事件 在chrome://flags中可设置
Add:
-
智能敌机击落双倍的分(意味着并飞智能机出现可以使用炸弹炸分)
-
炸弹可以摧毁Boss的弹幕(沉默效果)
-
子弹击中Boss是有分数奖励的(7分/伤害),但使用炸弹没有分数奖励
-
当你的分数达到10w的倍数就会出现Boss
-
击败Boss后,游戏难度提升(精灵血量不会改变,变得是它们的速度,100w后非常难╮(╯▽╰)╭)
-
智能机隔一段时间发放,所以算好时间小心两边突然出现的横飞智能机
-
炸弹对于Boss的伤害 = 200固定伤害 + 武器等级 × 50 加成伤害
-
红色的子弹对敌机的伤害为2
-
如果在20s内没有吃到武器,那么武器就会变成最渣(运气也是游戏的一部分)
-
击杀Boss奖励分数:10000 + 2000 × Boss等级
-
当你处于屏幕下方,锁敌智能机的速度会非常快
-
暂停游戏是有惩罚的(因为派发敌机和武器持续时间是用定时器写的,暂停游戏,定时器不停)
-
游戏结束出现分数1s之后才能触摸屏幕回到主界面
-
我设置的游戏资源未加载完也可以进入游戏,所以可能会出现没有音乐等问题(谷歌会屏蔽部分音效)
(我一定不适合做游戏策划...)
v1.1
- 修复了特殊情况开始游戏后卡死的bug
- 修复了在部分浏览器滑动冲突卡死的bug
v1.2
- 延长了道具精灵发放时间间隔
- 改变了武器机制,现在可以叠加武器道具并强化
- 增加了三种智能敌机精灵AI (横飞、并飞、锁敌),击落双倍得分
- 修复了特殊情况下玩家精灵无敌的bug
- 修改了玩家精灵与敌机精灵的碰撞判定,使玩家更容易躲避
- 修改了音乐..
- 增加了boss系统
v1.3
- 削弱了横飞智能机的速度
- boss出现周期变短
- 削弱了炸弹对boss的伤害及武器伤害加成
- 炸弹可以毁灭boss的弹幕
- 修改了游戏难度提升系统
- 部分性能优化