// 初始化LuaState, 可以用来 Reload LuaState func (this *AppBase) reloadLuaState() error { if this.luaState != nil { this.luaState.Close() this.luaState = nil } this.luaState = lua.NewState() if this.luaState == nil { return errors.New("场景线程初始化Lua失败") } RegLua_all_appBase(this.luaState) // 注册公告变量-->本线程 this.luaState.SetGlobal("ts", this.GetLUserData("AppBase", this)) // 执行初始化脚本 this.luaState.Require("data/app_init") // 加载所有 login 文件夹里面的 *.lua 文件 this.luaState.RequireDir("data/app") return nil }
// 初始化LuaState, 可以用来 Reload LuaState func (this *Master) ReloadLuaState() error { if this.luaState != nil { this.luaState.Close() this.luaState = nil } this.luaState = lua.NewState() if this.luaState == nil { return errors.New("[E] 主线程初始化Lua失败") } // RegLua_all(this.luaState) // Require所有 master 文件夹里面的 *.lua 文件 return nil }
// 初始化LuaState, 可以用来 Reload LuaState func (this *ScreenThread) reloadLuaState() error { if this.luaState != nil { this.luaState.Close() this.luaState = nil } this.luaState = lua.NewState() if this.luaState == nil { return errors.New("[E] 场景线程初始化Lua失败") } RegLua_all(this.luaState) screen.RegLua_all(this.luaState) // 加载所有 screens 文件夹里面的 *.lua 文件 this.luaState.RequireDir("data/screens") return nil }