mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-16 18:52:22 +00:00
Exploit abatement for item duplication involving augments
This commit is contained in:
@@ -2933,6 +2933,19 @@ void Client::Handle_OP_AugmentItem(const EQApplicationPacket *app)
|
||||
bool deleteItems = false;
|
||||
if (ClientVersion() >= EQEmu::versions::ClientVersion::RoF)
|
||||
{
|
||||
if ((in_augment->container_slot < 0 || in_augment->container_slot >= EQEmu::legacy::SLOT_CURSOR) &&
|
||||
in_augment->container_slot != EQEmu::legacy::SLOT_POWER_SOURCE &&
|
||||
(in_augment->container_slot < EQEmu::legacy::SLOT_PERSONAL_BAGS_BEGIN || in_augment->container_slot > EQEmu::legacy::SLOT_PERSONAL_BAGS_END))
|
||||
{
|
||||
Message(13, "The server does not allow augmentation actions from this slot.");
|
||||
auto cursor_item = m_inv[EQEmu::legacy::SLOT_CURSOR];
|
||||
auto augmented_item = m_inv[in_augment->container_slot];
|
||||
SendItemPacket(EQEmu::legacy::SLOT_CURSOR, cursor_item, ItemPacketCharInventory);
|
||||
// this may crash clients on certain slots
|
||||
SendItemPacket(in_augment->container_slot, augmented_item, ItemPacketCharInventory);
|
||||
return;
|
||||
}
|
||||
|
||||
EQEmu::ItemInstance *itemOneToPush = nullptr, *itemTwoToPush = nullptr;
|
||||
|
||||
//Log.Out(Logs::DebugLevel::Moderate, Logs::Debug, "cslot: %i aslot: %i cidx: %i aidx: %i act: %i dest: %i",
|
||||
|
||||
Reference in New Issue
Block a user