Exemple #1
0
        public void Start()
        {
            string FougeriteDirectoryConfig = Path.Combine(Util.GetServerFolder(), "FougeriteDirectory.cfg");

            Config.Init(FougeriteDirectoryConfig);
            Logger.Init();
            _timergo = new GameObject();
            _timergo.AddComponent <CTimerHandler>();
            UnityEngine.Object.DontDestroyOnLoad(_timergo);
            CTimer.StartWatching();

            Rust.Steam.Server.SetModded();
            Rust.Steam.Server.Official = false;

            if (ApplyOptions())
            {
                //ModuleManager.LoadModules();
                LuaPluginLoader.GetInstance();
                CSharpPluginLoader.GetInstance();
                JavaScriptPluginLoader.GetInstance();
                PythonPluginLoader.GetInstance();
                Fougerite.Hooks.ServerStarted();
                Fougerite.ShutdownCatcher.Hook();
            }
            SQLiteConnector.GetInstance.Setup();
        }
Exemple #2
0
        /// <summary>
        /// Loads this extension
        /// </summary>
        public override void Load()
        {
            // Setup JavaScript instance
            InitialiseJavaScript();

            // Register the loader
            loader = new JavaScriptPluginLoader(JavaScriptEngine);
            Manager.RegisterPluginLoader(loader);
        }
Exemple #3
0
        public void Start()
        {
            string FougeriteDirectoryConfig = Path.Combine(Util.GetServerFolder(), "FougeriteDirectory.cfg");

            Config.Init(FougeriteDirectoryConfig);
            Logger.Init();

            Rust.Steam.Server.SetModded();
            Rust.Steam.Server.Official = false;

            if (ApplyOptions())
            {
                //ModuleManager.LoadModules();
                LuaPluginLoader.GetInstance();
                CSharpPluginLoader.GetInstance();
                JavaScriptPluginLoader.GetInstance();
                PythonPluginLoader.GetInstance();
                Fougerite.Hooks.ServerStarted();
                Fougerite.ShutdownCatcher.Hook();
            }
            SQLiteConnector.GetInstance.Setup();
        }
Exemple #4
0
        /// <summary>
        /// Called when all other extensions have been loaded
        /// </summary>
        public override void OnModLoad()
        {
            foreach (var extension in Manager.GetAllExtensions())
            {
                if (!extension.IsGameExtension)
                {
                    continue;
                }

                WhitelistAssemblies = extension.WhitelistAssemblies;
                WhitelistNamespaces = extension.WhitelistNamespaces;
                break;
            }

            // Setup JavaScript instance
            InitializeJavaScript();

            // Register the js loader
            loader = new JavaScriptPluginLoader(JavaScriptEngine);
            Manager.RegisterPluginLoader(loader);

            // Register the coffee loader
            coffeeLoader = new CoffeeScriptPluginLoader(JavaScriptEngine);
            Manager.RegisterPluginLoader(coffeeLoader);

            // Bind JavaScript specific libraries
            LoadLibrary(new JavaScriptGlobal(Manager.Logger), "");
            LoadLibrary(new JavaScriptDatafile(JavaScriptEngine), "data");

            // Bind any libraries to JavaScript
            foreach (var name in Manager.GetLibraries())
            {
                LoadLibrary(Manager.GetLibrary(name), name.ToLowerInvariant());
            }

            // Extension to webrequests
            LoadLibrary(new JavaScriptWebRequests(), "webrequests");
        }