如何仿写iOS微信打飞机

9 篇文章 0 订阅
5 篇文章 0 订阅

仿写打飞机学习总结

一、Android微信打飞机与iOS微信打飞机的区别

1.Android打飞机,同一时间屏幕上不止存在一个子弹,可能有三颗或更多,而iOS上的打飞机任意时间屏幕上至多存在一个子弹。

2.Android打飞机子弹是匀速的发射频率固定,而iOS上的打飞机子弹的运动速度可能与其发射坐标相关,距离屏幕上方越远子弹的飞行速度越快,距离敌机越近,发射频率越高。

3.Android打飞机大型飞机打击效果和iOS上打飞机的效果不同,Android为打一下闪烁一下,iOS为飞机低于一定血量时持续闪烁。

二、iOS打飞机特性

1.双枪的杀伤力等于单枪的杀杀伤力,但双枪的攻击范围较大,每30S随机出现,吃到持续12S。

2.敌机在打爆炸之后,微小时间内仍然是有碰撞体积的。

3.子弹是在距离顶端一定距离处回收,而不是出屏幕。

4.子弹的运动速度,以及发射速度很可能不是固定的。

三、大体实现思路

设计模型对象(Model) 子弹,英雄战机,三种不同的敌机。子弹与英雄战机相互认识,飞机可能改变子弹的发射状态,如单发双发,子弹依据英雄飞机的头部位置发射。三种敌机继承一个抽象的敌机。抽象敌机抽象出共有属性,如血量,移动速度。为不同飞机设计视图UIImageView,这里使用的是模型组合视图对象,如采用模型对象继承UIImageView实现简单一些。利用控制器完成整个游戏的控制。

在创建敌机对象时,可以才用工厂方法模式,或是简单工厂模式,会是代码的可维护性提高。另外,对于iOS打飞机来说,子弹对象和英雄战机只有一个无需重复创建。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值