From e16a985a0bc0d5ffc9377b7ef9da7cf838a63127 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 14 May 2019 01:43:51 +0300 Subject: Add packet SMSG_GUILD_EXPULSION_LIST 0x0a87 --- src/net/eathena/guildrecv.cpp | 48 +++++++++++++++++++++++++++++++------------ 1 file changed, 35 insertions(+), 13 deletions(-) (limited to 'src/net/eathena/guildrecv.cpp') diff --git a/src/net/eathena/guildrecv.cpp b/src/net/eathena/guildrecv.cpp index e6c7f20c9..37d789312 100644 --- a/src/net/eathena/guildrecv.cpp +++ b/src/net/eathena/guildrecv.cpp @@ -762,27 +762,49 @@ void GuildRecv::processGuildExpulsion2(Net::MessageIn &msg) } } -void GuildRecv::processGuildExpulsionList(Net::MessageIn &msg) +void GuildRecv::processGuildExpulsionList1(Net::MessageIn &msg) { + UNIMPLEMENTEDPACKET; const int length = msg.readInt16("len"); if (length < 4) return; - int count; - if (msg.getVersion() < 20100803) + const int count = (length - 4) / 88; + for (int i = 0; i < count; i++) { - count = (length - 4) / 64; - for (int i = 0; i < count; i++) - { - msg.readString(24, "name"); - msg.readString(40, "message"); - } + msg.readString(24, "char name"); + msg.readString(24, "account name"); + msg.readString(40, "message"); } - else +} + +void GuildRecv::processGuildExpulsionList2(Net::MessageIn &msg) +{ + UNIMPLEMENTEDPACKET; + const int length = msg.readInt16("len"); + if (length < 4) + return; + + const int count = (length - 4) / 64; + for (int i = 0; i < count; i++) + { + msg.readString(24, "name"); + msg.readString(40, "message"); + } +} + +void GuildRecv::processGuildExpulsionList3(Net::MessageIn &msg) +{ + UNIMPLEMENTEDPACKET; + const int length = msg.readInt16("len"); + if (length < 4) + return; + + int count = (length - 4) / 44; + for (int i = 0; i < count; i++) { - count = (length - 4) / 40; - for (int i = 0; i < count; i++) - msg.readString(40, "message"); + msg.readInt32("char id"); + msg.readString(40, "message"); } } -- cgit v1.2.3-60-g2f50