您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d-x里C++调用Lua

2018-01-18 12:30 816 查看
在Lua文件里注册函数,其实就是注册一个cc.Handler.CALLFUNC类型的事件,收到事件后执行reiceLogCallBack函数,data是传给reiceLogCallBack函数的数据:
ScriptHandlerMgr:getInstance():registerScriptHandler(tolua.cast(data, "cc.Ref"),reiceLogCallBack, cc.Handler.CALLFUNC)
//lua函数
function reiceLogCallBack(data)
      print("收到登陆返回结果")
end

data是C++传回的数据,必须是cc.Ref类型的
//C++处理 发送一个事件,Lua中注册(监听)
UserData ud("minyou",111111)
BasicScriptData data((void*)this,&ud)  
ScriptEvent  eve(ScriptEventType::kCallFuncEvent, &data);  
ScriptEngineManager::getInstance()->getScriptEngine()->sendEvent(&eve);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: