Ejemplo n.º 1
0
        public PlayableGameState(MessageHandlerID messageHandlerId, IClientPlayerInfoManager clientPlayerInfoManager,
                                 INetworkingService networkingService,
                                 CollisionManager collisionManager,
                                 PhysicsManager physicsManager,
                                 PlayerShipManager playerShipManager,
                                 ProjectileManager projectileManager,
                                 SelectionManager selectionManager,
                                 ClientShipManager clientShipManager,
                                 SimulationManager simulationManager,
                                 StructureFactoryManager structureFactoryManager,
                                 WarpHoleManager warpholeManager,
                                 TeamManager teamManager,
                                 TargetingService targetingService,
                                 FloatyAreaObjectManager floatyAreaObjectManager,
                                 MessageService_ToServer messageService,
                                 IStructureManager structureManager,
                                 GameStateType stateType
                                 )
            : base(messageHandlerId, clientPlayerInfoManager, networkingService, messageService, playerShipManager, stateType)
        {
            _collisionManager        = collisionManager;
            _physicsManager          = physicsManager;
            _projectileManager       = projectileManager;
            _selectionManager        = selectionManager;
            _clientShipManager       = clientShipManager;
            _simulationManager       = simulationManager;
            _structureFactory        = structureFactoryManager;
            _warpholeManager         = warpholeManager;
            _teamManager             = teamManager;
            _targetingService        = targetingService;
            _floatyAreaObjectManager = floatyAreaObjectManager;
            StructureManager         = structureManager;

            _networkingService.RegisterMessageHandler(this, _playableStateManager_MessageReceived);
        }
Ejemplo n.º 2
0
 protected BaseService(
     ILoggerService loggerService,
     INetworkingService networkingService)
 {
     LoggerService     = loggerService;
     NetworkingService = networkingService;
 }
Ejemplo n.º 3
0
 public PlayableGameStateClient(MessageHandlerID messageHandlerId,
                                IClientPlayerInfoManager clientPlayerInfoManager,
                                CollisionManager collisionManager,
                                IGlobalGameUISingleton globalGameUiSingleton,
                                INetworkingService networkingService,
                                PhysicsManager physicsManager,
                                PlayerShipManager playerShipManager,
                                ProjectileManager projectileManager,
                                SelectionManager selectionManager,
                                ClientShipManager clientShipManager,
                                SimulationManager simulationManager,
                                StructureFactoryManager structureFactoryManager,
                                WarpHoleManager warpholeManager,
                                TeamManager teamManager,
                                TargetingService targetingService,
                                FloatyAreaObjectManager floatyAreaObjectManager,
                                MessageService_ToServer messageService,
                                GameStateType stateType,
                                TViewModel viewModel
                                )
     : base(messageHandlerId, clientPlayerInfoManager, networkingService, collisionManager, physicsManager, playerShipManager, projectileManager, selectionManager, clientShipManager, simulationManager, structureFactoryManager, warpholeManager, teamManager, targetingService, floatyAreaObjectManager, messageService, viewModel, stateType)
 {
     ViewModel = viewModel;
     WebView   = (TWebView)Activator.CreateInstance(typeof(TWebView), globalGameUiSingleton, ViewModel);
     SetupUpdateList(_synchronousUpdateList);
 }
Ejemplo n.º 4
0
 public SpaceStateManager(
     MessageHandlerID messageHandlerId,
     IClientPlayerInfoManager clientPlayerInfoManager,
     IGlobalGameUISingleton globalGameUiSingleton,
     CollisionManager collisionManager,
     INetworkingService networkingService,
     PhysicsManager physicsManager,
     PlayerShipManager playerShipManager,
     ProjectileManager projectileManager,
     SelectionManager selectionManager,
     SimulationManager simulationManager,
     ClientShipManager clientShipManager,
     SpaceManager spaceManager,
     StructureFactoryManager structureFactoryManager,
     TargetingService targetingService,
     TeamManager teamManager,
     WarpHoleManager warpHoleManager,
     MessageService_ToServer messageService,
     FloatyAreaObjectManager floatyAreaObjectManager)
     : base(messageHandlerId, clientPlayerInfoManager, collisionManager, globalGameUiSingleton, networkingService, physicsManager, playerShipManager,
            projectileManager, selectionManager, clientShipManager, simulationManager, structureFactoryManager,
            warpHoleManager, teamManager, targetingService, floatyAreaObjectManager, messageService, GameStateType.Space, new SpaceViewModel(clientShipManager)
            )
 {
     _spaceManager = spaceManager;
     _synchronousUpdateList.Add(_playerShipManager);
 }
Ejemplo n.º 5
0
        public TestServer()
        {
            // Create a logger.
            LoggerService loggerService = new LoggerService();

            List <LoggerAppender> appenders = new List <LoggerAppender>();

            appenders.Add(new ConsoleAppender());

            loggerService.Config.Appenders = appenders;
            LoggerService.Instance         = loggerService;

            this._log = loggerService.Create(nameof(TestServer));

            this._networkingService = new CoreNetworkingService();
            this._networkingService.Configure(new ChannelInitialiser());

            this._networkingService.Start(this._host, this._port, (ctx) =>
            {
                this._log.Info("Server listening on tcp://{0}:{1}", this._host, this._port);

                while (true)
                {
                    string command = Console.ReadLine();
                }
            });
        }
Ejemplo n.º 6
0
        private void Start()
        {
            networkingService = NetworkingService as INetworkingService;
            networkingService.DataReceived += OnDataReceived;

            matchMakingService = MatchMakingService as IMatchMakingService;
            matchMakingService.Connect();

            headsetCalibration.Updated += OnHeadsetCalibrationUpdated;
        }
Ejemplo n.º 7
0
 public ActivePlayerGameState(MessageHandlerID messageHandlerId,
                              IClientPlayerInfoManager clientPlayerInfoManager,
                              INetworkingService networkingService,
                              MessageService_ToServer messageService,
                              PlayerShipManager playerShipManager,
                              GameStateType stateType)
     : base(messageHandlerId, clientPlayerInfoManager, networkingService, messageService, stateType)
 {
     _playerShipManager = playerShipManager;
 }
Ejemplo n.º 8
0
        public MainManager(int simulatorID, RedisNetworkingService redisNetworkingService, SimulatorGameTimeService gameTimeService, SimulatorConfig simulatorConfig, PhysicsConfig physicsConfig)
        {
            _simulatorID       = simulatorID;
            _redisServer       = redisNetworkingService.RedisServer;
            _networkingService = redisNetworkingService;
            _gameTimeService   = gameTimeService;
            _simulatorConfig   = simulatorConfig;
            _physicsConfig     = physicsConfig;

            Utilities.NextUnique();//Force the static to initialize now
        }
Ejemplo n.º 9
0
        public SplashViewModel(
            IRepository <DeviceLocationModel> repository,
            INetworkingService networkingService,
            ILoggerService loggerService,
            IPreferenceService preferenceService,
            IUserInteractionService userInteractionService) : base(loggerService, preferenceService, userInteractionService)
        {
            _repository        = repository;
            _networkingService = networkingService;

            _timer = new Timer(TimeSpan.FromSeconds(6), CheckRepositoryIsInitializedAndNavigateToNextViewModel).Start();
        }
        private void Start()
        {
            CalibrationDataHelper.Initialize();
            dslrIntrinsics = CalibrationDataHelper.LoadCameraIntrinsics(cameraIntrinsicsPath);
            if (dslrIntrinsics == null)
            {
                throw new Exception("Failed to load the camera intrinsics file.");
            }
            else
            {
                Debug.Log($"Successfully loaded the provided camera intrinsics file: {dslrIntrinsics}");
            }

            networkingService = NetworkingService as INetworkingService;
            if (networkingService != null)
            {
                networkingService.DataReceived += OnDataReceived;
            }

            matchMakingService = MatchMakingService as IMatchMakingService;
            if (matchMakingService != null)
            {
                matchMakingService.Connect();
            }

            if (headsetCalibration != null)
            {
                headsetCalibration.Updated += OnHeadsetCalibrationUpdated;
            }

            var arucoDatasetFileNames = CalibrationDataHelper.GetArUcoDatasetFileNames();

            foreach (var fileName in arucoDatasetFileNames)
            {
                var dslrTexture = CalibrationDataHelper.LoadDSLRArUcoImage(fileName);
                var headsetData = CalibrationDataHelper.LoadHeadsetData(fileName);

                if (dslrTexture == null ||
                    headsetData == null)
                {
                    Debug.LogWarning($"Failed to locate dataset: {fileName}");
                }
                else if (!ProcessArUcoData(headsetData, dslrTexture))
                {
                    Debug.LogWarning($"Failed to process dataset: {fileName}");
                }
                else
                {
                    CalibrationDataHelper.SaveDSLRArUcoDetectedImage(dslrTexture, fileName);
                    CreateVisual(headsetData, fileName);
                }
            }
        }
