Working 100%.
Core:
Index: /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/network/serverpackets/MultiSellList.java
===================================================================
--- /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/network/serverpackets/MultiSellList.java (revision 24)
+++ /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/network/serverpackets/MultiSellList.java (revision 71)
@@ -119,5 +119,5 @@
else
{
- writeH(0x00); // enchant level
+ writeH(ing.getEnchantLevel()); // enchant level by Sirpaypi
writeD(0x00); // augment id
writeD(0x00); // mana
@@ -154,5 +154,5 @@
else
{
- writeH(0x00); // enchant level
+ writeH(ing.getEnchantLevel()); // enchant level
writeD(0x00); // augment id
writeD(0x00); // mana
Index: /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/PreparedEntry.java
===================================================================
--- /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/PreparedEntry.java (revision 24)
+++ /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/PreparedEntry.java (revision 71)
@@ -72,5 +72,5 @@
adenaA-beep-t += _taxA-beep-t; // do not forget tax
if (adenaA-beep-t > 0)
- _ingredients.add(new Ingredient(ADENA_ID, adenaA-beep-t, false, false));
+ _ingredients.add(new Ingredient(ADENA_ID, adenaA-beep-t,0, false, false));
// now copy products
Index: /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/Ingredient.java
===================================================================
--- /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/Ingredient.java (revision 24)
+++ /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/model/multisell/Ingredient.java (revision 71)
@@ -30,4 +30,5 @@
private int _itemId;
private long _itemCount;
+ private int _EnchantmentLevel;
private boolean _isTaxIngredient, _maintainIngredient;
@@ -35,8 +36,9 @@
private ItemInfo _itemInfo = null;
- public Ingredient(int itemId, long itemCount, boolean isTaxIngredient, boolean maintainIngredient)
+ public Ingredient(int itemId, long itemCount,int EnchantmentLevel, boolean isTaxIngredient, boolean maintainIngredient)
{
_itemId = itemId;
_itemCount = itemCount;
+ _EnchantmentLevel = EnchantmentLevel;
_isTaxIngredient = isTaxIngredient;
_maintainIngredient = maintainIngredient;
@@ -80,5 +82,5 @@
public final int getEnchantLevel()
{
- return _itemInfo != null ? _itemInfo.getEnchantLevel() : 0;
+ return _itemInfo == null?_EnchantmentLevel:_itemInfo.getEnchantLevel();
}
Index: /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/datatables/MultiSell.java
===================================================================
--- /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/datatables/MultiSell.java (revision 52)
+++ /trunk/L2C_TestGameserver/java/com/l2jserver/gameserver/datatables/MultiSell.java (revision 71)
@@ -270,4 +270,8 @@
if ("ingredient".equalsIgnoreCase(n.getNodeName()))
{
+ int enchantmentLevel = 0;
+ if (n.getAttributes().getNamedItem("enchantmentLevel") != null)
+ enchantmentLevel = Integer.parseInt(n.getAttributes().getNamedItem("enchantmentLevel").getNodeValue());
+
int id = Integer.parseInt(n.getAttributes().getNamedItem("id").getNodeValue());
long count = Long.parseLong(n.getAttributes().getNamedItem("count").getNodeValue());
@@ -286,12 +290,16 @@
mantainIngredient = false;
- entry.addIngredient(new Ingredient(id, count, isTaxIngredient, mantainIngredient));
+ entry.addIngredient(new Ingredient(id, count, enchantmentLevel, isTaxIngredient, mantainIngredient));
}
else if ("production".equalsIgnoreCase(n.getNodeName()))
{
+ int enchantmentLevel = 0;
+ if (n.getAttributes().getNamedItem("enchantmentLevel") != null)
+ enchantmentLevel = Integer.parseInt(n.getAttributes().getNamedItem("enchantmentLevel").getNodeValue());
+
int id = Integer.parseInt(n.getAttributes().getNamedItem("id").getNodeValue());
long count = Long.parseLong(n.getAttributes().getNamedItem("count").getNodeValue());
- entry.addProduct(new Ingredient(id, count, false, false));
+ entry.addProduct(new Ingredient(id, count, enchantmentLevel, false, false));
}
}
Datapack:
e.g:
<production id="15725" count="1" enchantmentLevel="16" />