protected override void OnTick() { if ((m_SkullPillarTrap.Xa + 5) > m_SkullPillarTrap.X) { m_SkullPillarTrap.X++; List <Mobile> list = new List <Mobile>(); foreach (Mobile mob in m_SkullPillarTrap.GetMobilesInRange(1)) { Point3D traploc = m_SkullPillarTrap.GetWorldLocation(); //Point3D mobloc = mob.X(); if ((mob.X == (m_SkullPillarTrap.X + 1) & mob.Y == m_SkullPillarTrap.Y || mob.X == (m_SkullPillarTrap.X - 1) & mob.Y == m_SkullPillarTrap.Y) & mob.Alive) { //if (mob is Mobile & mob.Alive) list.Add(mob); } } foreach (Mobile mob in list) { if (mob is PlayerMobile) { mob.PlaySound(mob.Female ? 0x327 : 0x437); mob.Animate(20, 1, 1, true, false, 0); Spells.SpellHelper.Damage(TimeSpan.FromTicks(1), mob, mob, Utility.RandomMinMax(45, 50)); } else { BaseCreature bc = (BaseCreature)mob; bc.PlaySound(bc.GetAngerSound()); if (bc.Body.IsAnimal) { bc.Animate(10, 5, 1, true, false, 0); Spells.SpellHelper.Damage(TimeSpan.FromTicks(1), mob, mob, Utility.RandomMinMax(0, 0)); } else if (bc.Body.IsMonster) { bc.Animate(18, 5, 1, true, false, 0); Spells.SpellHelper.Damage(TimeSpan.FromTicks(1), mob, mob, Utility.RandomMinMax(0, 0)); } } } Start(); } else { Stop(); m_SkullPillarTrap.m_XMinus = new XMinus(m_SkullPillarTrap); m_SkullPillarTrap.m_XMinus.Start(); } }
public void RecordLocation() { Point3D loc = m_SkullPillarTrap.GetWorldLocation(); m_SkullPillarTrap.Xa = loc.X; }