private void InitializeComponents() { spriteManager = new SpriteManager(this); gameObjectManager = new GameObjectManager(this); visualObjectManager = new VisualObjectManager(this, spriteBatch, spriteManager); postEffectManager = new PostProcessManager(this, spriteBatch, mainSurface); particleSystem = new ParticleSystem(this, spriteBatch); stateManager = new StateManager( this, visualObjectManager, gameObjectManager, particleSystem); stateManager.UpdateOrder = 1; gameObjectManager.UpdateOrder = 2; visualObjectManager.UpdateOrder = 3; visualObjectManager.DrawOrder = 1; particleSystem.DrawOrder = 2; particleSystem.UpdateOrder = 4; visualObjectManager.RegisterFactory(new MenuVisualFactory(this)); visualObjectManager.RegisterFactory(new MessageVisualFactory(this)); visualObjectManager.RegisterFactory(new ScrollingBackGroundFactory(this)); // get live sign setup //Components.Add(new GamerServicesComponent(this)); stateManager.SetState(new MainMenuState(stateManager, GraphicsDevice, fontManager, new MenuGamePadController(this))); Components.Add(stateManager); Components.Add(gameObjectManager); Components.Add(visualObjectManager); Components.Add(particleSystem); }
public StateManager( Game game, VisualObjectManager visualManager_, GameObjectManager objectManager_, ParticleSystem particleSystem_) : base(game) { visualManager = visualManager_; objectManager = objectManager_; particleSystem = particleSystem_; }