Main object for the aegis packet: ZC_INVENTORY_ITEMLIST_EQUIP_V6.
More...
#include <TransmittedPackets.hpp>
Main object for the aegis packet: ZC_INVENTORY_ITEMLIST_EQUIP_V6.
◆ ZC_INVENTORY_ITEMLIST_EQUIP_V6()
Horizon::Zone::ZC_INVENTORY_ITEMLIST_EQUIP_V6::ZC_INVENTORY_ITEMLIST_EQUIP_V6 |
( |
std::shared_ptr< ZoneSession > |
s | ) |
|
|
inline |
28234 {}
@ ID_ZC_INVENTORY_ITEMLIST_EQUIP_V6
Definition: TransmittedPackets.hpp:28209
◆ ~ZC_INVENTORY_ITEMLIST_EQUIP_V6()
virtual Horizon::Zone::ZC_INVENTORY_ITEMLIST_EQUIP_V6::~ZC_INVENTORY_ITEMLIST_EQUIP_V6 |
( |
| ) |
|
|
inlinevirtual |
◆ deliver()
void ZC_INVENTORY_ITEMLIST_EQUIP_V6::deliver |
( |
std::vector< std::shared_ptr< const item_entry_data > > const & |
items | ) |
|
ZC_INVENTORY_ITEMLIST_EQUIP_V6.
5548{
5550#if (CLIENT_TYPE == 'R' && PACKET_VERSION >= 20180912) || \
5551 (CLIENT_TYPE == 'Z' && PACKET_VERSION >= 20180919) || \
5552 (CLIENT_TYPE == 'M' && PACKET_VERSION >= 20181002)
5555#else
5557#endif
5560}
@ INVTYPE_INVENTORY
Definition: ClientDefinitions.hpp:906
void transmit()
Send an Asynchronous packet by queueing a buffer of a particular size to the connected session.
Definition: NetworkPacket.hpp:94
int8_t _inventory_type
Definition: TransmittedPackets.hpp:28245
int16_t _packet_length
Definition: TransmittedPackets.hpp:28241
std::vector< std::shared_ptr< const item_entry_data > > _items
Definition: TransmittedPackets.hpp:28247
ByteBuffer & serialize()
Definition: TransmittedPackets.cpp:5562
References _inventory_type, _items, _packet_length, INVTYPE_INVENTORY, serialize(), and Horizon::Base::NetworkPacket< ZoneSession >::transmit().
◆ serialize()
ByteBuffer & ZC_INVENTORY_ITEMLIST_EQUIP_V6::serialize |
( |
| ) |
|
5563{
5566#if (CLIENT_TYPE == 'R' && PACKET_VERSION >= 20180912) || \
5567 (CLIENT_TYPE == 'Z' && PACKET_VERSION >= 20180919) || \
5568 (CLIENT_TYPE == 'M' && PACKET_VERSION >= 20181002)
5570#endif
5571
5572 for (
auto it =
_items.begin(); it !=
_items.end(); it++) {
5573 std::shared_ptr<const item_entry_data> id = *it;
5574 uint8_t config = 0;
5575 buf() <<
id->index.inventory;
5576 buf() <<
id->item_id;
5577 buf() << (int8_t) id->type;
5578 buf() <<
id->actual_equip_location_mask;
5579 buf() <<
id->current_equip_location_mask;
5580 buf() <<
id->refine_level;
5582 buf() <<
id->slot_item_id[i];
5583 buf() <<
id->hire_expire_date;
5584 buf() <<
id->bind_type;
5585 buf() <<
id->sprite_id;
5586
5587 buf() <<
id->option_count;
5588
5590 buf() <<
id->option_data[i].index;
5591 buf() <<
id->option_data[i].value;
5592 buf() <<
id->option_data[i].param;
5593 }
5594
5595 config |= id->info.is_identified;
5596 config |= id->info.is_broken << 1;
5597 config |= id->info.is_favorite << 2;
5598
5600 }
5601
5603}
#define MAX_ITEM_SLOTS
Definition: ItemDefinitions.hpp:42
#define MAX_ITEM_OPTIONS
Definition: ItemDefinitions.hpp:41
uint16_t _packet_id
ID of the network packet.
Definition: NetworkPacket.hpp:87
ByteBuffer & buf()
Definition: NetworkPacket.hpp:59
References _inventory_type, _items, Horizon::Base::NetworkPacket< ZoneSession >::_packet_id, _packet_length, Horizon::Base::NetworkPacket< ZoneSession >::buf(), MAX_ITEM_OPTIONS, and MAX_ITEM_SLOTS.
Referenced by deliver().
◆ _inventory_type
int8_t Horizon::Zone::ZC_INVENTORY_ITEMLIST_EQUIP_V6::_inventory_type { 0 } |
◆ _items
std::vector<std::shared_ptr<const item_entry_data> > Horizon::Zone::ZC_INVENTORY_ITEMLIST_EQUIP_V6::_items |
◆ _packet_length
int16_t Horizon::Zone::ZC_INVENTORY_ITEMLIST_EQUIP_V6::_packet_length { 0 } |
The documentation for this class was generated from the following files: