DrawableColonyStateManager _buildColonyStateManager(GlobalGameUISingleton globalGameUiSingleton, MessageService_ToServer messageService, LidgrenNetworkingService networkingService) { IClientPlayerInfoManager instance_clientPlayerInfoManager; instance_clientPlayerInfoManager = new NonPlayablePlayerInfoManager(); return(new DrawableColonyStateManager(null, globalGameUiSingleton, networkingService, instance_clientPlayerInfoManager, _spriteBatch, messageService, Window)); }
public DrawablePortStateManager( MessageHandlerID messageHandlerId, IClientPlayerInfoManager clientPlayerInfoManager, LidgrenNetworkingService networkingService, GlobalGameUISingleton globalGameUiSingleton, SpriteBatch spriteBatch, MessageService_ToServer messageService ) : base(messageHandlerId, clientPlayerInfoManager, networkingService, messageService, GameStateType.Port) { _drawList = new HashSet <IDraw>(); // Todo: Make this class use a ViewModel WebView = new PortWebView(globalGameUiSingleton, null); _spriteBatch = spriteBatch; OutfitForSale = new Dictionary <byte, PortService>(5); ShipsInPort = new Dictionary <int, PortShip>(5); _synchronousUpdateList.Add(this); _messageService = messageService; _drawList.Add(this); networkingService.RegisterMessageHandler(this, DrawablePortStateManager_ProcessMessage); }
public DrawableColonyStateManager(MessageHandlerID messageHandlerId, GlobalGameUISingleton globalGameUiSingleton, LidgrenNetworkingService networkingService, IClientPlayerInfoManager clientPlayerInfoManager, SpriteBatch spriteBatch, MessageService_ToServer messageService, GameWindow gameWindow ) : base(messageHandlerId, clientPlayerInfoManager, networkingService, messageService, GameStateType.Colony) { _drawList = new HashSet <IDraw>(); _spriteBatch = spriteBatch; Camera = new Camera2D(gameWindow); WebView = new ColonyWebView(globalGameUiSingleton, null); _synchronousUpdateList.Add(this); _messageService = messageService; _drawList.Add(this); networkingService.RegisterMessageHandler(this, DrawableColonyStateManager_ProcessMessage); }
public LoginStateManager( LoginConfig loginConfig, ClientManager clientManager, GlobalGameUISingleton globalGameUiSingleton, MessageService_ToServer messageService, LidgrenNetworkingService networkingService) : base(null, null, networkingService, messageService, GameStateType.Login) { _clientManager = clientManager; // Todo: Unfuck this WebView = new PortWebView(globalGameUiSingleton, null); _loginConfig = loginConfig; //_gameStateManager = gameStateManager; networkingService.RegisterMessageHandler(this, _loginStateManager_MessageReceived); this._asynchronousUpdateList.Add(this); }
public DrawableSpaceStateManager( MessageService_ToServer messageService, IClientPlayerInfoManager clientPlayerInfoManager, BackgroundManager backgroundManager, BloomComponent bloom, CollisionManager collisionManager, Game game, GameWindow window, GlobalGameUISingleton globalGameUiSingleton, LidgrenNetworkingService networkingService, SpriteBatch spriteBatch, ParticleManager particleManager, PhysicsManager physicsManager, PlayerShipManager playerShipManager, ProjectileManager projectileManager, SelectionManager selectionManager, SimulationManager simulationManager, ClientShipManager clientShipManager, SpaceManager spaceManager, StructureFactoryManager structureFactoryManager, TextureManager textureManager, TargetingService targetingService, TeamManager teamManager, WarpHoleManager warpHoleManager, SpaceObjectManager spaceObjectManager, UIConversionService uiConversionService, FloatyAreaObjectManager floatyAreaObjectManager) : base(null, clientPlayerInfoManager, globalGameUiSingleton, collisionManager, networkingService, physicsManager, playerShipManager, projectileManager, selectionManager, simulationManager, clientShipManager, spaceManager, structureFactoryManager, targetingService, teamManager, warpHoleManager, messageService, floatyAreaObjectManager) { _bloom = bloom; _spriteBatch = spriteBatch; _textureManager = textureManager; _uiConversionService = uiConversionService; _spriteBatch = spriteBatch; _particleManager = particleManager; Camera = new Camera2D(window); Camera.Zoom = 1f; //ViewModel = new SpaceViewModel(ClientShipManager); _spaceGameView = new SpaceGameView( messageService, backgroundManager, bloom, Camera, particleManager, projectileManager, clientShipManager, spaceManager, spaceObjectManager, spriteBatch, uiConversionService, floatyAreaObjectManager, ViewModel, globalGameUiSingleton.GameUI); _viewUpdateList.Add(_spaceGameView); _drawList = new HashSet <IDraw>(); _drawList.Add(_spaceGameView); _synchronousUpdateList.Add(_particleManager); }
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); }
protected LoginStateManager _buildLoginStateManager(GlobalGameUISingleton globalGameUiSingleton, ClientManager clientManager, MessageService_ToServer messageService, LidgrenNetworkingService networkingService) { return(new LoginStateManager(_LoginConfig, clientManager, globalGameUiSingleton, messageService, networkingService)); }
DrawablePortStateManager _buildPortStateManager(GlobalGameUISingleton globalGameUiSingleton, MessageService_ToServer messageService, LidgrenNetworkingService networkingService) { IClientPlayerInfoManager clientPlayerInfoManager = new NonPlayablePlayerInfoManager(); return(new DrawablePortStateManager(null, clientPlayerInfoManager, networkingService, globalGameUiSingleton, _spriteBatch, messageService)); }
DrawableSpaceStateManager _buildSpaceStateManager(GlobalGameUISingleton globalGameUiSingleton, CameraService cameraService, TextureManager textureManager, ParticleManager particleManager, TextDrawingService textDrawingService, MessageService_ToServer messageService, IClientWebViewConfig clientWebviewConfig, LidgrenNetworkingService networkingService, BloomComponent bloom) { CollisionManager instance_collisionManager; ParticleManager instance_particleManager = null; SimulationManager instance_simulationManager; TargetingService instance_targetingService; TeamManager instance_teamManager; UIConversionService instance_uiConversionService; ClientShipManager instance_clientShipManager; PhysicsManager instance_physicsManager; ProjectileManager instance_projectileManager; StructureFactoryManager instance_structureFactoryManager; WarpHoleManager instance_warpholeManager; SelectionManager instance_selectionManager; FloatyAreaObjectManager instance_floatyAreaObjectManager; //Space unique BackgroundManager instance_backgroundManager = null; SpaceManager instance_spaceManager; BorderManager instance_borderManager = null; GravityManager instance_gravityManager; SpaceObjectManager instance_spaceObjectManager; instance_collisionManager = new CollisionManager(messageService); if (_loadGraphics) { instance_particleManager = new ParticleManager(_graphics, _spriteBatch, Content, textureManager); } instance_simulationManager = new SimulationManager(); instance_targetingService = new TargetingService(); instance_teamManager = new TeamManager(instance_targetingService); PlayerShipManager instance_playerShipManager = new PlayerShipManager(messageService); IClientPlayerInfoManager instance_clientPlayerInfoManager = new PlayablePlayerInfoManager(instance_playerShipManager); instance_uiConversionService = new UIConversionService(cameraService, instance_playerShipManager, _spriteBatch); instance_physicsManager = new PhysicsManager(); instance_projectileManager = new ProjectileManager(instance_particleManager, instance_physicsManager.World, _spriteBatch, instance_targetingService, instance_simulationManager, messageService, instance_collisionManager); instance_clientShipManager = new ClientShipManager(instance_particleManager, instance_playerShipManager, _spriteBatch, textureManager, instance_simulationManager, instance_targetingService, instance_teamManager, instance_projectileManager, messageService, instance_clientPlayerInfoManager, false); instance_structureFactoryManager = new StructureFactoryManager(messageService, instance_physicsManager.World, instance_projectileManager, instance_targetingService, instance_teamManager, textureManager, instance_clientShipManager, _spriteBatch, false); instance_warpholeManager = new WarpHoleManager(messageService, instance_particleManager, instance_physicsManager, instance_clientShipManager, _loadGraphics ? textureManager.Warphole : null); instance_selectionManager = new SelectionManager(textDrawingService, _spriteBatch, instance_clientShipManager, messageService, instance_physicsManager, instance_playerShipManager, instance_targetingService, instance_uiConversionService); if (_loadGraphics) { instance_backgroundManager = new BackgroundManager(Content, instance_particleManager, _spriteBatch, cameraService, new Random(8)); } instance_borderManager = new BorderManager(_loadGraphics?textureManager.tex_DotW:null, _spriteBatch, instance_physicsManager); instance_gravityManager = new GravityManager(instance_physicsManager); instance_spaceObjectManager = new SpaceObjectManager(textureManager, messageService, _spriteBatch, instance_particleManager, instance_physicsManager); instance_spaceManager = new SpaceManager(_spriteBatch, instance_borderManager, instance_gravityManager, instance_physicsManager, instance_spaceObjectManager, instance_warpholeManager); instance_floatyAreaObjectManager = new FloatyAreaObjectManager(instance_physicsManager.World, textureManager, messageService, _spriteBatch, particleManager); return(new DrawableSpaceStateManager( messageService, instance_clientPlayerInfoManager, instance_backgroundManager, bloom, instance_collisionManager, this, Window, globalGameUiSingleton, networkingService, _spriteBatch, instance_particleManager, instance_physicsManager, instance_playerShipManager, instance_projectileManager, instance_selectionManager, instance_simulationManager, instance_clientShipManager, instance_spaceManager, instance_structureFactoryManager, textureManager, instance_targetingService, instance_teamManager, instance_warpholeManager, instance_spaceObjectManager, instance_uiConversionService, instance_floatyAreaObjectManager)); }
DrawablePlanetStateManager _buildPlanetStateManager(GlobalGameUISingleton globalGameUiSingleton, CameraService cameraService, TextureManager textureManager, ParticleManager particleManager, TextDrawingService textDrawingService, MessageService_ToServer messageService, LidgrenNetworkingService networkingService) { CollisionManager instance_collisionManager; ParticleManager instance_particleManager = null; SimulationManager instance_simulationManager; TargetingService instance_targetingService; TeamManager instance_teamManager; UIConversionService instance_uiConversionService; ClientShipManager instance_clientShipManager; PhysicsManager instance_physicsManager; ProjectileManager instance_projectileManager; StructureFactoryManager instance_structureFactoryManager; WarpHoleManager instance_warpholeManager; SelectionManager instance_selectionManager; FloatyAreaObjectManager instance_floatyAreaObjectManager; instance_collisionManager = new CollisionManager(messageService); if (_loadGraphics) { instance_particleManager = new ParticleManager(_graphics, _spriteBatch, Content, textureManager); } instance_simulationManager = new SimulationManager(); instance_targetingService = new TargetingService(); instance_teamManager = new TeamManager(instance_targetingService); PlayerShipManager instance_playerShipManager = new PlayerShipManager(messageService); IClientPlayerInfoManager instance_clientPlayerInfoManager = new PlayablePlayerInfoManager(instance_playerShipManager); instance_uiConversionService = new UIConversionService(cameraService, instance_playerShipManager, _spriteBatch); instance_physicsManager = new PhysicsManager(); instance_projectileManager = new ProjectileManager(instance_particleManager, instance_physicsManager.World, _spriteBatch, instance_targetingService, instance_simulationManager, messageService, instance_collisionManager); instance_clientShipManager = new ClientShipManager(instance_particleManager, instance_playerShipManager, _spriteBatch, textureManager, instance_simulationManager, instance_targetingService, instance_teamManager, instance_projectileManager, messageService, instance_clientPlayerInfoManager, false); instance_structureFactoryManager = new StructureFactoryManager(messageService, instance_physicsManager.World, instance_projectileManager, instance_targetingService, instance_teamManager, textureManager, instance_clientShipManager, _spriteBatch, false); instance_warpholeManager = new WarpHoleManager(messageService, instance_particleManager, instance_physicsManager, instance_clientShipManager, _loadGraphics?textureManager.Warphole:null); instance_selectionManager = new SelectionManager(textDrawingService, _spriteBatch, instance_clientShipManager, messageService, instance_physicsManager, instance_playerShipManager, instance_targetingService, instance_uiConversionService); instance_floatyAreaObjectManager = new FloatyAreaObjectManager(instance_physicsManager.World, textureManager, messageService, _spriteBatch, particleManager); PhysicsConfig physicsConfig = new PhysicsConfig(); return(new DrawablePlanetStateManager( _spriteBatch, instance_clientPlayerInfoManager, instance_collisionManager, globalGameUiSingleton, instance_particleManager, instance_physicsManager, instance_playerShipManager, instance_projectileManager, instance_clientShipManager, instance_structureFactoryManager, textureManager, networkingService, instance_selectionManager, instance_simulationManager, instance_targetingService, instance_teamManager, GameStateType.Planet, instance_uiConversionService, instance_warpholeManager, Window, instance_floatyAreaObjectManager, messageService, physicsConfig.PlanetTileWidth, physicsConfig.PlanetTileHeight)); }
protected virtual MainManager _manualBuild() { #region Singletons ClientManager clientManager = new ClientManager(new CoreNetworkConfig()); CameraService cameraService = new CameraService(); ParticleManager particleManager = null; TextDrawingService textDrawingService = null; TextureManager textureManager = null; BloomComponent bloom = null; if (_loadGraphics) { textureManager = new TextureManager(Content); particleManager = new ParticleManager(_graphics, _spriteBatch, Content, textureManager); textDrawingService = new TextDrawingService(textureManager.DefaultDrawFont, _spriteBatch); bloom = new BloomComponent(Content, _spriteBatch); } LidgrenMessenger messenger = new LidgrenMessenger(clientManager); MessageService_ToServer messageService = new MessageService_ToServer(messenger); IClientWebViewConfig clientWebviewConfig = null; switch (_environment) { case ClientEnvironmentType.Development: clientWebviewConfig = new DebugClientWebViewConfig(); break; default: throw new Exception("You should add a production config, yo!"); } var chatManager = new NewChatManager(clientManager); LidgrenNetworkingService networkingService = new LidgrenNetworkingService(); GlobalGameUISingleton globalGameUiSingleton = new GlobalGameUISingleton(clientWebviewConfig, GraphicsDevice, Window, _spriteBatch); GlobalGameWebLayer globalGameWebLayer = new GlobalGameWebLayer(clientWebviewConfig, new GameInterfaceWebView(globalGameUiSingleton, chatManager, new GameInterfaceViewModel())); // Force the static to initialize now Utilities.NextUnique(); #endregion List <IGameState> gameStates = new List <IGameState>(); gameStates.Add(_buildPlanetStateManager(globalGameUiSingleton, cameraService, textureManager, particleManager, textDrawingService, messageService, networkingService)); gameStates.Add(_buildSpaceStateManager(globalGameUiSingleton, cameraService, textureManager, particleManager, textDrawingService, messageService, clientWebviewConfig, networkingService, bloom)); //gameStates.Add(_buildMoonStateManager(chatManager, CefSharpViewFactory, cameraService, textureManager, particleManager, textDrawingService, messageService, clientWebviewConfig, networkingService)); gameStates.Add(_buildPortStateManager(globalGameUiSingleton, messageService, networkingService)); gameStates.Add(_buildLoginStateManager(globalGameUiSingleton, clientManager, messageService, networkingService)); gameStates.Add(_buildColonyStateManager(globalGameUiSingleton, messageService, networkingService)); GameStateManager gameStateManager = BuildGameStateManager(cameraService, gameStates, textDrawingService, globalGameWebLayer); MainNetworkingManager mainNetworkingManager = new MainNetworkingManager(chatManager, clientManager, networkingService); return(new MainManager(bloom, textDrawingService, this, gameStateManager, _graphics, mainNetworkingManager)); }