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