pira afto to code : http://www.maxcheaters.com/forum/index.php?topic=125525.0
alla dn borw na perasw to request item berdevome gt to acis einai diaforetiko
Index: /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java
===================================================================
--- /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 2)
+++ /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 10)
@@ -41,6 +41,9 @@
protected static final Logger _log = Logger.getLogger(Inventory.class.getName());
private static final String _C__58_REQUESTENCHANTITEM = "[C] 58 RequestEnchantItem";
- private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
-
+ private static final int[] ENCHANT_SCROLLS = { 729, 730, 947, 948, 951, 952, 955, 956, 959, 960 };
+ private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
+ private static final int[] BLESSED_SCROLLS = { 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 };
+
+
private int _objectId;
@@ -57,4 +60,12 @@
if (activeChar == null || _objectId == 0) return;
+ if (activeChar.isProcessingTransaction())
+ {
+ activeChar.sendPacket(new SystemMessage(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION));
+ activeChar.setActiveEnchantItem(null);
+ return;
+ }
+
+
L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);
L2ItemInstance scroll = activeChar.getActiveEnchantItem();
@@ -179,27 +190,93 @@
}
- // SystemMessage sm = new SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
- // activeChar.sendPacket(sm);
-
- SystemMessage sm;
-
- int chance = 0;
- int maxEnchantLevel = 0;
-
- if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
- {
- chance = Config.ENCHANT_CHANCE_WEAPON;
- maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
- }
- else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
- {
- chance = Config.ENCHANT_CHANCE_ARMOR;
- maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
- }
- else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
- {
- chance = Config.ENCHANT_CHANCE_JEWELRY;
- maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
- }
+ // SystemMessage sm = new
+ // SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
+ // activeChar.sendPacket(sm);
+ SystemMessage sm;
+ int chance = 0;
+ int maxEnchantLevel = 0;
+ if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
+ {
+ maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
+ for (int scrollId : ENCHANT_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_WEAPON;
+ break;
+ }
+ }
+ for (int scrollId : CRYSTAL_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_WEAPON_CRYSTAL;
+ ;
+ break;
+ }
+ }
+ for (int scrollId : BLESSED_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_WEAPON_BLESSED;
+ break;
+ }
+ }
+ } else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
+ {
+ maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
+ for (int scrollId : ENCHANT_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_ARMOR;
+ break;
+ }
+ }
+ for (int scrollId : CRYSTAL_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_ARMOR_CRYSTAL;
+ break;
+ }
+ }
+ for (int scrollId : BLESSED_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_ARMOR_BLESSED;
+ break;
+ }
+ }
+ } else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
+ {
+ maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
+ for (int scrollId : ENCHANT_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_JEWELRY;
+ break;
+ }
+ }
+ for (int scrollId : CRYSTAL_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_JEWELRY_CRYSTAL;
+ break;
+ }
+ }
+ for (int scrollId : BLESSED_SCROLLS)
+ {
+ if (scroll.getItemId() == scrollId)
+ {
+ chance = Config.ENCHANT_CHANCE_JEWELRY_BLESSED;
+ break;
+ }
+ }
+ }
if (item.getEnchantLevel() < Config.ENCHANT_SAFE_MAX