public void AttackRoundDamage_Success() { //Arrange _mockDice.Setup(dice => dice.RollDice()).Returns(16); _mockDice.Setup(dice => dice.RollDice(4, 11)).Returns(8); var expectedResult = 8; //Act var actualResult = combatHandler.GetAttackRoundDamage(_mockChar1.Object, _mockChar2.Object); //Assert Assert.AreEqual(expectedResult, actualResult); }
private static void AttackSequence(ICharacter attacker, ICharacter defender, ICombatHandler combatHandler) { var damageTaken = combatHandler.GetAttackRoundDamage(attacker, defender); defender.TakeDamage(damageTaken); Console.WriteLine(string.Format("{0} attacks!", attacker.Name)); System.Threading.Thread.Sleep(1000); Console.WriteLine(combatHandler.LastAttackStatus); if (damageTaken > 0) { Console.WriteLine(string.Format("{0} has lost {1} life points.", defender.Name, damageTaken)); } Console.WriteLine(); }
private static string AttackSequence(ICharacter attacker, ICharacter defender, ICombatHandler combatHandler) { var damageTaken = combatHandler.GetAttackRoundDamage(attacker, defender); defender.TakeDamage(damageTaken); var sb = new StringBuilder(); sb.Append(string.Format("{0} attacks!", attacker.Name)); sb.Append("\n"); sb.Append(combatHandler.LastAttackStatus); if (damageTaken > 0) { sb.AppendLine(string.Format("{0} has lost {1} life points.", defender.Name, damageTaken)); } sb.Append("\n"); return(sb.ToString()); }