Dropped ForceInventoryUpdate configuration.

This commit is contained in:
MobiusDevelopment 2022-08-19 22:31:14 +00:00
parent 8ab5c31458
commit 58f30044d5
403 changed files with 3443 additions and 8712 deletions

View File

@ -234,12 +234,6 @@ AutoDeleteInvalidQuestData = False
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -475,7 +475,6 @@ public class Config
public static boolean ORDER_QUEST_LIST_BY_QUESTID; public static boolean ORDER_QUEST_LIST_BY_QUESTID;
public static boolean AUTODELETE_INVALID_QUEST_DATA; public static boolean AUTODELETE_INVALID_QUEST_DATA;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -1988,7 +1987,6 @@ public class Config
ORDER_QUEST_LIST_BY_QUESTID = generalConfig.getBoolean("OrderQuestListByQuestId", true); ORDER_QUEST_LIST_BY_QUESTID = generalConfig.getBoolean("OrderQuestListByQuestId", true);
AUTODELETE_INVALID_QUEST_DATA = generalConfig.getBoolean("AutoDeleteInvalidQuestData", false); AUTODELETE_INVALID_QUEST_DATA = generalConfig.getBoolean("AutoDeleteInvalidQuestData", false);
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -84,16 +83,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList(false);
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -589,31 +589,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packet
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList(false);
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList(false);
}
success = true; success = true;
} }

View File

@ -3082,8 +3082,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(false); sendItemList(false);
@ -3095,11 +3093,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3130,16 +3123,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3180,16 +3166,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3232,17 +3211,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3272,16 +3245,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3488,8 +3454,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3500,11 +3464,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3604,8 +3563,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3616,11 +3573,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3666,8 +3618,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3678,33 +3628,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList(false);
} }
targetPlayer.sendPacket(targetIU);
} }
else if (target instanceof PetInventory) else if (target instanceof PetInventory)
{ {
@ -3807,16 +3745,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3881,16 +3812,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -417,16 +417,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList(false);
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -482,8 +475,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -496,11 +487,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList(false);
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1094,17 +1080,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList(false);
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList(true);
}
}
} }

View File

@ -400,7 +400,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList(false);
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -485,7 +485,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2012,7 +2011,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -84,16 +83,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList(false);
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -589,31 +589,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packet
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList(false);
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList(false);
}
success = true; success = true;
} }

View File

@ -3084,8 +3084,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(false); sendItemList(false);
@ -3097,11 +3095,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3132,16 +3125,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3182,16 +3168,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3234,17 +3213,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3274,16 +3247,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3490,8 +3456,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3502,11 +3466,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3606,8 +3565,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3618,11 +3575,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3668,8 +3620,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3680,33 +3630,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList(false);
} }
targetPlayer.sendPacket(targetIU);
} }
else if (target instanceof PetInventory) else if (target instanceof PetInventory)
{ {
@ -3809,16 +3747,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3883,16 +3814,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -417,16 +417,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList(false);
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -482,8 +475,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -496,11 +487,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList(false);
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1098,17 +1084,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList(false);
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList(true);
}
}
} }

View File

@ -400,7 +400,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList(false);
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -485,7 +485,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2025,7 +2024,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -84,16 +83,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList(false);
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -589,31 +589,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packet
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList(false);
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList(false);
}
success = true; success = true;
} }

View File

@ -3086,8 +3086,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(false); sendItemList(false);
@ -3099,11 +3097,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3134,16 +3127,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3184,16 +3170,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3236,17 +3215,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3276,16 +3249,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3492,8 +3458,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3504,11 +3468,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3608,8 +3567,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3620,11 +3577,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3670,8 +3622,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3682,33 +3632,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList(false);
} }
targetPlayer.sendPacket(targetIU);
} }
else if (target instanceof PetInventory) else if (target instanceof PetInventory)
{ {
@ -3811,16 +3749,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3885,16 +3816,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -417,16 +417,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList(false);
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -482,8 +475,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -496,11 +487,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList(false);
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1098,17 +1084,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList(false);
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList(true);
}
}
} }

View File

@ -400,7 +400,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList(false);
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -479,7 +479,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2005,7 +2004,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -84,16 +83,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList(false);
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -591,31 +591,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packet
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList(false);
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList(false);
}
success = true; success = true;
} }

View File

