Example #1
0
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch = new SpriteBatch(GraphicsDevice);

            Locator.provide(ScreenPrinter.init(Content.Load <SpriteFont>("LargeFont"), Content.Load <SpriteFont>("SmallFont")));
            Locator.provide(TextureManager.init(GraphicsDevice, Content));
            Ship.loadTextures();

            bg_tex_id = Locator.getTextureManager().loadTexture("spacebg");

            world            = new GameEntity();
            world.spatial    = new SpatialComponent(world, new Vector2(400, 300), 0, Vector2.One);
            world.controller = new WorldController(world, screen);
            Locator.getComponentManager().addEntity(world);
            Locator.provideWorld(world);

            Locator.provide(Ship.init(world));

            ObjectFactory ob = new ObjectFactory();

            ob.init();
            Locator.provide(ob);

            Locator.getShip().populate();
            Locator.getControlManager().forceState(new ControlStates.Selector());

            player            = new GameEntity();
            player.spatial    = new Components.SpatialComponent(player, Locator.getShip().entity_.spatial, new Vector2(900, 416), 0, Vector2.One);
            player.render     = new Components.RenderComponent(player, Locator.getTextureManager().loadTexture("person32"), 1, new Vector2(16), Color.White);
            player.inventory  = new InventoryComponent(player, 10);
            player.controller = new Components.PlayerControllerComponent(player);
            Locator.getComponentManager().addEntity_(player);
            Locator.providePlayer(player);

            test         = new GameEntity();
            test.spatial = new SpatialComponent(test, Locator.getShip().entity_.spatial, Vector2.Zero, 0, new Vector2(3));
            test.render  = new RenderComponent(test, -1, 0, new Vector2(0.5f), Color.White);
            Locator.getComponentManager().addEntity(test);


            Locator.provide(new WindowFactory(screen));
            Locator.getControlManager().setInventory(Locator.getWindowFactory().inventoryWindow());

            Locator.getMessageBoard().postMessage(new Post(PostCategory.PLACED_OBJECT));
        }
Example #2
0
        /// <summary>
        /// Allows the game to perform any initialization it needs to before starting to run.
        /// This is where it can query for any required services and load any non-graphic
        /// related content.  Calling base.Initialize will enumerate through any components
        /// and initialize them as well.
        /// </summary>
        protected override void Initialize()
        {
            // TODO: Add your initialization logic here

            Locator.provide(MessageBoard.init());
            Locator.provide(InputHandler.init());
            Locator.provide(ComponentManager.init());
            Locator.provide(new Random());
            Locator.provide(new ControlManager(screen));
            Locator.getInputHandler().addKeyReleaseObserver(Locator.getControlManager().keyRelease);
            Locator.getInputHandler().addMouseReleaseObserver(Locator.getControlManager().mouseUp);
            Locator.getInputHandler().addMousePressObserver(Locator.getControlManager().mouseDown);
            ControlStates.BaseState.setParent(Locator.getControlManager());


            base.Initialize();
        }