diff options
author | Andrei Karas <akaras@inbox.ru> | 2018-01-08 17:21:29 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2018-01-14 18:09:35 +0300 |
commit | 499745c3eb6d79573e627433bd77881bd26afb7c (patch) | |
tree | e90632239ab5eb143b1f6261a588388fe9572fe1 /src/map/packets_struct.h | |
parent | cd9fca48ad3fcb86fe4b4f159c68595859077998 (diff) | |
download | hercules-499745c3eb6d79573e627433bd77881bd26afb7c.tar.gz hercules-499745c3eb6d79573e627433bd77881bd26afb7c.tar.bz2 hercules-499745c3eb6d79573e627433bd77881bd26afb7c.tar.xz hercules-499745c3eb6d79573e627433bd77881bd26afb7c.zip |
Update party member and party info packets.
Also remove extra parts of party info packet.
Diffstat (limited to 'src/map/packets_struct.h')
-rw-r--r-- | src/map/packets_struct.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h index cfeb3a67d..1105bec96 100644 --- a/src/map/packets_struct.h +++ b/src/map/packets_struct.h @@ -338,6 +338,17 @@ enum packet_headers { #if PACKETVER >= 20130821 progressbarunit = 0x09D1, #endif +#if PACKETVER >= 20171207 + partymemberinfo = 0x0ae4, + partyinfo = 0x0ae5, +#elif PACKETVER >= 20170502 +// [4144] probably 0xa43 packet can works on older clients because in client was added in 2015-10-07 + partymemberinfo = 0x0a43, + partyinfo = 0x0a44, +#else + partymemberinfo = 0x01e9, + partyinfo = 0x00fb, +#endif }; #if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute @@ -1507,6 +1518,50 @@ struct ZC_PROGRESS_ACTOR { uint32 time; } __attribute__((packed)); +struct PACKET_ZC_ADD_MEMBER_TO_GROUP { + int16 packetType; + uint32 AID; +#if PACKETVER >= 20171207 + uint32 GID; +#endif + uint32 leader; +// [4144] probably 0xa43 packet can works on older clients because in client was added in 2015-10-07 +#if PACKETVER >= 20170502 + int16 class; + int16 baseLevel; +#endif + int16 x; + int16 y; + uint8 offline; + char partyName[NAME_LENGTH]; + char playerName[NAME_LENGTH]; + char mapName[MAP_NAME_LENGTH_EXT]; + int8 sharePickup; + int8 shareLoot; +} __attribute__((packed)); + +struct PACKET_ZC_GROUP_LIST_SUB { + uint32 AID; +#if PACKETVER >= 20171207 + uint32 GID; +#endif + char playerName[NAME_LENGTH]; + char mapName[MAP_NAME_LENGTH_EXT]; + uint8 leader; + uint8 offline; +#if PACKETVER >= 20170502 + int16 class; + int16 baseLevel; +#endif +} __attribute__((packed)); + +struct PACKET_ZC_GROUP_LIST { + int16 packetType; + int16 packetLen; + char partyName[NAME_LENGTH]; + struct PACKET_ZC_GROUP_LIST_SUB members[]; +} __attribute__((packed)); + #if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute #pragma pack(pop) #endif // not NetBSD < 6 / Solaris |