Пример #1
0
        private void TryToRest(GameSystem game)
        {
            game.PopView();
            string msg;

            if (game.Player.Inventory.Gold < Cost)
            {
                msg = "You do not have that much gold!";
            }
            else
            {
                game.Player.Inventory.Gold -= Cost;
                game.Player.Damageable.Heal(HealAmount);
                msg = "You feel rested!";
            }
            game.PushView(new ViewMessageInfo(game, game.Renderer, msg, () => { }));
        }
Пример #2
0
        public void Interact(GameSystem game)
        {
            string text;

            if (AlreadyMet)
            {
                text = "Hello again {0}! Do you want to make a deal?";
            }
            else
            {
                text = "Hello stranger. My name is {1}. Have a look at my wares!";
            }
            AlreadyMet = true;

            text = string.Format(text, game.Player.Name, Name);
            var view = new ViewTrade(game, game.Renderer, text, this);

            game.PushView(view);
        }
Пример #3
0
        public void Interact(GameSystem game)
        {
            var options = new List <MenuOption>();

            options.Add(new MenuOption
            {
                Text     = "Yes",
                Callback = () => TryToRest(game)
            });
            options.Add(new MenuOption
            {
                Text     = "No",
                Callback = () => game.PopView()
            });

            var view = new ViewMessage(game, game.Renderer, $"Do you want to rest? ({Cost} gold)", options);

            game.PushView(view);
        }
Пример #4
0
        public void Interact(GameSystem game)
        {
            var view = new ViewMessageInfo(game, game.Renderer, "I do not have any quests for you... Go away vagrant!", () => {});

            game.PushView(view);
        }