/// <summary> /// Metoda, která vypočítá hodnotu úderu, vyvolá metodu obrany a vypočitá skutečné zranění /// </summary> /// <param name="enemy"> /// Vstupní parametr, jméno nepřítele, na kterého útočíme /// </param> public virtual void Attack(Warrior enemy) { int hit = attack + dice.Throw(); SetCombatMessage($"{name} útočí s úderem za {hit} HP"); enemy.DefendYourself(hit); }
/// <summary> /// Metoda, která vypočítá hodnotu úderu, vyvolá metodu obrany a vypočitá skutečné zranění /// </summary> /// <param name="enemy"> /// Vstupní parametr, jméno nepřítele, na kterého útočíme /// </param> public override void Attack(Warrior enemy) { if (mana >= maxMana) { int hit = magicAttack + dice.Throw(); SetCombatMessage($"{name} použil magii za {hit} HP"); enemy.DefendYourself(hit); mana = 0; } else { base.Attack(enemy); mana += 10; ManaOverflowControl(); } }