cocos2d-x Lua事件调用 新版本中Rect判断是否包含Point

版本:cocos2d-x 3.11 语言:Lua

 

最近一段时间毕业生进入公司,比较的忙,有点忘了博客的事情了。开始找工作的时候真是一波三折啊,自己的各方面技术还有待提高,准备接下来除了工作上的事情,看看数据结构、仔细研究VS的一些用法。

 

嗯,扯远了,从今天开始工作日,我尽量日更博文,分享一下自己遇到的一些问题,还有解决的方法,如果大大们有什么建议,还请不吝赐教。

 

项目里面有一部分是Lua写的,版本在从2.0升级为3.0的时候,Lua部分出现了很多问题。首先我从触碰事件开始说。

 

以上是一个很简单的触碰事件,但是如果加上范围的判读语句,不管在哪里点击都会触发触碰事件。所以以下是触碰事件的写法

 

项目中老版本的Lua是这么写的:

 

转换成节点坐标后,直接containsPoint(pos)就能判断是否包含节点了,而然很遗憾新版本的boundingBox并不包含该方法。再三思考,就想着自己写一个contains方法了。

 

以下是我自己写的方法:

 

比较烦,在考虑是否要弄成全局方法,不然每次都要写上这个方法。不过昨天晚上,我没事看书的时候,正好看到了别人的处理方式。

 

以下是标准的处理:

 

其中rect是sprite的边框,touchPoint是触碰的位置,直接自己提供了方法啊!cocos升版本真的是伤不起啊。。。

 

总结:

判断是否包含节点,使用cc.rectContainsPoint(rect, touchPoint)方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值