private void PerformSavingThrow(string stat, bool advantage, bool disadvantage) { string[] throws = c.GetSavingThrows(); int mod = 0; mod += c.GetModifier(stat); if (throws[0] == stat || throws[1] == stat) { mod += c.GetProfiencyBonus(); } if (advantage || disadvantage) { if (advantage) { log.Write(stat + " SAVE: " + DiceThrower.ThrowDieAdvantage(20, mod, true)); } else { log.Write(stat + " SAVE: " + DiceThrower.ThrowDieAdvantage(20, mod, false)); } } else { log.Write(stat + " SAVE: " + DiceThrower.ThrowDie(20, mod)); } }
public void Roll(string skillName, int mod) { int bonus = 0; bool adv = rbAdvantage.IsChecked.Value; bool dis = rbDisadvantage.IsChecked.Value; if (tbBonus.Text != "") { try { bonus = Convert.ToInt32(tbBonus.Text); } catch (Exception) { MessageBox.Show("Invalid bonus."); } } mod += bonus; if (skillName == "Stealth") { if (stealthDis) { if (!adv) { dis = true; } adv = false; } } if (adv) { p.log.Write(skillName + ": " + DiceThrower.ThrowDieAdvantage(20, mod, true)); } else if (dis) { p.log.Write(skillName + ": " + DiceThrower.ThrowDieAdvantage(20, mod, false)); } else { p.log.Write(skillName + ": " + DiceThrower.ThrowDie(20, mod)); } this.Close(); }
private void btnInitiative_Click(object sender, RoutedEventArgs e) { List <int> results = new List <int>(); log.Write("Initiative Result: " + DiceThrower.ThrowDie(20, c.GetModifier("DEX"))); }