예제 #1
0
        public GameScreen(IGameWorld gameWorld, INetworkManager networkManager) : base("GameScreen")
        {
            GameWorld      = gameWorld;
            NetworkManager = networkManager;

            PacketManager.Initialize(networkManager);

            var gameScreenUserInterface = new GameScreenUserInterface();

            _interfaceController = new GameScreenUserInterfaceController(gameScreenUserInterface);
            UserInterface        = new MyraUserInterface(gameScreenUserInterface);

            _bluePrintManager = new BluePrintManager(this);

            var updateResolver = new CameraBoundsUpdateResolver(_camera);

            _gameRenderer = new GameRenderer(
                new PlayerRenderer(),
                new WorldRenderer(),
                new LightMapRenderer(),
                updateResolver);

            _playerCreator = new PlayerCreator(
                GameWorld,
                _interfaceController,
                _camera,
                updateResolver);
        }
        public GameScreenUserInterfaceController(GameScreenUserInterface userInterface)
        {
            UserInterface = userInterface;

            var renderable = new TextureRegion(YetiGame.ContentManager.Load <Texture2D>("UI/bar_inventory_item"));

            foreach (var background in UserInterface.InventorySlotBackgrounds)
            {
                background.Renderable = renderable;
            }

            foreach (var background in UserInterface.MainInventorySlotBackgrounds)
            {
                background.Renderable = renderable;
            }
        }