博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(NO.00002)iOS游戏精灵战争雏形(八)
阅读量:6091 次
发布时间:2019-06-20

本文共 460 字,大约阅读时间需要 1 分钟。

子弹的初始化工作前2篇基本做好了,下面就是如何射出子弹.

通常来说,子弹射向目标对象,需要走一条直线.直线由2点定位,分别为发射点和目标点.

发射点就是开枪精灵自身的位置,目标点则为敌方精灵的位置,大致如下图所示:

这里写图片描述

由初中物理力学原理可知,要想子弹沿中间橙色路径飞行,需要在子弹上附加(x,y)的力矩.大概是这个意思,物理好的童鞋可以自行理解.物理不好的童鞋,我也救不了你们 ;)

现在就是要找到(x,y)的值?从上图中可以发现x恰好等于红精灵位置x值与绿精灵位置x值的差,y值与此相同,于是我们得到:

x = greenSprite.position.x - redSprite.position.x

y = greenSprite.position.y - redSprite.position.y

在cocos2d中,可以用内置函数轻松实现:

ccpSub(greenSprite.position,redSprite.position);

子弹发射的原理知道了,下一篇我们就来尝试完成子弹发射的代码,下篇见 ;)

你可能感兴趣的文章
实例讲解遗传算法——基于遗传算法的自动组卷系统【理论篇】
查看>>
无法在web服务器上启动调试。调试失败,因为没有启用集成windows身份验证
查看>>
Bat相关的项目应用
查看>>
Django为数据库的ORM写测试例(TestCase)
查看>>
NYOJ-107 A Famous ICPC Team
查看>>
与众不同 windows phone (44) - 8.0 位置和地图
查看>>
Visual Studio Code 使用 ESLint 增强代码风格检查
查看>>
iOS设备中的推送(二):证书
查看>>
敏捷 - #3 原则:经常提供工作软件 ( #3 Agile - Principle)
查看>>
数据结构与算法:二分查找
查看>>
使用思科模拟器Packet Tracer与GNS3配置IPv6隧道
查看>>
iOS开发-NSPredicate
查看>>
Exchange Server 2003 SP2 数据存储大小限制修改
查看>>
expr命令用法-实例讲解
查看>>
酷派8705救砖
查看>>
iOS10里的通知与推送
查看>>
# C 语言编写二进制/十六进制编辑器
查看>>
EMS SQL Management Studio for MySQL
查看>>
我的友情链接
查看>>
做母亲不容易
查看>>