Esempio n. 1
0
        public ImpostorHqPlugin(ILogger <ImpostorHqPlugin> logger, IEventManager eventManager, IGameManager gameManager, IMessageWriterProvider messageWriterProvider, IClientManager clientManager)
        {
            ImpostorHqR.Extension.Api.Registry.Impostor.ClientManager         = clientManager;
            ImpostorHqR.Extension.Api.Registry.Impostor.EventManager          = eventManager;
            ImpostorHqR.Extension.Api.Registry.Impostor.GameManager           = gameManager;
            ImpostorHqR.Extension.Api.Registry.Impostor.Logger                = logger;
            ImpostorHqR.Extension.Api.Registry.Impostor.MessageWriterProvider = messageWriterProvider;

            ReusableStringBuilderPool.Initialize();
            LoggingManager.Initialize();
            ConfigurationLoader.LoadConfigs(typeof(ImpostorHqPlugin).Assembly);
            ServiceManager.Init();
            ImpostorEventListenerCreator.Initialize();
            CommandProcessor.Start();
            CommandListener.Start();
            HelpCommandRegister.Register();
            WebBinder.Bind();
            WebApiListener.Start();
            HttpServer.Start();
            ExtensionLoader.Initialize();
            ExtensionLoader.Start();
        }