diff options
author | Andrei Karas <akaras@inbox.ru> | 2018-09-25 22:29:49 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2018-09-25 22:29:49 +0300 |
commit | 5370f99a9a17c6813c227655dd2bb3e1d924c2a2 (patch) | |
tree | dace37bec2b1d18fe4a53ea0bf7c41058ed6d28f /src/net/eathena/beingrecv.cpp | |
parent | 9c7134fb1991509f9795fb8cd8eec4cf818a93fc (diff) | |
download | plus-5370f99a9a17c6813c227655dd2bb3e1d924c2a2.tar.gz plus-5370f99a9a17c6813c227655dd2bb3e1d924c2a2.tar.bz2 plus-5370f99a9a17c6813c227655dd2bb3e1d924c2a2.tar.xz plus-5370f99a9a17c6813c227655dd2bb3e1d924c2a2.zip |
Add packet SMSG_PLAYER_GUILD_PARTY_INFO 0x0a30.
Diffstat (limited to 'src/net/eathena/beingrecv.cpp')
-rw-r--r-- | src/net/eathena/beingrecv.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp index c5e0321f2..9a20c8357 100644 --- a/src/net/eathena/beingrecv.cpp +++ b/src/net/eathena/beingrecv.cpp @@ -1651,6 +1651,42 @@ void BeingRecv::processPlayerGuilPartyInfo(Net::MessageIn &msg) BLOCK_END("BeingRecv::processPlayerGuilPartyInfo") } +void BeingRecv::processPlayerGuilPartyInfo2(Net::MessageIn &msg) +{ + BLOCK_START("BeingRecv::processPlayerGuilPartyInfo2") + if (actorManager == nullptr) + { + BLOCK_END("BeingRecv::processPlayerGuilPartyInfo2") + return; + } + + const BeingId beingId = msg.readBeingId("being id"); + const std::string name = msg.readString(24, "char name"); + actorManager->updateNameId(name, beingId); + Being *const dstBeing = actorManager->findBeing(beingId); + if (dstBeing != nullptr) + { + if (beingId == localPlayer->getId()) + { + localPlayer->pingResponse(); + } + dstBeing->setName(name); + dstBeing->setPartyName(msg.readString(24, "party name")); + dstBeing->setGuildName(msg.readString(24, "guild name")); + dstBeing->setGuildPos(msg.readString(24, "guild pos")); + dstBeing->addToCache(); + } + else + { + msg.readString(24, "party name"); + msg.readString(24, "guild name"); + msg.readString(24, "guild pos"); + } + // +++ need use it for show player title + msg.readInt32("title"); + BLOCK_END("BeingRecv::processPlayerGuilPartyInfo2") +} + void BeingRecv::processBeingRemoveSkill(Net::MessageIn &msg) { const BeingId id = msg.readBeingId("skill unit id"); |