【quick-cocos2d-lua】 常用函数

LUA中的getXX事件:

    getPosition()             -- 返回两个值:x y
    getAnchorPoint()      -- point_table
    getContentSize()      -- size_table
    getBoundingBox()   -- rect_table

其中,要注意的是getPosition(),其他的都可以直接赋值给表

getPosition() --返回的是x,y两个值

接受后处理

    -- 方法一 : 用两个变量接收
    local x, y = sprite:getPosition()
     
    -- 方法二 : 转换为point_table
    local p = cc.p(sprite:getPosition())

 

table函数:


--在pos中插入一个元素,默认插入到末尾
table.insert(table, pos, value)

--返回table中所有key中的最大key值
table.maxn(table)

--移除table中pos位置的元素,其后的元素会前移
table.remove(table, pos)

--获取table中的元素个数
table.getn(table)

--设置table中的元素个数
table.setn(table,nSize)

 

convertToNodeSpace:把世界坐标转换到当前节点的本地坐标系中。(如屏幕点击事件触摸点)

convertToWorldSpace:把基于当前节点的本地坐标系下的坐标转换到世界坐标系中。(如不同层中的碰撞检测)

 

 

判断给定的点是否被一个cc.rect包含,可以用cc.rectContainsPoint函数

cc.rectContainsPoint(cc.rect, point);参数一个矩形一个点

cc.rect(x, y, width, height),参数为CCRect的原点和大小

 

触摸事件吞噬

默认情况下,Node 在响应触摸后(在 began 状态返回 true 表示要响应触摸),就会阻止事件继续传递给 Node 的父对象(更下层的 Node),这称为触摸事件吞噬

如果要改变这个行为,可以用:

  • setTouchSwallowEnabled() 是否允许 Node 吞噬触摸,默认为 true。如果设置为 false,则 Node 响应触摸事件后,仍然会将事件继续传递给父对象。

  • isTouchSwallowEnabled() 检查 Node 是否允许吞噬触摸。

 

获取大小尺寸的函数

getContentSize函数来获得节点原始的大小。只是逻辑尺寸,不是像素

getBoundingBox函数来获得经过缩放和旋转之后的外框盒大小。

local boundingSize = self:getBoundingBox()

local width = boundingSize.width

local heigt = boundingSize.height

 

getContentSizeInPixels获得的是像素点大小
getVisibleSize:默示获得视口(可视区域)的大小,若是DesignResolutionSize跟屏幕尺寸一样大,则getVisibleSize便是getWinSize。
getVisibleOrigin:默示可视区域的出发点坐标,这在处理惩罚相对地位的时辰很是有效,确保节点在不合辨别率下的地位一致。
 

 

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值