From 9622ba7229954d0eaedd13636150a33cb91ac15e Mon Sep 17 00:00:00 2001 From: Skyliegirl33 <44952533+Skyliegirl33@users.noreply.github.com> Date: Thu, 16 Sep 2021 19:00:52 +0000 Subject: [PATCH] Update PacketHandlers.cpp --- src/world/Network/Handlers/PacketHandlers.cpp | 118 ------------------ 1 file changed, 118 deletions(-) diff --git a/src/world/Network/Handlers/PacketHandlers.cpp b/src/world/Network/Handlers/PacketHandlers.cpp index 240eb57c..385e90c8 100644 --- a/src/world/Network/Handlers/PacketHandlers.cpp +++ b/src/world/Network/Handlers/PacketHandlers.cpp @@ -931,121 +931,3 @@ void Sapphire::Network::GameConnection::diveHandler( const Packets::FFXIVARR_PAC setPos->data().unknown1 = 0; player.queuePacket( setPos ); // need delay, same as above. } - -// Also used for gearsets -void Sapphire::Network::GameConnection::inventoryEquipRecommendedItemsHandler( const Packets::FFXIVARR_PACKET_RAW& inPacket, Entity::Player& player ) -{ - const auto packet = ZoneChannelPacket< Client::FFXIVInventoryEquipRecommendedItemsHandler >( inPacket ); - const auto sequence = player.getNextInventorySequence(); - - // Loop over all swapped pieces - for (int slot = 0; slot < 14; slot++ ) - { - const auto fromSlot = packet.data().containerIndex[ slot ]; - const auto fromContainer = packet.data().storageId[ slot ]; - - player.sendDebug( "Container: {} ", fromContainer ); - player.sendDebug( "Slot: {} ", fromSlot ); - - const auto fromItem = fromSlot == -1 ? nullptr : player.getItemAt( fromContainer, fromSlot ); - const auto equippedItem = player.getItemAt( Common::GearSet0, slot ); - - if ( fromItem ) - { - auto slotUpdate = std::make_shared< UpdateInventorySlotPacket >( player.getId(), fromSlot, fromContainer, *fromItem, slot ); - player.queuePacket( slotUpdate ); - } - - if ( equippedItem ) - { - auto slotUpdate2 = std::make_shared< UpdateInventorySlotPacket >( player.getId(), slot, Common::GearSet0, *equippedItem, slot + 1 ); - player.queuePacket( slotUpdate2 ); - - //player.updateModels( static_cast< Common::GearSetSlot >( slot ), equippedItem, true ); - } - } - - // Loop over all the changed items - for (int slot = 0; slot < 14; slot++ ) - { - const auto fromSlot = packet.data().containerIndex[ slot ]; - const auto fromContainer = packet.data().storageId[ slot ]; - - if ( fromContainer == Common::GearSet0 ) - continue; - - const auto fromItem = fromSlot == -1 ? nullptr : player.getItemAt( fromContainer, fromSlot ); - const auto equippedItem = player.getItemAt( Common::GearSet0, slot ); - - if ( fromItem && equippedItem ) - { - auto invTransPacket = makeZonePacket< Server::FFXIVIpcInventoryTransaction >( player.getId() ); - invTransPacket->data().sequence = sequence; - invTransPacket->data().ownerId = player.getId(); - invTransPacket->data().storageId = Common::GearSet0; - invTransPacket->data().catalogId = fromItem->getId(); - invTransPacket->data().stackSize = fromItem->getStackSize(); - invTransPacket->data().slotId = slot; - invTransPacket->data().type = Common::InventoryOperation::Swap; - player.queuePacket( invTransPacket ); - - player.swapItem( fromContainer, fromSlot, Common::GearSet0, slot ); - - //player.updateGearContainer( slot, fromItem ); - //player.updateContainer( fromContainer, fromSlot, equippedItem ); - } - else if ( fromItem && !equippedItem ) - { - auto invTransPacket = makeZonePacket< Server::FFXIVIpcInventoryTransaction >( player.getId() ); - invTransPacket->data().sequence = sequence; - invTransPacket->data().ownerId = player.getId(); - invTransPacket->data().storageId = Common::GearSet0; - invTransPacket->data().catalogId = fromItem->getId(); - invTransPacket->data().stackSize = fromItem->getStackSize(); - invTransPacket->data().slotId = slot; - invTransPacket->data().type = Common::InventoryOperation::Move; - player.queuePacket( invTransPacket ); - - player.moveItem( fromContainer, fromSlot, Common::GearSet0, slot, false ); - } - else if ( !fromItem && equippedItem ) - { - player.equipItem( static_cast< Common::GearSetSlot >( slot ), equippedItem, false ); - } - } - - // Transaction finished - auto ackPacket = makeZonePacket< Server::FFXIVIpcInventoryTransactionFinish >( player.getId() ); - ackPacket->data().sequenceId = sequence; - ackPacket->data().sequenceId1 = sequence; - ackPacket->data().padding = 3298534884017; - - // Send the gear inventory - player.sendGearInventory(); - - // Send the player stats - player.sendStats(); - - // Send the player model - player.sendModel(); - - // Send status effect update - auto effectListPacket = makeZonePacket< Server::FFXIVIpcStatusEffectList >( player.getId() ); - effectListPacket->data().classId = static_cast< uint8_t > ( player.getClass() ); - effectListPacket->data().level1 = player.getLevel(); - effectListPacket->data().level = player.getLevel(); - effectListPacket->data().current_hp = player.getMaxHp(); - effectListPacket->data().current_mp = player.getMaxMp(); - effectListPacket->data().max_hp = player.getMaxHp(); - effectListPacket->data().max_mp = player.getMaxMp(); - player.sendToInRangeSet( effectListPacket, true ); - - // Send class info - auto classInfoPacket = makeZonePacket< FFXIVIpcUpdateClassInfo >( player.getId() ); - classInfoPacket->data().classId = static_cast< uint8_t > ( player.getClass() ); - classInfoPacket->data().level1 = player.getLevel(); - classInfoPacket->data().level = player.getLevel(); - classInfoPacket->data().nextLevelIndex = player.getLevel(); - classInfoPacket->data().currentExp = player.getExp(); - player.queuePacket( classInfoPacket ); -} \ No newline at end of file