diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-10-07 01:07:41 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-10-07 01:07:41 +0300 |
commit | 74136eec9795d339421a569b774dd8486662e93e (patch) | |
tree | 7a0aa16a1dc3a9fa7d5525fa8516dba61099e685 | |
parent | b79975c115473e801fb7983bc3f5c24ae72f3db7 (diff) | |
download | mv-74136eec9795d339421a569b774dd8486662e93e.tar.gz mv-74136eec9795d339421a569b774dd8486662e93e.tar.bz2 mv-74136eec9795d339421a569b774dd8486662e93e.tar.xz mv-74136eec9795d339421a569b774dd8486662e93e.zip |
eathena: fix packet SMSG_GUILD_MEMBER_LOGIN 0x01f2.
-rw-r--r-- | src/net/eathena/guildhandler.cpp | 6 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/net/eathena/guildhandler.cpp b/src/net/eathena/guildhandler.cpp index 3d6fb2d19..51ff00cce 100644 --- a/src/net/eathena/guildhandler.cpp +++ b/src/net/eathena/guildhandler.cpp @@ -394,12 +394,18 @@ void GuildHandler::processGuildMemberLogin(Net::MessageIn &msg) const const int accountId = msg.readInt32("account id"); const int charId = msg.readInt32("char id"); const int online = msg.readInt32("flag"); + const Gender::Type gender = Being::intToGender(static_cast<uint8_t>( + msg.readInt16("sex"))); + msg.readInt16("hair"); + msg.readInt16("hair color"); if (Ea::taGuild) { GuildMember *const m = Ea::taGuild->getMember(accountId, charId); if (m) { m->setOnline(online); + if (online) + m->setGender(gender); if (Ea::guildTab) Ea::guildTab->showOnline(m->getName(), online); if (socialWindow) diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 77e963fdb..db6a7d1eb 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -190,7 +190,7 @@ #define SMSG_GUILD_CREATE_RESPONSE 0x0167 #define SMSG_GUILD_POSITION_INFO 0x016c -#define SMSG_GUILD_MEMBER_LOGIN 0x016d +#define SMSG_GUILD_MEMBER_LOGIN 0x01f2 #define SMSG_GUILD_MASTER_OR_MEMBER 0x014e #define SMSG_GUILD_BASIC_INFO 0x01b6 #define SMSG_GUILD_ALIANCE_INFO 0x014c |