Ejemplo n.º 1
0
 public HomeController(ILogger <HomeController> logger, IDiceTray diceTray, IRollMessage rollMessage, IRollHistory rollHistory)
 {
     _logger      = logger;
     _diceTray    = diceTray;
     _rollMessage = rollMessage;
     _rollHistory = rollHistory;
 }
Ejemplo n.º 2
0
 public void RollMessages(IDiceTray diceTray)
 {
     RollMade    = $"{diceTray.DiceCount}d{diceTray.DiceType} +{diceTray.Bonus}";
     Rolls       = $"{string.Join(", ", diceTray.Rolls)}";
     Result      = CalculateResult(diceTray);
     CritMessage = CritAsString(diceTray);
     CritValue   = diceTray.Crit;
 }
Ejemplo n.º 3
0
 public string CritAsString(IDiceTray diceTray)
 {
     if (diceTray.Crit == Crit.False)
     {
         return("Your Rolls:");
     }
     else if (diceTray.Crit == Crit.CriticalSuccess)
     {
         return("Natural 20!");
     }
     else if (diceTray.Crit == Crit.CriticalFail)
     {
         return("Natural 1!");
     }
     else
     {
         throw new NullReferenceException();
     }
 }
Ejemplo n.º 4
0
 private string CalculateResult(IDiceTray diceTray)
 {
     if (diceTray.VantageType == VantageType.NoVantage)
     {
         return($"{diceTray.Rolls.Sum() + diceTray.Bonus}");
     }
     else if (diceTray.VantageType == VantageType.Advantage)
     {
         return($"{diceTray.Rolls.Max() + diceTray.Bonus}");
     }
     else if (diceTray.VantageType == VantageType.Disadvantage)
     {
         return($"{diceTray.Rolls.Min() + diceTray.Bonus}");
     }
     else
     {
         return("Oops, something went wrong");
     }
 }