Beispiel #1
0
        public static bool ApplyDefense(Mobile m)
        {
            if (m_DefenseTable.ContainsKey(m))
            {
                DefenseTimer timer = m_DefenseTable[m];

                if (timer != null)
                {
                    timer.Stop();
                    timer.DefenseMalus = 0;
                }
            }

            int malus;

            if (m is PlayerMobile)
            {
                malus = 45 + BaseArmor.GetRefinedDefenseChance(m);
                malus = malus - (int)(malus * .35);
            }
            else
            {
                malus = 25;
            }

            m_DefenseTable[m] = new DefenseTimer(m, malus);
            BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.HitLowerDefense, 1151313, 1151286, DefenseEffectDuration, m, malus.ToString()));
            m.SendLocalizedMessage(1062318); // Your defense chance has been reduced!

            m.Delta(MobileDelta.WeaponDamage);

            return(true);
        }
Beispiel #2
0
        public static bool ApplyDefense(Mobile m)
        {
            if (IsUnderDefenseEffect(m))
                return false;

            m_DefenseTable[m] = new DefenseTimer(m);
            m.SendLocalizedMessage(1062318); // Your defense chance has been reduced!
            return true;
        }
Beispiel #3
0
        public static bool ApplyDefense(Mobile m)
        {
            if (IsUnderDefenseEffect(m))
            {
                return(false);
            }

            m_DefenseTable[m] = new DefenseTimer(m);
            m.SendLocalizedMessage(1062318);               // Your defense chance has been reduced!
            return(true);
        }
Beispiel #4
0
        public static bool ApplyDefense(Mobile m)
        {
            if (IsUnderDefenseEffect(m))
            {
                return(false);
            }

            m_DefenseTable[m] = new DefenseTimer(m);
            BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.HitLowerDefense, 1151313, 1151312, DefenseEffectDuration, m, "25"));
            m.SendLocalizedMessage(1062318); // Your defense chance has been reduced!
            return(true);
        }
Beispiel #5
0
        public static bool ApplyDefense(Mobile m)
        {
            if (!Core.HS)
            {
                if (IsUnderDefenseEffect(m))
                {
                    return(false);
                }

                m_DefenseTable[m] = new DefenseTimer(m, 25);
                BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.HitLowerDefense, 1151313, 1151286, DefenseEffectDuration, m, "35"));
                m.SendLocalizedMessage(1062318); // Your defense chance has been reduced!

                m.Delta(MobileDelta.WeaponDamage);

                return(true);
            }
            else
            {
                if (m_DefenseTable.ContainsKey(m))
                {
                    var timer = m_DefenseTable[m];

                    if (timer != null)
                    {
                        timer.Stop();
                        timer.DefenseMalus = 0;
                    }
                }

                int malus;

                if (m is PlayerMobile)
                {
                    malus = (int)(Math.Min(45, AosAttributes.GetValue(m, AosAttribute.DefendChance)));
                    malus = malus - (int)((double)malus * .35);
                }
                else
                {
                    malus = 25;
                }

                m_DefenseTable[m] = new DefenseTimer(m, malus);
                BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.HitLowerDefense, 1151313, 1151286, DefenseEffectDuration, m, malus.ToString()));
                m.SendLocalizedMessage(1062318); // Your defense chance has been reduced!

                m.Delta(MobileDelta.WeaponDamage);

                return(true);
            }
        }
Beispiel #6
0
        public static void ApplyDefense( Mobile m )
        {
            if ( IsUnderDefenseEffect( m ) )
                m_DefenseTable[m].Stop();

            TimeSpan duration = DefenseEffectDuration;

            if ( m.Weapon is BaseRanged )
                duration -= TimeSpan.FromSeconds( 3.0 );

            BuffInfo.AddBuff( m, new BuffInfo( BuffIcon.HitLowerDefense, 1151313, 1151312, duration, m, "25" ) );

            m_DefenseTable[m] = new DefenseTimer( m, duration );
            m.SendLocalizedMessage( 1062318 ); // Your defense chance has been reduced!
        }
Beispiel #7
0
        public static void ApplyDefense(Mobile m)
        {
            if (IsUnderDefenseEffect(m))
            {
                m_DefenseTable[m].Stop();
            }

            TimeSpan duration = DefenseEffectDuration;

            if (m.Weapon is BaseRanged)
            {
                duration -= TimeSpan.FromSeconds(3.0);
            }

            BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.HitLowerDefense, 1151313, 1151312, duration, m, "25"));

            m_DefenseTable[m] = new DefenseTimer(m, duration);
            m.SendLocalizedMessage(1062318);               // Your defense chance has been reduced!
        }