diff --git a/src/map/clif.cpp b/src/map/clif.cpp index 72d212a3b6..647fc9d84b 100644 --- a/src/map/clif.cpp +++ b/src/map/clif.cpp @@ -25193,6 +25193,12 @@ void clif_parse_partybooking_reply( int fd, map_session_data* sd ){ #endif } +void clif_parse_reset_skill( int fd, map_session_data* sd ){ +#if PACKETVER_MAIN_NUM >= 20220216 || PACKETVER_ZERO_NUM >= 20220203 + PACKET_CZ_RESET_SKILL* p = (PACKET_CZ_RESET_SKILL*)RFIFOP( fd, 0 ); +#endif +} + /*========================================== * Main client packet processing function *------------------------------------------*/ diff --git a/src/map/clif_packetdb.hpp b/src/map/clif_packetdb.hpp index e0fa302e7d..ccd1434893 100644 --- a/src/map/clif_packetdb.hpp +++ b/src/map/clif_packetdb.hpp @@ -2454,4 +2454,8 @@ parseable_packet( HEADER_CZ_USE_PACKAGEITEM, sizeof( struct PACKET_CZ_USE_PACKAGEITEM ), clif_parse_itempackage_select, 0 ); #endif +#if PACKETVER_MAIN_NUM >= 20220216 || PACKETVER_ZERO_NUM >= 20220203 + parseable_packet( HEADER_CZ_RESET_SKILL, sizeof( struct PACKET_CZ_RESET_SKILL ), clif_parse_reset_skill, 0 ); +#endif + #endif /* CLIF_PACKETDB_HPP */ diff --git a/src/map/packets.hpp b/src/map/packets.hpp index 37d7eac521..7f1e8482e3 100644 --- a/src/map/packets.hpp +++ b/src/map/packets.hpp @@ -398,6 +398,11 @@ struct PACKET_CZ_REQ_MERGE_ITEM{ uint16 indices[]; } __attribute__((packed)); +struct PACKET_CZ_RESET_SKILL{ + int16 packetType; + uint8 unknown; +} __attribute__((packed)); + // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute #if !defined( sun ) && ( !defined( __NETBSD__ ) || __NetBSD_Version__ >= 600000000 ) #pragma pack( pop ) @@ -469,6 +474,7 @@ DEFINE_PACKET_HEADER(ZC_SUMMON_HP_INIT, 0xb6b) DEFINE_PACKET_HEADER(ZC_SUMMON_HP_UPDATE, 0xb6c) DEFINE_PACKET_HEADER(ZC_REPUTE_INFO, 0x0b8d) DEFINE_PACKET_HEADER(ZC_UI_OPEN_V3, 0x0b9a) +DEFINE_PACKET_HEADER(CZ_RESET_SKILL, 0x0bb1) DEFINE_PACKET_HEADER(CZ_PC_SELL_ITEMLIST, 0x00c9) const int16 MAX_INVENTORY_ITEM_PACKET_NORMAL = ( ( INT16_MAX - ( sizeof( struct packet_itemlist_normal ) - ( sizeof( struct NORMALITEM_INFO ) * MAX_ITEMLIST) ) ) / sizeof( struct NORMALITEM_INFO ) );