Exemple #1
0
 // Игрок получает награду - опыт и деньги
 public static void GetRewardForPlayer(Player player, int money, int skill)
 {
     player.AddMoney(money);
     player.BattleSkill += skill;
     while (player.NextLevelBorder <= player.BattleSkill)
     {
         Enemy.ChangeEnemyBorder(player.Level);
         player.ChangeBattleLevel();
     }
     Task.CheckTask(player);
 }
Exemple #2
0
 /// <summary>
 /// Проверка столкновения игрока и клада
 /// </summary>
 /// <param name="player">Игрок</param>
 public void CkeckPlayer(Player player)
 {
     if (TreasureExist && player.Position.X == this.Position.X && player.Position.Y == this.Position.Y)
     {
         if (this.IsEnemy)
         {
             Battle.GoBattle(player, this.enemy);
         }
         player.AddMoney(GetReward(player.Level));
         Thread.Sleep(1000);
         Window.ClearMap(Window.Map, Window.TreasureSymble);
         TreasureExist = false;
     }
 }
Exemple #3
0
        // Лавка, где игрок может продать свою броню
        public void ArmorShopSell(Player player)
        {
            HelloPlayer(player);
            Console.WriteLine("Вы точно хотите продать вашу броню? \nY / N \n Вы получите {0} монет", player.Armor.GetRealCost(RealCosts["armor"]));
            switch (Console.ReadKey(true).Key)
            {
            case ConsoleKey.Y:
                player.AddMoney(player.Armor.GetRealCost(RealCosts["armor"]));
                player.AddArmor(new ArmorComplect());
                Console.WriteLine("Вы успешно продали свой комплект брони.\nВаш баланс: {0}", player.Money);
                return;

            case ConsoleKey.N:
                return;
            }
            ArmorShopSell(player);
        }
Exemple #4
0
        // Здесь игрок получает награду, если выполнил одно из заданий
        public void GetRewardForTask(Player player)
        {
            Console.Clear();
            if (!CheckTasks(player))
            {
                Console.WriteLine("У вас нет заданий в этом городе");
                Console.ReadKey();
                return;
            }

            bool isDoneTask  = false;
            int  moneyReward = 0;
            int  skillReward = 0;

            for (int i = 0; i < player.Tasks.Count; i++)
            {
                var task = player.Tasks[i]?.Item2;
                if (task?.EnemyCountDied >= task?.EnemyCount)
                {
                    isDoneTask   = true;
                    moneyReward += task.MoneyReward;
                    skillReward += task.SkillReward;
                    player.Tasks.RemoveAt(i);
                }
            }

            if (isDoneTask)
            {
                player.AddMoney(moneyReward);
                player.BattleSkill += skillReward;
                Console.WriteLine("Вы получили {0} монет и {1} опыта", moneyReward, skillReward);
                while (player.BattleSkill >= player.NextLevelBorder)
                {
                    player.ChangeBattleLevel();
                }
            }
            else
            {
                Console.WriteLine("Вы еще не выполнили ни одного задания \n" +
                                  "Возвращайтесь, когда хоть одно задание будет выполненою");
            }
            Console.ReadKey();
        }