public GameSessionService(
            ISceneHost scene,
            IUserSessions sessions,
            IConfiguration configuration,
            IEnvironment environment,
            IDelegatedTransports pools,
            ManagementClientAccessor management,
            ILogger logger,
            Func <IEnumerable <IGameSessionEventHandler> > eventHandlers)
        {
            _management    = management;
            _scene         = scene;
            _sessions      = sessions;
            _configuration = configuration;
            _logger        = logger;
            _environment   = environment;
            _pools         = pools;

            _eventHandlers = eventHandlers;

            scene.Shuttingdown.Add(args =>
            {
                CloseGameServerProcess();
                return(Task.FromResult(true));
            });
            scene.Connecting.Add(this.PeerConnecting);
            scene.Connected.Add(this.PeerConnected);
            scene.Disconnected.Add((args) => this.PeerDisconnecting(args.Peer));
            scene.AddRoute("player.ready", ReceivedReady, _ => _);
            scene.AddRoute("player.faulted", ReceivedFaulted, _ => _);
        }
        public GameSessionService(
            ISceneHost scene,
            IConfiguration configuration,
            IEnvironment environment,
            IDelegatedTransports pools,
            ManagementClientAccessor management,
            ILogger logger,
            IAnalyticsService analytics)
        {
            _analytics     = analytics;
            _management    = management;
            _scene         = scene;
            _configuration = configuration;
            _logger        = logger;
            _environment   = environment;
            _pools         = pools;


            _configuration.SettingsChanged += OnSettingsChange;
            OnSettingsChange(_configuration, _configuration.Settings);

            scene.Shuttingdown.Add(args =>
            {
                _sceneCts.Cancel();
                return(Task.CompletedTask);
            });
            scene.Connecting.Add(this.PeerConnecting);
            scene.Connected.Add(this.PeerConnected);
            scene.Disconnected.Add((args) => this.PeerDisconnecting(args.Peer));
            scene.AddRoute("player.ready", ReceivedReady, _ => _);
            scene.AddRoute("player.faulted", ReceivedFaulted, _ => _);
        }
 public MatchmakingResolver(
     ILogger logger,
     IUserSessions sessions,
     IUserService users,
     RulesService rulesService,
     ISteamService steamService,
     ManagementClientAccessor management)
 {
     _logger       = logger;
     _sessions     = sessions;
     _users        = users;
     _rulesService = rulesService;
     _steamService = steamService;
     _management   = management;
 }
Example #4
0
        public ServiceLocator(
            Func <IEnumerable <IServiceLocatorProvider> > handlers,
            ManagementClientAccessor managementClientAccessor,
            IEnvironment env,
            IConfiguration config,
            ISerializer serializer,
            ILogger logger)
        {
            _env                      = env;
            this.serializer           = serializer;
            _managementClientAccessor = managementClientAccessor;
            _handlers                 = handlers;
            _logger                   = logger;

            //config.SettingsChanged += (sender, args) => Config_SettingsChanged(args);
            Config_SettingsChanged(config.Settings);
        }
Example #5
0
 public LocatorController(ManagementClientAccessor management, ILogger logger)
 {
     _management = management;
     _logger     = logger;
 }
Example #6
0
 public GameSessions(ManagementClientAccessor management, IUserSessions sessions, ISerializer serializer)
 {
     this.management = management;
     this.sessions   = sessions;
     this.serializer = serializer;
 }