Support for MultiSellList custom item display ids.

This commit is contained in:
MobiusDevelopment
2020-11-13 22:13:58 +00:00
parent 1c6372c9bd
commit bd0ee06ab5
19 changed files with 210 additions and 55 deletions

View File

@ -83,14 +83,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -106,8 +107,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
packet.writeD((displayItemEnchantment != null) && (displayItemEnchantment.getAugmentation() != null) ? displayItemEnchantment.getAugmentation().getOption1Id() : 0); packet.writeD((displayItemEnchantment != null) && (displayItemEnchantment.getAugmentation() != null) ? displayItemEnchantment.getAugmentation().getOption1Id() : 0);

View File

@ -83,14 +83,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -106,8 +107,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -85,14 +85,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -108,8 +109,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -110,8 +111,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -80,14 +80,15 @@ public class MultiSellList implements IClientOutgoingPacket
for (Ingredient ing : ent.getProducts()) for (Ingredient ing : ent.getProducts())
{ {
packet.writeD(ing.getItemId());
if (ing.getTemplate() != null) if (ing.getTemplate() != null)
{ {
packet.writeD(ing.getTemplate().getDisplayId());
packet.writeD(ing.getTemplate().getBodyPart()); packet.writeD(ing.getTemplate().getBodyPart());
packet.writeH(ing.getTemplate().getType2()); packet.writeH(ing.getTemplate().getType2());
} }
else else
{ {
packet.writeD(ing.getItemId());
packet.writeD(0); packet.writeD(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -124,7 +125,7 @@ public class MultiSellList implements IClientOutgoingPacket
for (Ingredient ing : ent.getIngredients()) for (Ingredient ing : ent.getIngredients())
{ {
packet.writeD(ing.getItemId()); packet.writeD(ing.getTemplate() != null ? ing.getTemplate().getDisplayId() : ing.getItemId());
packet.writeH(ing.getTemplate() != null ? ing.getTemplate().getType2() : 65535); packet.writeH(ing.getTemplate() != null ? ing.getTemplate().getType2() : 65535);
packet.writeQ(ing.getItemCount()); packet.writeQ(ing.getItemCount());
if (ing.getItemInfo() != null) if (ing.getItemInfo() != null)

View File

@ -80,14 +80,15 @@ public class MultiSellList implements IClientOutgoingPacket
for (Ingredient ing : ent.getProducts()) for (Ingredient ing : ent.getProducts())
{ {
packet.writeD(ing.getItemId());
if (ing.getTemplate() != null) if (ing.getTemplate() != null)
{ {
packet.writeD(ing.getTemplate().getDisplayId());
packet.writeD(ing.getTemplate().getBodyPart()); packet.writeD(ing.getTemplate().getBodyPart());
packet.writeH(ing.getTemplate().getType2()); packet.writeH(ing.getTemplate().getType2());
} }
else else
{ {
packet.writeD(ing.getItemId());
packet.writeD(0); packet.writeD(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -124,7 +125,7 @@ public class MultiSellList implements IClientOutgoingPacket
for (Ingredient ing : ent.getIngredients()) for (Ingredient ing : ent.getIngredients())
{ {
packet.writeD(ing.getItemId()); packet.writeD(ing.getTemplate() != null ? ing.getTemplate().getDisplayId() : ing.getItemId());
packet.writeH(ing.getTemplate() != null ? ing.getTemplate().getType2() : 65535); packet.writeH(ing.getTemplate() != null ? ing.getTemplate().getType2() : 65535);
packet.writeQ(ing.getItemCount()); packet.writeQ(ing.getItemCount());
if (ing.getItemInfo() != null) if (ing.getItemInfo() != null)

View File

@ -85,14 +85,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -108,8 +109,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -109,8 +110,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -87,14 +87,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -111,8 +112,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);

View File

@ -86,14 +86,15 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(product.getId()); final Item template = ItemTable.getInstance().getTemplate(product.getId());
final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = (_list.isMaintainEnchantment() && (itemEnchantment != null) && (template != null) && template.getClass().equals(itemEnchantment.getItem().getClass())) ? itemEnchantment : null;
packet.writeD(product.getId());
if (template != null) if (template != null)
{ {
packet.writeD(template.getDisplayId());
packet.writeQ(template.getBodyPart()); packet.writeQ(template.getBodyPart());
packet.writeH(template.getType2()); packet.writeH(template.getType2());
} }
else else
{ {
packet.writeD(product.getId());
packet.writeQ(0); packet.writeQ(0);
packet.writeH(65535); packet.writeH(65535);
} }
@ -110,8 +111,16 @@ public class MultiSellList extends AbstractItemPacket
{ {
final Item template = ItemTable.getInstance().getTemplate(ingredient.getId()); final Item template = ItemTable.getInstance().getTemplate(ingredient.getId());
final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null; final ItemInfo displayItemEnchantment = ((itemEnchantment != null) && (itemEnchantment.getItem().getId() == ingredient.getId())) ? itemEnchantment : null;
packet.writeD(ingredient.getId()); if (template != null)
packet.writeH(template != null ? template.getType2() : 65535); {
packet.writeD(template.getDisplayId());
packet.writeH(template.getType2());
}
else
{
packet.writeD(ingredient.getId());
packet.writeH(65535);
}
packet.writeQ(_list.getIngredientCount(ingredient)); packet.writeQ(_list.getIngredientCount(ingredient));
packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level packet.writeH(ingredient.getEnchantmentLevel() > 0 ? ingredient.getEnchantmentLevel() : displayItemEnchantment != null ? displayItemEnchantment.getEnchantLevel() : 0); // enchant level
writeItemAugment(packet, displayItemEnchantment); writeItemAugment(packet, displayItemEnchantment);