/// <summary> /// Creates a new instance of <c>LuaEngine</c> /// </summary> /// <param name="scriptsPath">The directory where the Lua scripts are located.</param> public LuaEngine(string scriptsPath) { Log.Notice("LuaEngine", sLConsole.GetString("Initializing Lua engine.")); _lua = new Lua(); _luaFunctions = new Dictionary<string, LuaFunctionDescriptor>(); _scriptPath = scriptsPath; _functions = new LuaFunctions(ref _lua); LuaHelper.RegisterLuaFunctions(_lua, ref _luaFunctions, _functions); LoadScripts(); _watcher = new FileSystemWatcher(_scriptPath) { NotifyFilter = NotifyFilters.FileName | NotifyFilters.Attributes | NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.Security | NotifyFilters.Size, EnableRaisingEvents = true }; _watcher.Created += (s, e) => LoadScripts(true); _watcher.Changed += (s, e) => LoadScripts(true); _watcher.Deleted += (s, e) => LoadScripts(true); _watcher.Renamed += (s, e) => LoadScripts(true); }
/// <summary> /// Creates a new instance of <c>LuaEngine</c> /// </summary> /// <param name="scriptsPath">The directory where the Lua scripts are located.</param> public LuaEngine(string scriptsPath) { Log.Notice("LuaEngine", sLConsole.GetString("Initializing Lua engine.")); _lua = new Lua(); _luaFunctions = new Dictionary <string, LuaFunctionDescriptor>(); _scriptPath = scriptsPath; _functions = new LuaFunctions(ref _lua); LuaHelper.RegisterLuaFunctions(_lua, ref _luaFunctions, _functions); LoadScripts(); _watcher = new FileSystemWatcher(_scriptPath) { NotifyFilter = NotifyFilters.FileName | NotifyFilters.Attributes | NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.Security | NotifyFilters.Size, EnableRaisingEvents = true }; _watcher.Created += (s, e) => LoadScripts(true); _watcher.Changed += (s, e) => LoadScripts(true); _watcher.Deleted += (s, e) => LoadScripts(true); _watcher.Renamed += (s, e) => LoadScripts(true); }