/// <summary> /// This function takes the message and has almost the same functional as ReadInt, but with some properties for Health. /// </summary> /// <param name="message"></param> /// <param name="minValue"></param> /// <param name="maxValue"></param> /// <returns></returns> static public int ReadHealth(string message, int minValue = int.MinValue, int maxValue = int.MaxValue) { int number; do { Drawer.CyanConsole(message); } while (!int.TryParse(Console.ReadLine(), out number) || number < minValue || number > maxValue || number % minValue != 0); return(number); }
/// <summary> /// This function fill the List mobs with different squads of mobs. /// </summary> /// <param name="mobs"></param> /// <param name="crews"></param> /// <returns></returns> static public List <Mob> CreateSquads(List <Mob> mobs, int crews) { Drawer.DarkYellowConsole(Environment.NewLine + "НЕБОЛЬШАЯ ПАМЯТКА: Количество монстров в отряде должно быть >= 1, " + $"тебе же нужно с кем-то воевать (^_~)"); Drawer.DarkYellowConsole("Так же количество жизней у всего отряда должно быть >= " + $"количеству существ в текущем отряде и поровну делиться между всеми его монстрами" + Environment.NewLine); Drawer.DarkYellowConsole("Начни вводить в виде {Кол-во Мобов}-{Жизни Отряда}"); for (int i = 0; i < crews; i++) { Mob squad = null; while (squad == null) { Drawer.CyanConsole($"Введите параметры отряда {i + 1}"); squad = ReadSquad(Console.ReadLine()); } mobs.Add(squad); } return(mobs); }