Beispiel #1
0
        public Game1()
        {
            _graphics       = new GraphicsDeviceManager(this);
            ScreenRectangle = new Rectangle(
                0,
                0,
                ScreenWidth,
                ScreenHeight);
            IsMouseVisible = true;

            Content.RootDirectory = "Content";

            Components.Add(new InputHandler(this));

            _gameStateManager = new GameStateManager(this);
            Components.Add(_gameStateManager);

            _ = new TextureManager();

            TitleScreen              = new TitleScreen(this, _gameStateManager);
            StartMenuScreen          = new StartMenuScreen(this, _gameStateManager);
            GamePlayScreen           = new GamePlayScreen(this, _gameStateManager);
            CharacterGeneratorScreen = new CharacterGeneratorScreen(this, _gameStateManager);
            SkillScreen              = new SkillScreen(this, _gameStateManager);
            LoadGameScreen           = new LoadGameScreen(this, _gameStateManager);
            ConversationScreen       = new ConversationScreen(this, _gameStateManager);
            ShopScreen      = new ShopState(this, _gameStateManager);
            InventoryScreen = new InventoryScreen(this, _gameStateManager);

            _gameStateManager.ChangeState(TitleScreen);

            IsFixedTimeStep = false;
            _graphics.SynchronizeWithVerticalRetrace = false;
        }
Beispiel #2
0
        public Game1()
        {
            graphics = new GraphicsDeviceManager(this);

            graphics.PreferredBackBufferWidth  = screenWidth;
            graphics.PreferredBackBufferHeight = screenHeight;

            ScreenRectangle = new Rectangle(
                0,
                0,
                screenWidth,
                screenHeight);

            Content.RootDirectory = "Content";

            Components.Add(new InputHandler(this));

            stateManager = new GameStateManager(this);
            Components.Add(stateManager);

            TitleScreen              = new TitleScreen(this, stateManager);
            StartMenuScreen          = new StartMenuScreen(this, stateManager);
            GamePlayScreen           = new GamePlayScreen(this, stateManager);
            CharacterGeneratorScreen = new CharacterGeneratorScreen(this, stateManager);
            LoadGameScreen           = new LoadGameScreen(this, stateManager);
            SkillScreen              = new GameScreens.SkillScreen(this, stateManager);
            ConversationScreen       = new ConversationScreen(this, stateManager);

            stateManager.ChangeState(TitleScreen);

            this.IsFixedTimeStep = true;
            graphics.SynchronizeWithVerticalRetrace = false;
        }
Beispiel #3
0
    private void BuildNPCInteractables()
    {
        StartConversationScreen scs         = (StartConversationScreen)GetScreen(ScreenID.StartConversation);
        ConversationScreen      convoScreen = (ConversationScreen)GetScreen(ScreenID.Conversation);

        foreach (Conversation npc in npcs)
        {
            GameObject clone = Instantiate(npcPrefab, npc.position, Quaternion.identity);

            NPC cloneNPC = clone.GetComponent <NPC>();
            cloneNPC.Init(npc);

            npcPooler.SetPoolable(clone);
            clone.SetActive(true);
            clone.transform.position = npc.position;

            scs.RegiserterNPC(cloneNPC);
            convoScreen.RegiserterNPC(cloneNPC);
        }
    }