Horizon Official Technical Documentation
Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7 Class Reference

Main object for the aegis packet: ZC_ITEM_PICKUP_ACK_V7. More...

#include <TransmittedPackets.hpp>

+ Inheritance diagram for Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7:
+ Collaboration diagram for Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7:

Public Member Functions

 ZC_ITEM_PICKUP_ACK_V7 (std::shared_ptr< ZoneSession > s)
 
virtual ~ZC_ITEM_PICKUP_ACK_V7 ()
 
void deliver (struct item_entry_data id, int16_t amount, item_inventory_addition_notif_type result)
 ZC_ITEM_PICKUP_ACK_V7. More...
 
ByteBufferserialize ()
 
- Public Member Functions inherited from Horizon::Base::NetworkPacket< ZoneSession >
 NetworkPacket (uint16_t packet_id, std::shared_ptr< ZoneSession > s)
 
virtual ~NetworkPacket ()
 
void set_packet_id (uint16_t id)
 
uint16_t get_packet_id ()
 
ByteBufferbuf ()
 
std::shared_ptr< ZoneSession > get_session ()
 Retrieves the session from this handler instance. More...
 
virtual void handle (ByteBuffer &&buf)
 
virtual void deserialize (ByteBuffer &buf)
 
void transmit ()
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 
void transmit (std::size_t size)
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 

Public Attributes

struct item_entry_data _id
 
int16_t _amount
 
item_inventory_addition_notif_type _result
 

Additional Inherited Members

- Protected Attributes inherited from Horizon::Base::NetworkPacket< ZoneSession >
ByteBuffer _buffer
 Buffer storage facility for the packet stream. More...
 
uint16_t _packet_id
 ID of the network packet. More...
 

Detailed Description

Main object for the aegis packet: ZC_ITEM_PICKUP_ACK_V7.

Constructor & Destructor Documentation

◆ ZC_ITEM_PICKUP_ACK_V7()

Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7::ZC_ITEM_PICKUP_ACK_V7 ( std::shared_ptr< ZoneSession s)
inline
29237 : NetworkPacket<ZoneSession>(ID_ZC_ITEM_PICKUP_ACK_V7, s)
29238 {}
@ ID_ZC_ITEM_PICKUP_ACK_V7
Definition: TransmittedPackets.hpp:29213

◆ ~ZC_ITEM_PICKUP_ACK_V7()

virtual Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7::~ZC_ITEM_PICKUP_ACK_V7 ( )
inlinevirtual
29239{}

Member Function Documentation

◆ deliver()

void ZC_ITEM_PICKUP_ACK_V7::deliver ( struct item_entry_data  id,
int16_t  amount,
item_inventory_addition_notif_type  result 
)

ZC_ITEM_PICKUP_ACK_V7.

6205{
6206 _id = id;
6207 _amount = amount;
6208 _result = result;
6209
6210 serialize();
6211 transmit();
6212}
void transmit()
Send an Asynchronous packet by queueing a buffer of a particular size to the connected session.
Definition: NetworkPacket.hpp:94
ByteBuffer & serialize()
Definition: TransmittedPackets.cpp:6214
struct item_entry_data _id
Definition: TransmittedPackets.hpp:29245
int16_t _amount
Definition: TransmittedPackets.hpp:29246
item_inventory_addition_notif_type _result
Definition: TransmittedPackets.hpp:29247

References _amount, _id, _result, serialize(), and Horizon::Base::NetworkPacket< ZoneSession >::transmit().

Referenced by Horizon::Zone::ZoneClientInterface::notify_pickup_item().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ serialize()

ByteBuffer & ZC_ITEM_PICKUP_ACK_V7::serialize ( )
6215{
6216 buf() << _packet_id;
6217 buf() << _id.index.inventory;
6218 buf() << _amount;
6219 buf() << _id.item_id;
6220 buf() << (int8_t) (_id.info.is_identified ? 1 : 0);
6221 buf() << (int8_t) (_id.info.is_broken ? 1 : 0 );
6222 buf() << _id.refine_level;
6223
6224 for (int i = 0; i < MAX_ITEM_SLOTS; i++)
6225 buf() << _id.slot_item_id[i];
6226
6228 buf() << (int8_t) _id.type;
6229 buf() << (int8_t) _result;
6231 buf() << (int16_t) _id.bind_type;
6232
6233 for (int i = 0; i < MAX_ITEM_OPTIONS; i++) {
6234 buf() << _id.option_data[i].index;
6235 buf() << _id.option_data[i].value;
6236 buf() << _id.option_data[i].param;
6237 }
6238
6239 buf() << (int8_t) (_id.info.is_favorite ? 1 : 0);
6240 buf() << _id.sprite_id;
6241 return buf();
6242}
#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
unsigned is_favorite
Definition: ItemDefinitions.hpp:568
unsigned is_broken
Definition: ItemDefinitions.hpp:567
unsigned is_identified
Definition: ItemDefinitions.hpp:566
int16_t index
Definition: ItemDefinitions.hpp:560
int16_t value
Definition: ItemDefinitions.hpp:561
uint8_t param
Definition: ItemDefinitions.hpp:562
uint32_t actual_equip_location_mask
Definition: ItemDefinitions.hpp:539
uint16_t sprite_id
Definition: ItemDefinitions.hpp:549
struct item_entry_data::options option_data[MAX_ITEM_OPTIONS]
item_bind_type bind_type
Definition: ItemDefinitions.hpp:571
uint16_t inventory
Definition: ItemDefinitions.hpp:524
uint32_t slot_item_id[MAX_ITEM_SLOTS]
Definition: ItemDefinitions.hpp:544
item_type type
Definition: ItemDefinitions.hpp:536
uint32_t item_id
Definition: ItemDefinitions.hpp:532
union item_entry_data::@131 index
uint32_t hire_expire_date
Definition: ItemDefinitions.hpp:548
uint8_t refine_level
Definition: ItemDefinitions.hpp:540
struct item_entry_data::item_entry_info info

References _amount, _id, Horizon::Base::NetworkPacket< ZoneSession >::_packet_id, _result, item_entry_data::actual_equip_location_mask, item_entry_data::bind_type, Horizon::Base::NetworkPacket< ZoneSession >::buf(), item_entry_data::hire_expire_date, item_entry_data::index, item_entry_data::options::index, item_entry_data::info, item_entry_data::inventory, item_entry_data::item_entry_info::is_broken, item_entry_data::item_entry_info::is_favorite, item_entry_data::item_entry_info::is_identified, item_entry_data::item_id, MAX_ITEM_OPTIONS, MAX_ITEM_SLOTS, item_entry_data::option_data, item_entry_data::options::param, item_entry_data::refine_level, item_entry_data::slot_item_id, item_entry_data::sprite_id, item_entry_data::type, and item_entry_data::options::value.

Referenced by deliver().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ _amount

int16_t Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7::_amount

Referenced by deliver(), and serialize().

◆ _id

struct item_entry_data Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7::_id

Referenced by deliver(), and serialize().

◆ _result

item_inventory_addition_notif_type Horizon::Zone::ZC_ITEM_PICKUP_ACK_V7::_result

Referenced by deliver(), and serialize().


The documentation for this class was generated from the following files: