Beispiel #1
0
        private static TimeSpan ComputeDuration(Mobile defender)
        {
            double seconds = DurationSeconds;

            Resilience song = Spellsong.GetEffectSpellsong <Resilience>(defender);

            if (song != null)
            {
                seconds = seconds - (song.CurseReduction * seconds / 100.0);
            }

            return(TimeSpan.FromSeconds(seconds));
        }
Beispiel #2
0
        public static double GetNaturalResistChance(Mobile m, Poison poison)
        {
            double poisoning = m.Skills.Poisoning.Value;

            Resilience song = Spellsong.GetEffectSpellsong <Resilience>(m);

            if (song != null)
            {
                poisoning += song.CurseReduction;                 // Guessing here.
            }
            double factor = 80.0 / (poison.Level + 1);

            double chance = factor * poisoning / 100.0;

            return(chance / 100.0);
        }