public static void PublicOverheadItemMessage(Item item, MessageType type, int hue, int font, string text) { if (item != null && item.Map != null) { Packet p = null; Point3D worldLoc = item.GetWorldLocation(); IPooledEnumerable eable = item.Map.GetClientsInRange(worldLoc, item.GetMaxUpdateRange()); foreach (NetState state in eable) { Mobile m = state.Mobile; if (m.CanSee(item) && m.InRange(worldLoc, item.GetUpdateRange(m))) { if (p == null) { p = new AsciiMessage(item.Serial, item.ItemID, type, hue, font, item.Name, text); p.Acquire(); } state.Send(p); } } Packet.Release(p); eable.Free(); } }