Example #1
0
 /// <summary>
 /// Used to create a new instance of the GameCommandChatInterface class. It is used to parse chat commands, send messages and broadcasts. The parsing operations will run in parallel, to maximize performance.
 /// </summary>
 public GameCommandChatInterface(IMessageWriterProvider provider, ILogger logger)
 {
     this.Logger     = logger;
     this.Generator  = new Structures.PacketGenerator(provider);
     Commands        = new List <string>();
     ParallelOptions = new ParallelOptions()
     {
         MaxDegreeOfParallelism = Environment.ProcessorCount
     };
     //this will use all cores.
 }
 public ExampleRpc(ILogger <ExampleRpc> logger, IMessageWriterProvider writerProvider)
 {
     _logger         = logger;
     _writerProvider = writerProvider;
 }
 public Rpc255Reactor(ILogger <Rpc255Reactor> logger, IMessageWriterProvider writerProvider, IReactorCustomRpcManager manager)
 {
     _logger         = logger;
     _writerProvider = writerProvider;
     _manager        = manager;
 }
Example #4
0
 /// <summary>
 /// This constructor will be 'injected' with the required references by the plugin API.
 /// </summary>
 /// <param name="logger">The global server logger.</param>
 /// <param name="manager">The global event manager.</param>
 /// <param name="gameManager">The global game manager.</param>
 /// <param name="provider">A provider for MessageWriters (not used yet).</param>
 public Class(ILogger <Class> logger, IEventManager manager, IGameManager gameManager, IMessageWriterProvider provider, IClientManager clientManager)
 {
     this.GameManager           = gameManager;
     this.Logger                = logger;
     this.MessageWriterProvider = provider;
     this.EventManager          = manager;
     this.ClientManager         = clientManager;
     this.Options               = new ParallelOptions();
     this.QED = new QuodEratDemonstrandum.QuiteElegantDirectory();
     Options.MaxDegreeOfParallelism = Environment.ProcessorCount;
     KnownColors = Enum.GetNames(typeof(System.Drawing.KnownColor));
 }
 public HandshakeEventListener(ILogger <HandshakeEventListener> logger, IMessageWriterProvider messageWriterProvider, IServerEnvironment serverEnvironment)
 {
     _logger = logger;
     _messageWriterProvider = messageWriterProvider;
     _serverEnvironment     = serverEnvironment;
 }
Example #6
0
 public PacketGenerator(IMessageWriterProvider provider)
 {
     this.Provider = provider;
 }
Example #7
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();
        }