make :members() not return index, add -DBLLUA_ALLOWFFI, allow reading modules/lualib/, bug fixes
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
// BlockLua (bllua4): Simple Lua interface for TorqueScript
|
||||
// BlockLua (bllua4): Advanced Lua interface for TorqueScript
|
||||
|
||||
// Includes
|
||||
|
||||
@@ -57,22 +57,26 @@ bool init() {
|
||||
|
||||
// Set up Lua environment
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaEnv);
|
||||
#ifdef BLLUA_ALLOWFFI
|
||||
lua_pushboolean(gL, true);
|
||||
lua_setglobal(gL, "_bllua_allowffi");
|
||||
#endif
|
||||
#ifndef BLLUA_UNSAFE
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaEnvSafe);
|
||||
#endif
|
||||
|
||||
// Expose Lua API to TS
|
||||
BlAddFunction(NULL, NULL, "_bllua_luacall", bll_ts_luacall, "LuaCall(name, ...) - Call Lua function and return result", 2, 20);
|
||||
BlEval(bll_fileTsEnv);
|
||||
|
||||
// Load utilities
|
||||
// Load utilities in Lua
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaStd);
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaVector);
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaMatrix);
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaLibts);
|
||||
BlEval(bll_fileTsLibts);
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaLibbl);
|
||||
BLL_LOAD_LUA(gL, bll_fileLuaLibblTypes);
|
||||
|
||||
// Expose Lua API to TS
|
||||
BlAddFunction(NULL, NULL, "_bllua_luacall", bll_ts_luacall, "LuaCall(name, ...) - Call Lua function and return result", 2, 20);
|
||||
BlEval(bll_fileTsEnv);
|
||||
BlEval(bll_fileTsLibts);
|
||||
BlEval(bll_fileTsLibblSupport);
|
||||
BlEval(bll_fileLoadaddons);
|
||||
|
||||
@@ -85,8 +89,7 @@ bool init() {
|
||||
bool deinit() {
|
||||
BlPrintf("BlockLua: Unloading");
|
||||
|
||||
BlEval("deactivatePackage(_bllua_main);");
|
||||
BlEval("$_bllua_active = 0;");
|
||||
BlEval("$_bllua_active=0;deactivatePackage(_bllua_main);");
|
||||
bll_LuaEval(gL, "for _,f in pairs(_bllua_on_unload) do f() end");
|
||||
|
||||
lua_close(gL);
|
||||
|
||||
Reference in New Issue
Block a user