summaryrefslogtreecommitdiff
path: root/src/net/eathena/guildrecv.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/eathena/guildrecv.cpp')
-rw-r--r--src/net/eathena/guildrecv.cpp48
1 files changed, 35 insertions, 13 deletions
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");
}
}