Ejemplo n.º 11
0
 public NetworkedGameState(MessageHandlerID messageHandlerId,
                           IClientPlayerInfoManager playerInfoManager,
                           INetworkingService networkingService,
                           MessageService_ToServer messageService,
                           GameStateType stateType)
     : base(stateType)
 {
     _clientPlayerInfoManager = playerInfoManager;
     _messageHandlerID        = messageHandlerId;
     _networkingService       = networkingService;
     _synchronousUpdateList.Add(this);
     _networkingService.RegisterMessageHandler(this, _networkedGameState_MessageReceived);
     _MessageService = messageService;
 }
Ejemplo n.º 12
0
 public RunnerService(
     IProjectManager projectManager,
     IFrameworkServiceProvider frameworkServiceProvider,
     IQueueService queueService,
     INetworkingService networkingService,
     IPlatformService platformService,
     IFileSystem fileSystem,
     IConsole console)
 {
     _projectManager           = projectManager;
     _frameworkServiceProvider = frameworkServiceProvider;
     _queueService             = queueService;
     _networkingService        = networkingService;
     _platformService          = platformService;
     _fileSystem = fileSystem;
     _console    = console;
 }
Ejemplo n.º 13
0
 /// <summary>
 /// Manages all aspects of Planetary Invasion.
 /// </summary>
 /// <param name="Content">Content Manager</param>
 /// <param name="planetLevel">Level to play on.</param>
 public PlanetStateManager(MessageHandlerID messageHandlerId,
                           IClientPlayerInfoManager clientPlayerInfoManager,
                           IGlobalGameUISingleton globalGameUiSingleton,
                           CollisionManager collisionManager,
                           PhysicsManager physicsManager,
                           PlayerShipManager playerShipManager,
                           ProjectileManager projectileManager,
                           ClientShipManager clientShipManager,
                           StructureFactoryManager structureFactoryManager,
                           WarpHoleManager warpholeManager,
                           INetworkingService networkingService,
                           SelectionManager selectionManager,
                           SimulationManager simulationManager,
                           TargetingService targetService,
                           TeamManager teamManager,
                           GameStateType stateType,//Should be moon or planet
                           FloatyAreaObjectManager floatyAreaObjectManager,
                           MessageService_ToServer messageService,
                           int wallTexWidth, int wallTexHeight)
     : base(messageHandlerId,
            clientPlayerInfoManager,
            collisionManager,
            globalGameUiSingleton,
            networkingService,
            physicsManager,
            playerShipManager,
            projectileManager,
            selectionManager,
            clientShipManager,
            simulationManager,
            structureFactoryManager,
            warpholeManager,
            teamManager,
            targetService,
            floatyAreaObjectManager,
            messageService,
            stateType,
            new PlanetViewModel(clientShipManager)
            )
 {
     _wallWidth  = wallTexWidth;
     _wallHeight = wallTexHeight;
     _synchronousUpdateList.Add(_playerShipManager);
     _messageService = messageService;
 }
Ejemplo n.º 14
0
        public WebsocketService(IServiceProvider serviceProvider, INetworkingService networkService, IOverkillConfiguration configuration, IPubSubService pubSub)
        {
            _serviceProvider = serviceProvider;
            _networkService  = networkService;
            _config          = configuration;

            messageHandlerCache = new Dictionary <string, IWebsocketMessageHandler>();
            messageTypeCache    = new Dictionary <string, Type>();

            pubSub.Subscribe <PluginWebsocketMessageTopic>(message =>
            {
                SendMessage(new CustomMessage()
                {
                    MessageType = message.MessageType,
                    JSON        = message.JSON
                });
            });
        }
Ejemplo n.º 15
0
 public QueueService(IConsole console, INetworkingService networkingService)
 {
     _console           = console;
     _networkingService = networkingService;
 }
Ejemplo n.º 16
0
 public ServiceInitialisedContext(INetworkingService networkingService)
 {
     this._networkingService = networkingService;
 }