@ -3082,8 +3082,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(false); sendItemList(false);
@ -3095,11 +3093,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3130,16 +3123,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3180,16 +3166,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3232,17 +3211,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList(false);
}
}
} }
/** /**
@ -3272,16 +3245,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList(false);
}
if (sendMessage) if (sendMessage)
{ {
@ -3488,8 +3454,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3500,11 +3464,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3604,8 +3563,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3616,11 +3573,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3666,8 +3618,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3678,33 +3628,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList(false);
} }
targetPlayer.sendPacket(targetIU);
} }
else if (target instanceof PetInventory) else if (target instanceof PetInventory)
{ {
@ -3807,16 +3745,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3881,16 +3812,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList(false);
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -417,16 +417,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList(false);
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -482,8 +475,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -496,11 +487,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList(false);
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1098,17 +1084,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList(false);
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList(true);
}
}
} }

View File

@ -401,7 +401,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(false); player.sendItemList(false);

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList(false);
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList(false);
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -478,7 +478,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2014,7 +2013,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -84,16 +83,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList();
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -591,31 +591,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packets
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList();
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList();
}
success = true; success = true;
} }

View File

@ -3112,8 +3112,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(); sendItemList();
@ -3125,11 +3123,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3160,16 +3153,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3210,16 +3196,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3262,17 +3241,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3302,16 +3275,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3518,8 +3484,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3530,11 +3494,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3634,8 +3593,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3646,11 +3603,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3696,8 +3648,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3708,33 +3658,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList();
} }
targetPlayer.sendPacket(targetIU);
} }
return newItem; return newItem;
} }
@ -3823,16 +3761,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3897,16 +3828,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -421,16 +421,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList();
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -486,8 +479,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -500,11 +491,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList();
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1139,17 +1125,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList();
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -401,7 +401,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList();
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -478,7 +478,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2021,7 +2020,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -82,16 +81,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList();
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -591,31 +591,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packets
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList();
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList();
}
success = true; success = true;
} }

View File

@ -3125,8 +3125,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(); sendItemList();
@ -3138,11 +3136,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3173,16 +3166,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3223,16 +3209,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3275,17 +3254,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3315,16 +3288,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3531,8 +3497,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3543,11 +3507,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3647,8 +3606,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3659,11 +3616,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3709,8 +3661,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3721,33 +3671,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList();
} }
targetPlayer.sendPacket(targetIU);
} }
return newItem; return newItem;
} }
@ -3836,16 +3774,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3910,16 +3841,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -421,16 +421,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList();
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -486,8 +479,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -500,11 +491,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList();
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1139,17 +1125,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList();
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -401,7 +401,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList();
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -242,12 +242,6 @@ ExaltedForHonorItemMax = 45873,100
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -479,7 +479,6 @@ public class Config
public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_GLORY_ITEM_MAX;
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2060,7 +2059,6 @@ public class Config
EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1])); EXALTED_FOR_GLORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForGloryItemMax", "45872,80").split(",")[1]));
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,100").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -82,16 +81,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList();
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -591,31 +591,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packets
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList();
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList();
}
success = true; success = true;
} }

View File

@ -3126,8 +3126,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(); sendItemList();
@ -3139,11 +3137,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3174,16 +3167,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3224,16 +3210,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3276,17 +3255,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3316,16 +3289,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3532,8 +3498,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3544,11 +3508,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3648,8 +3607,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3660,11 +3617,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3710,8 +3662,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3722,33 +3672,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList();
} }
targetPlayer.sendPacket(targetIU);
} }
return newItem; return newItem;
} }
@ -3837,16 +3775,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3911,16 +3842,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -421,16 +421,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList();
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -486,8 +479,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -500,11 +491,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList();
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1139,17 +1125,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList();
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -403,7 +403,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

View File

@ -163,7 +163,7 @@ public class RequestPackageSend implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder i : _items) for (ItemHolder i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -182,8 +182,6 @@ public class RequestPackageSend implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -192,7 +190,6 @@ public class RequestPackageSend implements IClientIncomingPacket
{ {
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
}
// Remove item objects from the world. // Remove item objects from the world.
World.getInstance().removeObject(oldItem); World.getInstance().removeObject(oldItem);
@ -202,13 +199,6 @@ public class RequestPackageSend implements IClientIncomingPacket
warehouse.deleteMe(); warehouse.deleteMe();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -184,7 +184,7 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -205,8 +205,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -215,7 +213,6 @@ public class RequestPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
@ -224,10 +221,8 @@ public class RequestPostAttachment implements IClientIncomingPacket
} }
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -310,7 +310,7 @@ public class RequestSendPost implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (AttachmentItem i : _items) for (AttachmentItem i : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -328,8 +328,7 @@ public class RequestSendPost implements IClientIncomingPacket
continue; continue;
} }
newItem.setItemLocation(newItem.getItemLocation(), msg.getId()); newItem.setItemLocation(newItem.getItemLocation(), msg.getId());
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -339,17 +338,9 @@ public class RequestSendPost implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
else
{
player.sendItemList();
}
return true; return true;
} }

View File

@ -168,7 +168,7 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (ItemHolder itemHolder : _items) for (ItemHolder itemHolder : _items)
{ {
// Check validity of requested item // Check validity of requested item
@ -191,8 +191,6 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
continue; continue;
} }
if (playerIU != null)
{
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
playerIU.addModifiedItem(oldItem); playerIU.addModifiedItem(oldItem);
@ -202,16 +200,8 @@ public class SendWareHouseDepositList implements IClientIncomingPacket
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
} }
}
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -243,12 +243,6 @@ ExaltedForVictoryItemMax = 80825,30
# Default: True # Default: True
MultipleItemDrop = True MultipleItemDrop = True
# Forces full item inventory packet to be sent for any item change.
# Notes:
# This can increase network traffic
# Default: False
ForceInventoryUpdate = False
# True = Load html's into cache only on first time html is requested. # True = Load html's into cache only on first time html is requested.
# False = Load all html's into cache on server startup. # False = Load all html's into cache on server startup.
# Default: False # Default: False

View File

@ -480,7 +480,6 @@ public class Config
public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX; public static ItemHolder EXALTED_FOR_HONOR_ITEM_MAX;
public static ItemHolder EXALTED_FOR_VICTORY_ITEM_MAX; public static ItemHolder EXALTED_FOR_VICTORY_ITEM_MAX;
public static boolean MULTIPLE_ITEM_DROP; public static boolean MULTIPLE_ITEM_DROP;
public static boolean FORCE_INVENTORY_UPDATE;
public static boolean LAZY_CACHE; public static boolean LAZY_CACHE;
public static boolean CHECK_HTML_ENCODING; public static boolean CHECK_HTML_ENCODING;
public static boolean CACHE_CHAR_NAMES; public static boolean CACHE_CHAR_NAMES;
@ -2071,7 +2070,6 @@ public class Config
EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,20").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,20").split(",")[1])); EXALTED_FOR_HONOR_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,20").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForHonorItemMax", "45873,20").split(",")[1]));
EXALTED_FOR_VICTORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForVictoryItemMax", "80825,30").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForVictoryItemMax", "80825,30").split(",")[1])); EXALTED_FOR_VICTORY_ITEM_MAX = new ItemHolder(Integer.parseInt(generalConfig.getString("ExaltedForVictoryItemMax", "80825,30").split(",")[0]), Integer.parseInt(generalConfig.getString("ExaltedForVictoryItemMax", "80825,30").split(",")[1]));
MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true); MULTIPLE_ITEM_DROP = generalConfig.getBoolean("MultipleItemDrop", true);
FORCE_INVENTORY_UPDATE = generalConfig.getBoolean("ForceInventoryUpdate", false);
LAZY_CACHE = generalConfig.getBoolean("LazyCache", true); LAZY_CACHE = generalConfig.getBoolean("LazyCache", true);
CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true); CHECK_HTML_ENCODING = generalConfig.getBoolean("CheckHtmlEncoding", true);
CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true); CACHE_CHAR_NAMES = generalConfig.getBoolean("CacheCharNames", true);

View File

@ -16,7 +16,6 @@
*/ */
package org.l2jmobius.gameserver.model; package org.l2jmobius.gameserver.model;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.ItemTable; import org.l2jmobius.gameserver.data.ItemTable;
import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.model.item.instance.Item;
@ -82,16 +81,10 @@ public class CombatFlag
_player.sendPacket(sm); _player.sendPacket(sm);
// Refresh inventory // Refresh inventory
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_item); iu.addItem(_item);
_player.sendInventoryUpdate(iu); _player.sendInventoryUpdate(iu);
}
else
{
_player.sendItemList();
}
// Refresh player stats // Refresh player stats
_player.broadcastUserInfo(); _player.broadcastUserInfo();
_player.setCombatFlagEquipped(true); _player.setCombatFlagEquipped(true);

