public ItemIdGump(PlayerMobile player, Item item, bool success, bool overrideShowRarity, bool overrideShowWorldItemCount): base(200, 25) { if (player == null || item == null) return; if (item.Deleted) return; m_Player = player; m_Item = item; m_Success = success; m_ShowRarity = overrideShowRarity; m_ShowWorldItemCount = overrideShowWorldItemCount; Closable = true; Disposable = true; Dragable = true; Resizable = false; int worldItemCount = 0; bool showRarity = false; bool showWorldItemCount = false; bool conductWorldItemQuery = true; double itemIDSkill = m_Player.Skills[SkillName.ItemID].Value; Type itemType = m_Item.GetType(); if ((success && itemIDSkill >= 110) || m_ShowRarity || m_Player.AccessLevel > AccessLevel.Player) showRarity = true; if ((success && itemIDSkill >= 120) || m_ShowWorldItemCount || m_Player.AccessLevel > AccessLevel.Player) { showWorldItemCount = true; if (m_Player.AccessLevel == AccessLevel.Player && itemType == m_Player.m_LastItemIdWorldItemCountSearchType && itemType != null) { if (DateTime.UtcNow < m_Player.m_LastItemIdWorldItemCountSearch + TimeSpan.FromSeconds(10)) conductWorldItemQuery = false; } if (conductWorldItemQuery) { foreach (Item worldItem in World.Items.Values) { if (worldItem.GetType() == itemType) worldItemCount++; } m_Player.m_LastItemIdWorldItemCountSearchCount = worldItemCount; m_Player.m_LastItemIdWorldItemCountSearchType = itemType; m_Player.m_LastItemIdWorldItemCountSearch = DateTime.UtcNow; } else worldItemCount = m_Player.m_LastItemIdWorldItemCountSearchCount; } string itemName = m_Item.Name; if (itemName == null || itemName == "") { itemName = "Item Details"; m_Item.OnSingleClick(m_Player); } if (itemName != "") itemName = Utility.Capitalize(itemName); string typeText = Item.GetItemGroupTypeName(m_Item.ItemGroup); string rarityText = Item.GetItemRarityName(m_Item.ItemRarity); int rarityHue = Item.GetItemRarityTextHue(m_Item.ItemRarity); string totalCountText = Utility.CreateCurrencyString(worldItemCount); if (!showRarity) rarityText = "?"; if (!showWorldItemCount) totalCountText = "?"; m_ShowRarity = showRarity; m_ShowWorldItemCount = showWorldItemCount; int WhiteTextHue = 2655; AddPage(0); AddImage(135, 12, 103, 2401); AddImage(7, 12, 103, 2401); AddBackground(19, 21, 246, 78, 9270); AddButton(6, 98, 2094, 2095, 1, GumpButtonType.Reply, 0); AddLabel(2, 86, 149, "Guide"); AddLabel(Utility.CenteredTextOffset(145, itemName), 4, 149, itemName); AddLabel(56, 39, WhiteTextHue, "Item Type"); AddLabel(Utility.CenteredTextOffset(90, typeText), 59, 2599, typeText); AddLabel(160, 39, WhiteTextHue, "Item Rarity"); AddLabel(Utility.CenteredTextOffset(197, rarityText), 59, rarityHue, rarityText); AddLabel(71, 92, WhiteTextHue, "Total in World:"); AddLabel(171, 92, 149, totalCountText); }