public PlanetGameView( Camera2D camera, UIConversionService uiConversionService, ParticleManager particleManager, PlanetViewModel planetViewModel, ProjectileManager projectileManager, ClientShipManager clientShipManager, SpriteBatch spriteBatch, TextureManager textureManager, FloatyAreaObjectManager floatyAreaObjectManager, GlobalGameUI globalGameUi, Action <JSMarshallContainer> sendStructurePlacementRequest) { ViewModel = planetViewModel; _particleManager = particleManager; _projectileManager = projectileManager; _uiConversionService = uiConversionService; _clientShipManager = clientShipManager; _spriteBatch = spriteBatch; _textureManager = textureManager; _floatyAreaObjectManager = floatyAreaObjectManager; _globalGameUI = globalGameUi; _sendStructurePlacementRequest = sendStructurePlacementRequest; globalGameUi.RegisterCallbackVoid("ChangeZoom", ChangeZoom); Camera = camera; Camera.Zoom = 1f; }
public PlanetViewModel(ClientShipManager clientShipManager) { _clientShipManager = clientShipManager; ColonyTeamIDs = new HashSet <int>(); Turrets = new List <Turret>(); }
public RadarSpaceManager(ContentManager Content, SpriteBatch spriteBatch, GraphicsDevice graphics, BorderManager borderManager, PlayerShipManager playerShipManager, ProjectileManager projectileManager, SpaceObjectManager spaceObjectManager, ClientShipManager clientShipManager, WarpHoleManager warpholeManager, GameWindow gameWindow) { textFont = Content.Load <SpriteFont>(@"GUI/drawFont"); tex_Radar = Content.Load <Texture2D>(@"GUI/radar"); tex_DotW = Content.Load <Texture2D>(@"GUI/dot_w"); tex_OrbitalRing = Content.Load <Texture2D>(@"GUI/planetrings"); tex_Ship = Content.Load <Texture2D>(@"GUI/Minimap/Hud_ShipRadar"); tex_NetworkShip = Content.Load <Texture2D>(@"GUI/Minimap/otherShips"); tex_EdgeOfRadar = Content.Load <Texture2D>(@"GUI/Minimap/edgeofradar"); tex_Sun = Content.Load <Texture2D>(@"GUI/Minimap/sunMinimap"); tex_Warp = Content.Load <Texture2D>(@"GUI/Minimap/warp3"); _graphics = graphics; _content = Content; _borderManager = borderManager; _playerShipManager = playerShipManager; _projectileManager = projectileManager; _clientShipManager = clientShipManager; _radarCamera = new Camera2D(gameWindow); _spaceObjectManager = spaceObjectManager; _spriteBatch = spriteBatch; _warpholeManager = warpholeManager; radarWidth = 300; radarHeight = 300; radarTarget = new RenderTarget2D(spriteBatch.GraphicsDevice, radarWidth, radarHeight, false, SurfaceFormat.Color, DepthFormat.Depth24); // Adds all of the dynamically sized rings for Minimap. planetRings = new List <Texture2D>(); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_50px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_68px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_80px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_100px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_120px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_150px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_200px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_250px")); planetRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseRing_300px")); moonRings = new List <Texture2D>(); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_30px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_40px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_50px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_80px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_100px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_120px")); moonRings.Add(Content.Load <Texture2D>(@"GUI/Minimap/BaseMoonRing_150px")); _radarCamera._zoom = 1.2f; }
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); }
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); }
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); }
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); }
public SpaceViewModel( ClientShipManager clientShipManager ) { _clientShipManager = clientShipManager; GravityObjects = new List <GravityObject>(); Turrets = new List <Turret>(); }
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); }
/// <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; }
} //Need to set this properly public Turret( MessageService_ToServer messageService, ProjectileManager projectileManager, Texture2D baseTexture, Texture2D headTexture, ClientShipManager clientShipManager, SpriteBatch spriteBatch, World w, Vector2 position, StructureTypes type, float health, int ID, int seed, TurretTypes turretType, HashSet <int> teams) : base(spriteBatch, headTexture, position.X, position.Y, StructureTypes.LaserTurret, health, ID, teams) { _messageService = messageService; Debugging.AddStack.Push(this.ToString()); _body = BodyFactory.CreateRectangle(w, .5f, .5f, 1, position); _body.IsStatic = true; _body.UserData = new StructureBodyDataObject(BodyTypes.Turret, this); _body.OnCollision += OnCollision; r = new Random(seed); // Sets a seed so that turrets fire at different times. _projectileManager = projectileManager; _clientShipManager = clientShipManager; Weapon = new TurretAltLaser(projectileManager, this, 1); Console.WriteLine(ID); Texture = headTexture; BaseTexture = baseTexture; PotentialTargets = new Dictionary <int, ITargetable>(); Teams = teams; IsBodyValid = true; TurretType = turretType; }
public StructureFactoryManager( MessageService_ToServer messageManager, World world, ProjectileManager projectileManager, TargetingService targetManager, TeamManager teamManager, TextureManager textureManager, ClientShipManager clientShipManager, SpriteBatch spriteBatch, bool simulateStructures ) { _random = new Random(); _messageManager = messageManager; _world = world; _projectileManager = projectileManager; _targetManager = targetManager; _teamManager = teamManager; _textureManager = textureManager; _clientShipManager = clientShipManager; _spriteBatch = spriteBatch; _simulateStructures = simulateStructures; }
public SpaceGameView( MessageService_ToServer messageService, BackgroundManager background, BloomComponent bloom, Camera2D camera, ParticleManager particleManager, ProjectileManager projectileManager, ClientShipManager clientShipManager, SpaceManager spaceManager, SpaceObjectManager spaceObjectManager, SpriteBatch spriteBatch, UIConversionService uiConversionService, FloatyAreaObjectManager floatyAreaObjectManager, SpaceViewModel viewModel, GlobalGameUI globalGameUi ) { _background = background; _bloom = bloom; _particleManager = particleManager; _projectileManager = projectileManager; _clientShipManager = clientShipManager; _spaceObjectManager = spaceObjectManager; _spaceManager = spaceManager; _spriteBatch = spriteBatch; _uiConversionService = uiConversionService; _spaceViewModel = viewModel; _floatyAreaObjectManager = floatyAreaObjectManager; _messageService = messageService; globalGameUi.RegisterCallbackVoid("ChangeZoom", ChangeZoom); Camera = camera; Camera.Zoom = 1f; }
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)); }
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)); }
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); }
/// <summary> /// Set isPlayerShip if this is the client's ship, false otherwise. /// </summary> /// <param name="msg"></param> /// <param name="world"></param> /// <param name="clientShipManager"></param> /// <param name="isPlayerShip"></param> /// <returns></returns> public static Ship InstantiateShip(ShipData data, World world, ClientShipManager clientShipManager, bool isPlayerShip) { ShipStats stats = new ShipStats(); if (data.ShipStats != null) { stats = new ShipStats(data.ShipStats); } Vector2 position = new Vector2(data.PosX, data.PosY); Vector2 velocity = new Vector2(data.VelX, data.VelY); Ship newShip = null; if (!isPlayerShip) { newShip = clientShipManager.CreateShip(world, data.IsNPC, position, data.Id, data.Rotation, velocity, data.PlayerName, stats, data.WeaponTypes, data.TeamIDs); } else { if (data.PlayerID == null) { throw new NotImplementedException("Null playerID not yet implemented on the client."); } newShip = clientShipManager.CreatePlayerShip(world, position, data.Id, data.Rotation, velocity, data.PlayerName, stats, data.WeaponTypes, data.TeamIDs); } newShip.CurrentHealth = (int)data.CurrentHealth; newShip.Shields.CurrentShields = (int)data.CurrentShields; #region Cargo if (data.Cargo != null) { foreach (var sc in data.Cargo.StatelessCargo) { newShip.Cargo.AddStatelessCargo(sc.CargoType, sc.Quantity, true); } foreach (var sc in data.Cargo.StatefulCargo) { StatefulCargo c = InstantiateStatefulCargo(sc); switch (c.CargoType) { case StatefulCargoTypes.Module: { newShip.AddModule((Module)c); newShip.Cargo.AddStatefulCargo(c, true); break; } default: { newShip.Cargo.AddStatefulCargo(c, true); break; } } } newShip.RecalculateModuleBonuses(); } #endregion newShip.MissileLauncher?.SetMissileType(data.SelectedMissileType); newShip.Pilot.IsAlive = !data.IsDead; return(newShip); }
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 ColonyViewModel(ClientShipManager clientShipManager) { _clientShipManager = clientShipManager; }