private static void MobileMoving(PacketReader p) { Mobile m = World.FindMobile(p.ReadUInt32()); if (m != null) { m.Body = p.ReadUInt16(); m.Position = new Point3D(p.ReadUInt16(), p.ReadUInt16(), p.ReadSByte()); if (Utility.Distance(World.Player.Position, m.Position) > 18) { World.RemoveMobile(m); return; } m.Direction = (Direction)p.ReadByte(); m.Hue = p.ReadUInt16(); bool wasPoisoned = m.Poisoned; m.ProcessPacketFlags(p.ReadByte()); byte oldNoto = m.Notoriety; m.Notoriety = p.ReadByte(); } }