Beispiel #1
0
        public virtual void FinishDamageRoll(Roll roll, RollEventArgs e)
        {
            //Debug.WriteLine(string.Format("{0} did {1} {2} damage to {3} with a {4}", caster.name, roll.score, damageTypes[0], rollDefender.name, name));
            DamageRoll damageRoll = roll as DamageRoll;

            if (targets == null)
            {
                foreach (Creature creature in targets)
                {
                    if (!savingThrows[creature].Success || !noneOnSave)
                    {
                        creature.TakeDamage(damageRoll.scoresPerDie, damageRoll.damageTypes, savingThrows[creature].Success);
                    }
                }
            }
            else
            {
                if (!saveRoll.Success || !noneOnSave)
                {
                    target.TakeDamage(damageRoll.scoresPerDie, damageRoll.damageTypes, saveRoll.Success);
                }
            }
        }
Beispiel #2
0
 public virtual void FeatFinishRollCheck(Roll roll, RollEventArgs e)
 {
 }
Beispiel #3
0
 public virtual void FeatPostRollFinished(Roll roll)
 {
     creature.postRollCheckDone(this, roll);
 }
Beispiel #4
0
 public virtual void FeatPostRollCheck(Roll roll, RollEventArgs e)
 {
     FeatPostRollFinished(roll);
 }
Beispiel #5
0
 public DisplayOptionsDnD(string description, DisplayOptionsTextureSet textureSet, Roll roll = null, List <Roll> rolls = null, bool yesAndNo = true, bool haveCancelButton = true, bool haveScrollOptions = false, List <string> availableOptions = null, bool haveAdditionalScrollOptions = false, List <List <string> > additionalAvailableOptions = null) : base(description, textureSet, yesAndNo, haveCancelButton, haveScrollOptions, availableOptions, haveAdditionalScrollOptions, additionalAvailableOptions)
 {
     this.roll  = roll;
     this.rolls = rolls ?? new List <Roll>();
 }
Beispiel #6
0
 public void FinishRollCheck(Roll roll, RollEventArgs e)
 {
     finishRollCheck?.Invoke(roll, e);
 }