Ejemplo n.º 17
0
        public static SpaceStateManager BuildSpaceStateManager(int?areaID, IMessenger messenger, INetworkingService _networkingService)
        {
            //Null references, unused by the Simulator
            TextureManager         textureManager        = null;
            SpriteBatch            spriteBatch           = null;
            ParticleManager        particleManager       = null;
            Texture2D              warpholeTexture       = null;
            Texture2D              borderTexture         = null;
            SelectionManager       selectionManager      = null;
            IGlobalGameUISingleton globalGameUISingleton = null;


            MessageService_ToServer  messageService          = new MessageService_ToServer(messenger);
            SimulationManager        simulationManager       = new SimulationManager();
            CollisionManager         collisionManager        = new CollisionManager(messageService);
            PlayerShipManager        playerShipManager       = new PlayerShipManager(messageService);
            IClientPlayerInfoManager clientPlayerInfoManager = new PlayablePlayerInfoManager(playerShipManager);
            TargetingService         targetingService        = new TargetingService();
            TeamManager       teamManager       = new TeamManager(targetingService);
            PhysicsManager    physicsManager    = new PhysicsManager();
            BorderManager     borderManager     = new BorderManager(borderTexture, spriteBatch, physicsManager);
            ProjectileManager projectileManager = new ProjectileManager(particleManager, physicsManager.World, spriteBatch, targetingService, simulationManager, messageService, collisionManager);
            ClientShipManager clientShipManager = new ClientShipManager(particleManager, playerShipManager, spriteBatch, textureManager, simulationManager, targetingService, teamManager, projectileManager, messageService, clientPlayerInfoManager, true);

            clientShipManager.SendPositionUpdates = true;
            StructureFactoryManager structureFactoryManager = new StructureFactoryManager(messageService, physicsManager.World, projectileManager, targetingService, teamManager, null, clientShipManager, null, true);
            WarpHoleManager         warpholeManager         = new WarpHoleManager(messageService, particleManager, physicsManager, clientShipManager, warpholeTexture);
            GravityManager          gravityManager          = new GravityManager(physicsManager);
            SpaceObjectManager      spaceObjectManager      = new SpaceObjectManager(textureManager, messageService, spriteBatch, particleManager, physicsManager);
            SpaceManager            spaceManager            = new SpaceManager(spriteBatch, borderManager, gravityManager, physicsManager, spaceObjectManager, warpholeManager);
            FloatyAreaObjectManager floatyAreaObjectManager = new FloatyAreaObjectManager(physicsManager.World, textureManager, messageService, spriteBatch, particleManager);

            var mhi = areaID == null ? new MessageHandlerID() : new MessageHandlerID((int)areaID);



            SpaceStateManager spaceStateManager = new SpaceStateManager(mhi,
                                                                        clientPlayerInfoManager,
                                                                        globalGameUISingleton,
                                                                        collisionManager,
                                                                        _networkingService,
                                                                        physicsManager,
                                                                        playerShipManager,
                                                                        projectileManager,
                                                                        selectionManager,
                                                                        simulationManager,
                                                                        clientShipManager,
                                                                        spaceManager,
                                                                        structureFactoryManager,
                                                                        targetingService,
                                                                        teamManager,
                                                                        warpholeManager,
                                                                        messageService,
                                                                        floatyAreaObjectManager);

            spaceStateManager.SetAreaId(areaID);

            return(spaceStateManager);
        }
Ejemplo n.º 18
0
 public static PlanetStateManager BuildPlanetStateManager(ClientManager clientManager, INetworkingService _networkingService, PhysicsConfig _physicsConfig)
 {
     return(DrawlessStateBuilder.BuildPlanetStateManager(null, new LidgrenMessenger(clientManager),
                                                         _networkingService, _physicsConfig));
 }
Ejemplo n.º 19
0
 public static SpaceStateManager BuildSpaceStateManager(ClientManager clientManager, INetworkingService _networkingService)
 {
     return(DrawlessStateBuilder.BuildSpaceStateManager(null, new LidgrenMessenger(clientManager),
                                                        _networkingService));
 }
Ejemplo n.º 20
0
 public static PlanetStateManager BuildPlanetStateManager(int areaID, RedisServer _redisServer, INetworkingService _networkingService, PhysicsConfig _physicsConfig)
 {
     return(DrawlessStateBuilder.BuildPlanetStateManager(areaID, new RedisMessenger(_redisServer, areaID),
                                                         _networkingService, _physicsConfig));
 }
Ejemplo n.º 21
0
 public static SpaceStateManager BuildSpaceStateManager(int areaID, RedisServer _redisServer, INetworkingService _networkingService)
 {
     return(DrawlessStateBuilder.BuildSpaceStateManager(areaID, new RedisMessenger(_redisServer, areaID),
                                                        _networkingService));
 }
