protected override void OnTarget(Mobile from, object o) { if (m_Item == null || m_Item.Deleted) { return; } if (o is BaseTalisman) { BaseTalisman talisman = (BaseTalisman)o; if (talisman.Charges == 0) { // Scriptiz : les talismans ne sont pas éternels if (talisman.MaxCharges > 0) // si c'est un talisman avec des charges (pas infini) { talisman.MaxCharges /= 2; // on perd la moitié des charges max if (talisman.MaxCharges == 0) // s'il n'en reste plus il faut delete le talisman { from.SendMessage("Cet objet était trop vieux pour être rechargé, il s'est cassé."); talisman.Delete(); return; } } talisman.Charges = talisman.MaxCharges; m_Item.Delete(); from.SendLocalizedMessage(1075100); // The item has been recharged. } else { from.SendLocalizedMessage(1075099); // You cannot recharge that item until all of its current charges have been used. } } else { from.SendLocalizedMessage(1046439); // That is not a valid target. } }