public override void Attack(Orc target) { if (Stamina < STAMINA_FOR_ATTACK) { Stamina = 0; Console.WriteLine($"Воин! Восстанови энергию!"); } else { target.TryApplayDamage(AttackDamage); MinusStamina(); } }
// Если мы однозначно не можем сказать, // что мы 100% атакуем, то называем метод с префиксом Try // Поскольку у нас есть условие, которое говорит нам, // что мы не можем атаковать, если у нас мало стамины, // то мы не всегда атакуем, следовательно нужно сделать TryAttack public override void Attack(Orc target) { // То есть если у нас 49 стамины и мы пробуем атаковать, // то у нас стамины становится 0 и мы получаем сообщение о том, // что нам нужно ее восстановить, // при этом мы ее никуда не потратиили, почему ее становится 0 - непонятно! // Видимо, мы ее потратили, чтобы вывести сообщения в консоль, // тяжелые нынче консоли пошли, могут до 49 стамины сжирать, ЗА РАЗ!!! // бесполезный ход получается, который просто обнуляет стамину, // если ты так и задумывал, то без проблем, но если нет - пофикси. if (Stamina < STAMINA_FOR_ATTACK) { Stamina = 0; Console.WriteLine($"Шаман! Восстанови энергию!"); } else { target.TryApplayDamage(AttackDamage); MinusStamina(); } }