View File

@ -591,31 +591,17 @@ public class TradeList
else else
{ {
// Prepare inventory update packet // Prepare inventory update packet
final InventoryUpdate ownerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate ownerIU = new InventoryUpdate();
final InventoryUpdate partnerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate partnerIU = new InventoryUpdate();
// Transfer items // Transfer items
partnerList.TransferItems(_owner, partnerIU, ownerIU); partnerList.TransferItems(_owner, partnerIU, ownerIU);
TransferItems(partnerList.getOwner(), ownerIU, partnerIU); TransferItems(partnerList.getOwner(), ownerIU, partnerIU);
// Send inventory update packet // Send inventory update packets
if (ownerIU != null)
{
_owner.sendInventoryUpdate(ownerIU); _owner.sendInventoryUpdate(ownerIU);
}
else
{
_owner.sendItemList();
}
if (partnerIU != null)
{
_partner.sendInventoryUpdate(partnerIU); _partner.sendInventoryUpdate(partnerIU);
}
else
{
_partner.sendItemList();
}
success = true; success = true;
} }

View File

@ -3062,8 +3062,6 @@ public class Player extends Playable
_inventory.addAdena(process, count, this, reference); _inventory.addAdena(process, count, this, reference);
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
if (count == getAdena()) if (count == getAdena())
{ {
sendItemList(); sendItemList();
@ -3075,11 +3073,6 @@ public class Player extends Playable
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3110,16 +3103,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(adenaItem); iu.addItem(adenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3160,16 +3146,9 @@ public class Player extends Playable
} }
// Send update packet // Send update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(beautyTickets); iu.addItem(beautyTickets);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3212,17 +3191,11 @@ public class Player extends Playable
if (count > 0) if (count > 0)
{ {
_inventory.addAncientAdena(process, count, this, reference); _inventory.addAncientAdena(process, count, this, reference);
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(_inventory.getAncientAdenaInstance()); iu.addItem(_inventory.getAncientAdenaInstance());
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
} }
else
{
sendItemList();
}
}
} }
/** /**
@ -3252,16 +3225,9 @@ public class Player extends Playable
return false; return false;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
iu.addItem(ancientAdenaItem); iu.addItem(ancientAdenaItem);
sendInventoryUpdate(iu); sendInventoryUpdate(iu);
}
else
{
sendItemList();
}
if (sendMessage) if (sendMessage)
{ {
@ -3468,8 +3434,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0)) if (destoyedItem.isStackable() && (destoyedItem.getCount() > 0))
{ {
@ -3480,11 +3444,6 @@ public class Player extends Playable
playerIU.addRemovedItem(destoyedItem); playerIU.addRemovedItem(destoyedItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3584,8 +3543,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > 0)) if (item.isStackable() && (item.getCount() > 0))
{ {
@ -3596,11 +3553,6 @@ public class Player extends Playable
playerIU.addRemovedItem(item); playerIU.addRemovedItem(item);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3646,8 +3598,6 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if ((oldItem.getCount() > 0) && (oldItem != newItem)) if ((oldItem.getCount() > 0) && (oldItem != newItem))
{ {
@ -3658,33 +3608,21 @@ public class Player extends Playable
playerIU.addRemovedItem(oldItem); playerIU.addRemovedItem(oldItem);
} }
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Send target update packet // Send target update packet
if (target instanceof PlayerInventory) if (target instanceof PlayerInventory)
{ {
final Player targetPlayer = ((PlayerInventory) target).getOwner(); final Player targetPlayer = ((PlayerInventory) target).getOwner();
if (!Config.FORCE_INVENTORY_UPDATE) final InventoryUpdate targetIU = new InventoryUpdate();
{
final InventoryUpdate playerIU = new InventoryUpdate();
if (newItem.getCount() > count) if (newItem.getCount() > count)
{ {
playerIU.addModifiedItem(newItem); targetIU.addModifiedItem(newItem);
} }
else else
{ {
playerIU.addNewItem(newItem); targetIU.addNewItem(newItem);
}
targetPlayer.sendPacket(playerIU);
}
else
{
targetPlayer.sendItemList();
} }
targetPlayer.sendPacket(targetIU);
} }
return newItem; return newItem;
} }
@ -3773,16 +3711,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(droppedItem); playerIU.addItem(droppedItem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)
@ -3847,16 +3778,9 @@ public class Player extends Playable
} }
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(invitem); playerIU.addItem(invitem);
sendInventoryUpdate(playerIU); sendInventoryUpdate(playerIU);
}
else
{
sendItemList();
}
// Sends message to client if requested // Sends message to client if requested
if (sendMessage) if (sendMessage)

View File

@ -421,16 +421,9 @@ public class PlayerInventory extends Inventory
if (actor != null) if (actor != null)
{ {
// Send inventory update packet // Send inventory update packet
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
playerIU.addItem(addedItem); playerIU.addItem(addedItem);
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
}
else
{
actor.sendItemList();
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, addedItem), actor, addedItem.getTemplate());
@ -486,8 +479,6 @@ public class PlayerInventory extends Inventory
{ {
// Send inventory update packet // Send inventory update packet
if (update) if (update)
{
if (!Config.FORCE_INVENTORY_UPDATE)
{ {
final InventoryUpdate playerIU = new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
if (item.isStackable() && (item.getCount() > count)) if (item.isStackable() && (item.getCount() > count))
@ -500,11 +491,6 @@ public class PlayerInventory extends Inventory
} }
actor.sendInventoryUpdate(playerIU); actor.sendInventoryUpdate(playerIU);
} }
else
{
actor.sendItemList();
}
}
// Notify to scripts // Notify to scripts
EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate()); EventDispatcher.getInstance().notifyEventAsync(new OnPlayerItemAdd(actor, item), actor, item.getTemplate());
@ -1139,17 +1125,10 @@ public class PlayerInventory extends Inventory
} }
} }
finally finally
{
if (Config.FORCE_INVENTORY_UPDATE)
{
_owner.sendItemList();
}
else
{ {
_owner.sendInventoryUpdate(iu); _owner.sendInventoryUpdate(iu);
} }
} }
}
/** /**
* Reduces item count in the stack, destroys item when count reaches 0. * Reduces item count in the stack, destroys item when count reaches 0.

View File

@ -161,7 +161,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
} }
// Proceed to the transfer // Proceed to the transfer
final InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate(); final InventoryUpdate playerIU = new InventoryUpdate();
for (Item item : attachments.getItems()) for (Item item : attachments.getItems())
{ {
if (item == null) if (item == null)
@ -176,8 +176,6 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
return; return;
} }
if (playerIU != null)
{
if (newItem.isStackable() && (newItem.getCount() > count)) if (newItem.isStackable() && (newItem.getCount() > count))
{ {
playerIU.addModifiedItem(newItem); playerIU.addModifiedItem(newItem);
@ -186,7 +184,7 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
{ {
playerIU.addNewItem(newItem); playerIU.addNewItem(newItem);
} }
}
final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1); final SystemMessage sm = new SystemMessage(SystemMessageId.YOU_HAVE_ACQUIRED_S2_S1);
sm.addItemName(item.getId()); sm.addItemName(item.getId());
sm.addLong(count); sm.addLong(count);
@ -196,10 +194,8 @@ public class RequestCancelPostAttachment implements IClientIncomingPacket
msg.removeAttachments(); msg.removeAttachments();
// Send updated item list to the player // Send updated item list to the player
if (playerIU != null)
{
player.sendInventoryUpdate(playerIU); player.sendInventoryUpdate(playerIU);
}
// Send full list to avoid duplicates. // Send full list to avoid duplicates.
player.sendItemList(); player.sendItemList();

View File

@ -207,8 +207,6 @@ public class RequestDestroyItem implements IClientIncomingPacket
return; return;
} }
if (!Config.FORCE_INVENTORY_UPDATE)
{
final InventoryUpdate iu = new InventoryUpdate(); final InventoryUpdate iu = new InventoryUpdate();
if (removedItem.getCount() == 0) if (removedItem.getCount() == 0)
{ {
@ -220,9 +218,4 @@ public class RequestDestroyItem implements IClientIncomingPacket
} }
player.sendInventoryUpdate(iu); player.sendInventoryUpdate(iu);
} }
else
{
player.sendItemList();
}
}
} }

View File

@ -403,7 +403,7 @@ public class RequestEnchantItem implements IClientIncomingPacket
player.sendPacket(sm); player.sendPacket(sm);
} }
if (!Config.FORCE_INVENTORY_UPDATE && (crystals != null)) if (crystals != null)
{ {
iu.addItem(crystals); iu.addItem(crystals);
} }

Some files were not shown because too many files have changed in this diff Show More