在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);