public override void OnDrainLife(Mobile victim) { if (Map == null) { return; } foreach (Mobile m in SpellHelper.AcquireIndirectTargets(this, Location, Map, 20).OfType <Mobile>()) { var wisp = new DarkWisp(); wisp.MoveToWorld(Location, Map); Wisps.Add(wisp); if (Region.IsPartOf("Underwater World") && (Map == Map.Trammel || Map == Map.Felucca)) { int teleportchance = Hits / HitsMax; if (teleportchance < Utility.RandomDouble() && m.Alive) { switch (Utility.Random(6)) { case 0: m.MoveToWorld(new Point3D(6431, 1664, 0), Map); break; case 1: m.MoveToWorld(new Point3D(6432, 1634, 0), Map); break; case 2: m.MoveToWorld(new Point3D(6401, 1657, 0), Map); break; case 3: m.MoveToWorld(new Point3D(6401, 1637, 0), Map); break; default: m.MoveToWorld(Location, Map); break; } } } } }
public BarrierTimer( DarkWisp owner ) : base(TimeSpan.FromSeconds( 1.0 ), TimeSpan.FromSeconds( 1.0 )) { m_Owner = owner; m_Ticks = Utility.RandomMinMax( 9, 11 ); }
public BarrierTimer(DarkWisp owner) : base(TimeSpan.FromSeconds(1.0), TimeSpan.FromSeconds(1.0)) { m_Owner = owner; m_Ticks = Utility.RandomMinMax(9, 11); }