protected override void OnTick() { if (DateTime.Now >= m_Expire) { ResearchAirWalk.RemoveEffect(m_m); Stop(); } }
public override void OnCast() { if (!Caster.CanBeginAction(typeof(ResearchAirWalk))) { ResearchAirWalk.RemoveEffect(Caster); } int TotalTime = (int)((DamagingSkill(Caster) * 20) / 60); new InternalTimer(Caster, TimeSpan.FromSeconds(TotalTime)).Start(); Caster.BeginAction(typeof(ResearchAirWalk)); Point3D air = new Point3D((Caster.X + 1), (Caster.Y + 1), (Caster.Z + 5)); Effects.SendLocationParticles(EffectItem.Create(air, Caster.Map, EffectItem.DefaultDuration), 0x5590, 9, 32, Server.Items.CharacterDatabase.GetMySpellHue(Caster, 0), 0, 5022, 0); Caster.PlaySound(0x014); Server.Misc.Research.ConsumeScroll(Caster, true, spellID, false); FinishSequence(); }