Ejemplo n.º 1
0
		public void Target( Mobile m )
		{
			if( !Caster.CanSee( m ) )
			{
				Caster.SendLocalizedMessage( 500237 ); // Target can not be seen.
			}
			if( m_Table.ContainsKey( m ) )
			{
				Caster.SendLocalizedMessage( 501775 ); // This spell is already in effect.
			}
			else if( !Caster.CanBeginAction( typeof( GiftOfRenewalSpell ) ) )
			{
				Caster.SendLocalizedMessage( 501789 ); // You must wait before trying again.
			}
			else if( CheckBSequence( m ) )
			{
				SpellHelper.Turn( Caster, m );

				Caster.FixedEffect( 0x374A, 10, 20 );
				Caster.PlaySound( 0x5C9 );

				if( m.Poisoned )
				{
					m.CurePoison( m );
				}
				else
				{
					double skill = Caster.Skills[SkillName.Spellweaving].Value;

					int hitsPerRound = 5 + (int)(skill / 24) + FocusLevel;
					TimeSpan duration = TimeSpan.FromSeconds( 30 + (FocusLevel * 10) );
					
					#region Mondain's Legacy
					ArcaneEmpowermentSpell.AddHealBonus( Caster, ref hitsPerRound );
					#endregion

					GiftOfRenewalInfo info = new GiftOfRenewalInfo( Caster, m, hitsPerRound );

					Timer.DelayCall( duration,
						delegate
						{
							if( StopEffect( m ) )
							{
								m.PlaySound( 0x455 );
								m.SendLocalizedMessage( 1075071 ); // The Gift of Renewal has faded.
							}
						} );



					m_Table[m] = info;

					Caster.BeginAction( typeof( GiftOfRenewalSpell ) );

					BuffInfo.AddBuff( m, new BuffInfo( BuffIcon.GiftOfRenewal, 1031602, 1075797, duration, m, hitsPerRound.ToString() ) );
				}
			}

			FinishSequence();
		}
Ejemplo n.º 2
0
        public void Target(Mobile m)
        {
            if (!Caster.CanSee(m))
            {
                Caster.SendLocalizedMessage(500237);                   // Target can not be seen.
            }
            if (m_Table.ContainsKey(m))
            {
                Caster.SendLocalizedMessage(501775);                   // This spell is already in effect.
            }
            else if (!Caster.CanBeginAction(typeof(GiftOfRenewalSpell)))
            {
                Caster.SendLocalizedMessage(501789);                   // You must wait before trying again.
            }
            else if (CheckBSequence(m))
            {
                SpellHelper.Turn(Caster, m);

                Caster.FixedEffect(0x374A, 10, 20);
                Caster.PlaySound(0x5C9);

                if (m.Poisoned)
                {
                    m.CurePoison(m);
                }
                else
                {
                    double skill = Caster.Skills[SkillName.Spellweaving].Value;

                    int      hitsPerRound = 5 + (int)(skill / 24) + FocusLevel;
                    TimeSpan duration     = TimeSpan.FromSeconds(30 + (FocusLevel * 10));

                    #region Mondain's Legacy
                    ArcaneEmpowermentSpell.AddHealBonus(Caster, ref hitsPerRound);
                    #endregion

                    GiftOfRenewalInfo info = new GiftOfRenewalInfo(Caster, m, hitsPerRound);

                    Timer.DelayCall(duration,
                                    delegate
                    {
                        if (StopEffect(m))
                        {
                            m.PlaySound(0x455);
                            m.SendLocalizedMessage(1075071);                                       // The Gift of Renewal has faded.
                        }
                    });



                    m_Table[m] = info;

                    Caster.BeginAction(typeof(GiftOfRenewalSpell));

                    BuffInfo.AddBuff(m, new BuffInfo(BuffIcon.GiftOfRenewal, 1031602, 1075797, duration, m, hitsPerRound.ToString()));
                }
            }

            FinishSequence();
        }
Ejemplo n.º 3
0
 public InternalTimer(GiftOfRenewalInfo info)
     : base(TimeSpan.FromSeconds(2.0), TimeSpan.FromSeconds(2.0))
 {
     m_Info = info;
 }
Ejemplo n.º 4
0
 public InternalTimer(GiftOfRenewalInfo info)
     : base(TimeSpan.FromSeconds(2.0), TimeSpan.FromSeconds(2.0))
 {
     this.m_Info = info;
 }
Ejemplo n.º 5
0
        public void Target(Mobile m)
        {
            if (m == null)
            {
                return;
            }

            if (!Caster.CanSee(m))
            {
                Caster.SendLocalizedMessage(500237); // Target can not be seen.
            }
            else if (m_Table.ContainsKey(m))
            {
                Caster.SendLocalizedMessage(501775); // This spell is already in effect.
            }
            else if (!Caster.CanBeginAction <GiftOfRenewalSpell>())
            {
                Caster.SendLocalizedMessage(501789); // You must wait before trying again.
            }
            else if (CheckBSequence(m))
            {
                SpellHelper.Turn(Caster, m);

                Caster.FixedEffect(0x374A, 10, 20);
                Caster.PlaySound(0x5C9);

                if (m.Poisoned)
                {
                    m.CurePoison(m);
                }
                else
                {
                    var skill = Caster.Skills.Spellweaving.Value;

                    var hitsPerRound = 5 + (int)(skill / 24) + FocusLevel;
                    var duration     = TimeSpan.FromSeconds(30 + FocusLevel * 10);

                    var info = new GiftOfRenewalInfo(Caster, m, hitsPerRound);

                    Timer.DelayCall(
                        duration,
                        () =>
                    {
                        if (StopEffect(m))
                        {
                            m.PlaySound(0x455);
                            m.SendLocalizedMessage(1075071);     // The Gift of Renewal has faded.
                        }
                    }
                        );

                    m_Table[m] = info;

                    Caster.BeginAction <GiftOfRenewalSpell>();

                    BuffInfo.AddBuff(
                        m,
                        new BuffInfo(BuffIcon.GiftOfRenewal, 1031602, 1075797, duration, m, hitsPerRound.ToString())
                        );
                }
            }

            FinishSequence();
        }