예제 #1
0
        public override void OnCast()
        {
            BardSpell spell = SkillMasterySpell.GetSpell(Caster, this.GetType()) as BardSpell;

            if (spell != null)
            {
                spell.Expire();
                Caster.SendLocalizedMessage(1115774); //You halt your spellsong.
            }
            else if (CheckSequence())
            {
                m_PropertyBonus = (int)((BaseSkillBonus * 12) + (CollectiveBonus * 3));
                m_DamageBonus   = (int)Math.Min(40, ((BaseSkillBonus * 30) + (CollectiveBonus * 10)));

                foreach (Mobile m in GetParty())
                {
                    m.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist);
                    m.SendLocalizedMessage(1115736); // You feel inspired by the bard's spellsong.

                    string args = String.Format("{0}\t{1}\t{2}", m_PropertyBonus, m_PropertyBonus, m_DamageBonus);
                    BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.Inspire, 1115683, 1115729, args.ToString()));
                }

                BeginTimer();
            }

            FinishSequence();
        }
예제 #2
0
        public override void OnCast()
        {
            BardSpell spell = SkillMasterySpell.GetSpell(Caster, this.GetType()) as BardSpell;

            if (spell != null)
            {
                spell.Expire();
                Caster.SendLocalizedMessage(1115774); //You halt your spellsong.
            }
            else if (CheckSequence())
            {
                m_PropertyBonus  = (int)((BaseSkillBonus * 16) + (CollectiveBonus * 6));
                m_PropertyBonus2 = (int)((BaseSkillBonus * 4) + (CollectiveBonus * 2));
                m_DamageMod      = ((BaseSkillBonus * 16) + (CollectiveBonus * 6)) / 100;

                System.Collections.Generic.List <Mobile> list = GetParty();

                foreach (Mobile m in list)
                {
                    m.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist);
                    m.SendLocalizedMessage(1115739); // The bard's spellsong fills you with a feeling of invincibility.

                    string args = String.Format("{0}\t{1}\t{2}", m_PropertyBonus, m_DamageMod, m_PropertyBonus2);
                    BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.Perseverance, 1115615, 1115732, args.ToString()));
                }

                list.Clear();
                list.TrimExcess();

                BeginTimer();
            }

            FinishSequence();
        }
예제 #3
0
        public override void OnCast()
        {
            BardSpell spell = SkillMasterySpell.GetSpell(Caster, this.GetType()) as BardSpell;

            if (spell != null)
            {
                spell.Expire();
                Caster.SendLocalizedMessage(1115774); //You halt your spellsong.
            }
            else if (CheckSequence())
            {
                m_HPBonus   = (int)((20 * BaseSkillBonus) + (CollectiveBonus * 6));
                m_StatBonus = (int)((BaseSkillBonus * 8) + (CollectiveBonus * 6));
                System.Collections.Generic.List <Mobile> list = GetParty();

                foreach (Mobile m in list)
                {
                    m.FixedParticles(0x373A, 10, 15, 5018, EffectLayer.Waist);
                    m.SendLocalizedMessage(1115737); // You feel invigorated by the bard's spellsong.

                    string args = String.Format("{0}\t{1}\t{2}\t{3}", m_StatBonus, m_StatBonus, m_StatBonus, m_StatBonus);
                    BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.Invigorate, 1115613, 1115730, args.ToString()));
                }

                list.Clear();
                list.TrimExcess();

                BeginTimer();
            }

            FinishSequence();
        }
예제 #4
0
        public override void OnCast()
        {
            BardSpell spell = SkillMasterySpell.GetSpell(Caster, this.GetType()) as BardSpell;

            if (spell != null)
            {
                spell.Expire();
                Caster.SendLocalizedMessage(1115774); //You halt your spellsong.
            }
            else
            {
                Caster.Target = new InternalTarget(this);
            }
        }
예제 #5
0
        public override void OnCast()
        {
            BardSpell spell = SkillMasterySpell.GetSpell(Caster, GetType()) as BardSpell;

            if (spell != null)
            {
                spell.Expire();
                Caster.SendLocalizedMessage(1115774); //You halt your spellsong.
            }
            else if (CheckSequence())
            {
                m_PropertyBonus = (int)((BaseSkillBonus * 2) + CollectiveBonus); // 2 - 16 (22)

                UpdateParty();
                BeginTimer();
            }

            FinishSequence();
        }