protected override void OnTarget(Mobile from, object o) { BaseTalisman talisman = o as BaseTalisman; if (talisman == null) { from.SendLocalizedMessage(1046439); // That is not a valid target. } else if (!talisman.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (talisman.Charges == -1 || talisman.TalismanType == TalismanType.None) { from.SendLocalizedMessage(1046439); // That is not a valid target. } else if (talisman.Charges > 0) { from.SendLocalizedMessage(1075099); // You cannot recharge that item until all of its current charges have been used. } else { from.SendLocalizedMessage(1075100); // The item has been recharged. talisman.Charges = 49; if (m_Item != null && !m_Item.Deleted) { m_Item.Delete(); } } }