Ejemplo n.º 22
0
        public static PlanetStateManager BuildPlanetStateManager(int?areaID, IMessenger messenger, INetworkingService _networkingService, PhysicsConfig _physicsConfig)
        {
            //Null references, unused by the Simulator
            TextureManager   textureManager   = null;
            SpriteBatch      spriteBatch      = null;
            ParticleManager  particleManager  = null;
            Texture2D        warpholeTexture  = null;
            SelectionManager selectionManager = null;


            MessageService_ToServer  messageService          = new MessageService_ToServer(messenger);
            SimulationManager        simulationManager       = new SimulationManager();
            CollisionManager         collisionManager        = new CollisionManager(messageService);
            PlayerShipManager        playerShipManager       = new PlayerShipManager(messageService);
            IClientPlayerInfoManager clientPlayerInfoManager = new PlayablePlayerInfoManager(playerShipManager);
            TargetingService         targetingService        = new TargetingService();
            TeamManager       teamManager       = new TeamManager(targetingService);
            PhysicsManager    physicsManager    = new PhysicsManager();
            ProjectileManager projectileManager = new ProjectileManager(particleManager, physicsManager.World, spriteBatch, targetingService, simulationManager, messageService, collisionManager);
            ClientShipManager clientShipManager = new ClientShipManager(particleManager, playerShipManager, spriteBatch, textureManager, simulationManager, targetingService, teamManager, projectileManager, messageService, clientPlayerInfoManager, true);

            clientShipManager.SendPositionUpdates = true;
            StructureFactoryManager structureFactoryManager = new StructureFactoryManager(messageService, physicsManager.World, projectileManager, targetingService, teamManager, null, clientShipManager, null, true);
            WarpHoleManager         warpholeManager         = new WarpHoleManager(messageService, particleManager, physicsManager, clientShipManager, warpholeTexture);

            FloatyAreaObjectManager floatyAreaObjectManager = new FloatyAreaObjectManager(physicsManager.World, textureManager, messageService, spriteBatch, particleManager);

            var mhi = areaID == null ? new MessageHandlerID() : new MessageHandlerID((int)areaID);

            PlanetStateManager planetStateManager = new PlanetStateManager(
                mhi,
                clientPlayerInfoManager,
                null,
                collisionManager,
                physicsManager,
                playerShipManager,
                projectileManager,
                clientShipManager,
                structureFactoryManager,
                warpholeManager,
                _networkingService,
                selectionManager,
                simulationManager,
                targetingService,
                teamManager,
                GameStateType.Planet,
                floatyAreaObjectManager, messageService,
                _physicsConfig.PlanetTileWidth, _physicsConfig.PlanetTileHeight);

            planetStateManager.SetAreaId(areaID);

            return(planetStateManager);
        }
Ejemplo n.º 23
0
        public DrawablePlanetStateManager(
            SpriteBatch spriteBatch,
            IClientPlayerInfoManager clientPlayerInfoManager,
            CollisionManager collisionManager,
            GlobalGameUISingleton globalGameUiSingleton,
            ParticleManager particleManager,
            PhysicsManager physicsManager,
            PlayerShipManager playerShipManager,
            ProjectileManager projectileManager,
            ClientShipManager clientShipManager,
            StructureFactoryManager structureFactoryManager,
            TextureManager textureManager,
            INetworkingService networkingService,
            SelectionManager selectionManager,
            SimulationManager simulationManager,
            TargetingService targetService,
            TeamManager teamManager,
            GameStateType stateType,//Should be planet or moon
            UIConversionService uiConversionService,
            WarpHoleManager warpholeManager,
            GameWindow window,
            FloatyAreaObjectManager floatyAreaObjectManager,
            MessageService_ToServer messageService,
            int tileWidth, int tileHeight)
            : base(null,
                   clientPlayerInfoManager,
                   globalGameUiSingleton,
                   collisionManager,
                   physicsManager,
                   playerShipManager,
                   projectileManager,
                   clientShipManager,
                   structureFactoryManager,
                   warpholeManager,
                   networkingService,
                   selectionManager,
                   simulationManager,
                   targetService,
                   teamManager,
                   stateType,
                   floatyAreaObjectManager,
                   messageService,
                   tileWidth,
                   tileHeight)
        {
            _spriteBatch     = spriteBatch;
            _textureManager  = textureManager;
            _particleManager = particleManager;
            Camera           = new Camera2D(window);
            Camera.Zoom      = 1f;
            //ViewModel = new PlanetViewModel(clientShipManager);
            _planetGameView = new PlanetGameView(
                Camera,
                uiConversionService,
                particleManager,
                ViewModel,
                projectileManager,
                clientShipManager,
                spriteBatch,
                textureManager,
                floatyAreaObjectManager,
                globalGameUiSingleton.GameUI,
                SendStructurePlacementRequest);

            _spriteBatch = spriteBatch;

            globalGameUiSingleton.GameUI.RegisterCallbackVoid("SendStructurePlacementRequest", SendStructurePlacementRequest);

            _viewUpdateList.Add(_planetGameView);

            _drawList = new HashSet <IDraw>();
            _drawList.Add(_planetGameView);



            _synchronousUpdateList.Add(_particleManager);
        }