summaryrefslogtreecommitdiff
path: root/src/net/eathena/beingrecv.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-11-13 00:43:30 +0300
committerAndrei Karas <akaras@inbox.ru>2015-11-13 00:43:30 +0300
commit50ff01c7d46090e15e6f7fbf1828234dd43cf5fa (patch)
tree630ea30956ac52cc7d9316f28c85d4d37f076124 /src/net/eathena/beingrecv.cpp
parent2300cbef216ff22275854e7fe76752a31a947bdc (diff)
downloadmv-50ff01c7d46090e15e6f7fbf1828234dd43cf5fa.tar.gz
mv-50ff01c7d46090e15e6f7fbf1828234dd43cf5fa.tar.bz2
mv-50ff01c7d46090e15e6f7fbf1828234dd43cf5fa.tar.xz
mv-50ff01c7d46090e15e6f7fbf1828234dd43cf5fa.zip
Impliment packet SMSG_GRAFFITI_VISIBLE.
Diffstat (limited to 'src/net/eathena/beingrecv.cpp')
-rw-r--r--src/net/eathena/beingrecv.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp
index a18af6b11..f80b16c54 100644
--- a/src/net/eathena/beingrecv.cpp
+++ b/src/net/eathena/beingrecv.cpp
@@ -1716,6 +1716,27 @@ void BeingRecv::processSolveCharName(Net::MessageIn &msg)
actorManager->addChar(id, name);
}
+void BeingRecv::processGraffiti(Net::MessageIn &msg)
+{
+ const BeingId id = msg.readBeingId("graffiti id");
+ msg.readBeingId("creator id");
+ const int x = msg.readInt16("x");
+ const int y = msg.readInt16("y");
+ const int job = msg.readUInt8("job");
+ msg.readUInt8("visible");
+ msg.readUInt8("is content");
+ const std::string text = msg.readString(80, "text");
+
+ Being *const dstBeing = createBeing2(msg, id, job, BeingType::SKILL);
+ if (!dstBeing)
+ return;
+
+ dstBeing->setAction(BeingAction::STAND, 0);
+ dstBeing->setTileCoords(x, y);
+ dstBeing->setShowName(true);
+ dstBeing->setName(text);
+}
+
void BeingRecv::applyPlayerAction(Net::MessageIn &msg,
Being *const being,
const uint8_t type)