summaryrefslogtreecommitdiff
path: root/src/net/eathena/guildrecv.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2018-09-25 22:14:49 +0300
committerAndrei Karas <akaras@inbox.ru>2018-09-25 22:14:49 +0300
commit9c7134fb1991509f9795fb8cd8eec4cf818a93fc (patch)
tree0667306b2a2a22c8519ceac568828af92a1a2f3f /src/net/eathena/guildrecv.cpp
parent9793b9e60f2ca5a163fce8e284d20c36c74ea094 (diff)
downloadplus-9c7134fb1991509f9795fb8cd8eec4cf818a93fc.tar.gz
plus-9c7134fb1991509f9795fb8cd8eec4cf818a93fc.tar.bz2
plus-9c7134fb1991509f9795fb8cd8eec4cf818a93fc.tar.xz
plus-9c7134fb1991509f9795fb8cd8eec4cf818a93fc.zip
Add packet SMSG_GUILD_SET_POSITION 0x0afd.
Diffstat (limited to 'src/net/eathena/guildrecv.cpp')
-rw-r--r--src/net/eathena/guildrecv.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/net/eathena/guildrecv.cpp b/src/net/eathena/guildrecv.cpp
index 574090c8f..b5450e1aa 100644
--- a/src/net/eathena/guildrecv.cpp
+++ b/src/net/eathena/guildrecv.cpp
@@ -802,4 +802,21 @@ void GuildRecv::processOnlineInfo(Net::MessageIn &msg)
msg.readInt32("online");
}
+void GuildRecv::processGuildSetPosition(Net::MessageIn &msg)
+{
+ const int positionLen = msg.readInt16("len") - 8;
+ const BeingId beingId = msg.readBeingId("being id");
+ std::string position;
+ if (positionLen > 0)
+ {
+ position = msg.readString(positionLen, "position");
+ }
+ Being *const dstBeing = actorManager->findBeing(beingId);
+ if (dstBeing != nullptr)
+ {
+ dstBeing->setGuildPos(position);
+ dstBeing->addToCache();
+ }
+}
+
} // namespace EAthena