Cocos2d-x Lua 回调函数cc.CallFunc类,内部调用其他类函数报空

版本:cocos2d-x 3.11 语言:Lua

 

今天逛了一遍论坛,看到一些独立游戏制作者制作的游戏,感觉好羡慕。自己也有种想要制作一个的冲动,不过不是那种益智类的小游戏,而是世界观庞大的高自由度RPG。但对于我现在来说是没办法的吧。

 

闲话不多说进入正题。首先先看代码:


 

在执行跳转界面的函数中,首先然玩家的信息栏往上移动,移动完毕后调用回调函数。

 

就在调用回调函数CallFunc的时候报了一个很奇怪的错误:

 

说是我的cclog用法错误了,用print打印了一下内容后发现内容是nil,而我所需要的是一个int型的数值,也就是说函数报空了。

 

往上去查初始化,打印,没有任何问题,最后想到了一个原因就是自己没有把调用函数的对象传进去。我在C++中反正都是这么创建的:

auto callFunc = CallFunc::create([&](){ });

 

内容反正都是自动捕获的,什么都不用管,但是在Lua中就用不了这样的方法吧。查了一些资料,都是基础的使用,后来是看了项目中以前代码的使用才解决这个问题的:

 

使用handler传入本身就OK了。

 

总结:

创建CallFunc的时候,使用handler传入自身,不然会报空

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值