自定義c++代碼給lua用的一些細節總結
參考:點擊打開鏈接
1.自定義 XXX.cpp .XXX.h2.D:\quick\quick-cocos2d-x-2.2.3-rc\lib\cocos2d-x\external\extra\luabinding
創建 XXX_luabinding.tolua$#include "XXX.h"
class XXX
{
static int getFileData();//根據自己具體寫的去編寫};
創建 build_XXX_luabinding.bat
@echo off
set DIR=%~dp0
set OUTPUT_DIR=%DIR%
set MAKE_LUABINDING="%QUICK_COCOS2DX_ROOT%\bin\compile_luabinding.bat"
pushd
cd "%DIR%"
call %MAKE_LUABINDING% -E XXX -d %OUTPUT_DIR% XXX_luabinding.tolua
echo.
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo.
rem call %MAKE_LUABINDING% -d %OUTPUT_DIR% cocos2dx_extra_ios_iap_luabinding.tolua
popd
修改build.bat
在最下面添加
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo.
call %MAKE_LUABINDING% -d %OUTPUT_DIR% XXX_luabinding.tolua
3.運行build.bat
在模擬器的工程中添加對應的XXX.cpp XXX.h 和生成的XXX_luabinding.cpp 和 XXX_luabinding.h
4.在D:\quick\quick-cocos2d-x-2.2.3-rc\lib\cocos2d-x\scripting\lua\cocos2dx_support
CCLuaStack.cpp中
添加 67行
#include "MyHelperFunc_luabinding.h"
添加
bool CCLuaStack::init(void)中137行添加
luaopen_XXX_luabinding(m_state);
編輯模擬器,找到生成的替換win目錄下的player.exe及附帶資源
在運行自己的lua代碼,生成成功。