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

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

#include <TransmittedPackets.hpp>

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

Public Member Functions

 ZC_ACK_ADD_ITEM_RODEX (std::shared_ptr< ZoneSession > s)
 
virtual ~ZC_ACK_ADD_ITEM_RODEX ()
 
void deliver (s_zc_ack_add_item_rodex info)
 ZC_ACK_ADD_ITEM_RODEX. 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

s_zc_ack_add_item_rodex _info
 

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_ACK_ADD_ITEM_RODEX.

Constructor & Destructor Documentation

◆ ZC_ACK_ADD_ITEM_RODEX()

Horizon::Zone::ZC_ACK_ADD_ITEM_RODEX::ZC_ACK_ADD_ITEM_RODEX ( std::shared_ptr< ZoneSession s)
inline
14823 : NetworkPacket<ZoneSession>(ID_ZC_ACK_ADD_ITEM_RODEX, s)
14824 {}
@ ID_ZC_ACK_ADD_ITEM_RODEX
Definition: TransmittedPackets.hpp:14790

◆ ~ZC_ACK_ADD_ITEM_RODEX()

virtual Horizon::Zone::ZC_ACK_ADD_ITEM_RODEX::~ZC_ACK_ADD_ITEM_RODEX ( )
inlinevirtual
14825{}

Member Function Documentation

◆ deliver()

void ZC_ACK_ADD_ITEM_RODEX::deliver ( s_zc_ack_add_item_rodex  info)

ZC_ACK_ADD_ITEM_RODEX.

6165{
6166 _info = info;
6167 serialize();
6168 transmit();
6169}
void transmit()
Send an Asynchronous packet by queueing a buffer of a particular size to the connected session.
Definition: NetworkPacket.hpp:94
s_zc_ack_add_item_rodex _info
Definition: TransmittedPackets.hpp:14831
ByteBuffer & serialize()
Definition: TransmittedPackets.cpp:6170

References _info, serialize(), and Horizon::Base::NetworkPacket< ZoneSession >::transmit().

Referenced by Horizon::Zone::UI::RODEx::notify_add_item().

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

◆ serialize()

ByteBuffer & ZC_ACK_ADD_ITEM_RODEX::serialize ( )
6171{
6172 buf() << _packet_id;
6173 buf() << _info.result;
6174 buf() << _info.index;
6175 buf() << _info.count;
6176 buf() << _info.item_id;
6177 buf() << _info.type;
6178 buf() << _info.is_identified;
6179 buf() << _info.is_damaged;
6181 for (int i = 0; i < MAX_ITEM_SLOTS; i++)
6182 buf() << _info.slot.item_id[i];
6183 for (int i = 0; i < MAX_ITEM_OPTIONS; i++) {
6184 buf() << _info.option_data[i].index;
6185 buf() << _info.option_data[i].value;
6186 buf() << _info.option_data[i].param;
6187 }
6188 buf() << _info.weight;
6189 buf() << _info.is_favorite;
6190 buf() << _info.location;
6191 return buf();
6192}
#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
uint32 item_id[MAX_ITEM_SLOTS]
Definition: ItemDefinitions.hpp:584
int8_t is_identified
Definition: ClientDefinitions.hpp:768
int16_t weight
Definition: ClientDefinitions.hpp:777
int16_t param
Definition: ClientDefinitions.hpp:775
int16_t index
Definition: ClientDefinitions.hpp:758
struct s_zc_ack_add_item_rodex::@124 option_data[MAX_ITEM_OPTIONS]
item_slot slot
Definition: ClientDefinitions.hpp:771
int16_t count
Definition: ClientDefinitions.hpp:759
int8_t refining_level
Definition: ClientDefinitions.hpp:770
int16_t value
Definition: ClientDefinitions.hpp:774
uint32_t location
Definition: ClientDefinitions.hpp:779
int8_t is_damaged
Definition: ClientDefinitions.hpp:769
uint32_t item_id
Definition: ClientDefinitions.hpp:763
int8_t type
Definition: ClientDefinitions.hpp:767
int8_t result
Definition: ClientDefinitions.hpp:757
uint8_t is_favorite
Definition: ClientDefinitions.hpp:778

References _info, Horizon::Base::NetworkPacket< ZoneSession >::_packet_id, Horizon::Base::NetworkPacket< ZoneSession >::buf(), s_zc_ack_add_item_rodex::count, s_zc_ack_add_item_rodex::index, s_zc_ack_add_item_rodex::is_damaged, s_zc_ack_add_item_rodex::is_favorite, s_zc_ack_add_item_rodex::is_identified, s_zc_ack_add_item_rodex::item_id, item_slot::item_id, s_zc_ack_add_item_rodex::location, MAX_ITEM_OPTIONS, MAX_ITEM_SLOTS, s_zc_ack_add_item_rodex::option_data, s_zc_ack_add_item_rodex::param, s_zc_ack_add_item_rodex::refining_level, s_zc_ack_add_item_rodex::result, s_zc_ack_add_item_rodex::slot, s_zc_ack_add_item_rodex::type, s_zc_ack_add_item_rodex::value, and s_zc_ack_add_item_rodex::weight.

Referenced by deliver().

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

Member Data Documentation

◆ _info

s_zc_ack_add_item_rodex Horizon::Zone::ZC_ACK_ADD_ITEM_RODEX::_info

Referenced by deliver(), and serialize().


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