コード例 #1
0
        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);
        }
コード例 #2
0
 public StateManager(
     Game game,
     VisualObjectManager visualManager_,
     GameObjectManager objectManager_,
     ParticleSystem particleSystem_)
     : base(game)
 {
     visualManager  = visualManager_;
     objectManager  = objectManager_;
     particleSystem = particleSystem_;
 }