summaryrefslogtreecommitdiff
path: root/src/net/eathena
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2018-04-07 00:44:58 +0300
committerAndrei Karas <akaras@inbox.ru>2018-04-07 01:54:33 +0300
commit8720859cf97b5b0865a17d6d96c17a3481a3c2ae (patch)
tree25865af2f9adc12c8f600373705adaf42f93b2ae /src/net/eathena
parent24b3f27775801e4ce45e4203f87994209dd54e7b (diff)
downloadmanaplus-8720859cf97b5b0865a17d6d96c17a3481a3c2ae.tar.gz
manaplus-8720859cf97b5b0865a17d6d96c17a3481a3c2ae.tar.bz2
manaplus-8720859cf97b5b0865a17d6d96c17a3481a3c2ae.tar.xz
manaplus-8720859cf97b5b0865a17d6d96c17a3481a3c2ae.zip
Add packet SMSG_BEING_HAT_EFFECTS 0x0a3b.
Diffstat (limited to 'src/net/eathena')
-rw-r--r--src/net/eathena/beingrecv.cpp14
-rw-r--r--src/net/eathena/beingrecv.h1
-rw-r--r--src/net/eathena/packetsin.inc6
3 files changed, 21 insertions, 0 deletions
diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp
index 627d9d9a1..731f00f44 100644
--- a/src/net/eathena/beingrecv.cpp
+++ b/src/net/eathena/beingrecv.cpp
@@ -1470,6 +1470,20 @@ void BeingRecv::processBeingSpecialEffect(Net::MessageIn &msg)
}
}
+void BeingRecv::processBeingHatEffects(Net::MessageIn &msg)
+{
+ // +++ add new type of permanent effects?
+ const int cnt = (msg.readInt16("len") - 9) / 2;
+ if (cnt > 0)
+ {
+ UNIMPLEMENTEDPACKET;
+ }
+ msg.readBeingId("being id");
+ msg.readUInt8("enable");
+ for (int f = 0; f < cnt; f ++)
+ msg.readInt16("hat effect");
+}
+
void BeingRecv::processBeingSpecialEffectNum(Net::MessageIn &msg)
{
UNIMPLEMENTEDPACKET;
diff --git a/src/net/eathena/beingrecv.h b/src/net/eathena/beingrecv.h
index 2544284d8..cef6653c8 100644
--- a/src/net/eathena/beingrecv.h
+++ b/src/net/eathena/beingrecv.h
@@ -74,6 +74,7 @@ namespace EAthena
A_NONNULL(2);
void processBeingSpecialEffect(Net::MessageIn &msg);
void processBeingSpecialEffectNum(Net::MessageIn &msg);
+ void processBeingHatEffects(Net::MessageIn &msg);
void processBeingSoundEffect(Net::MessageIn &msg);
void processSkillGroundNoDamage(Net::MessageIn &msg);
void processSkillEntry(Net::MessageIn &msg);
diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc
index 40e6419ce..bbc6dc805 100644
--- a/src/net/eathena/packetsin.inc
+++ b/src/net/eathena/packetsin.inc
@@ -910,6 +910,12 @@ if ((serverVersion >= 8 || serverVersion == 0) && packetVersion >= 20150226)
packet(SMSG_BEING_VIEW_EQUIPMENT, 0x0a2d, -1, &BeingRecv::processBeingViewEquipment, 20150226);
}
+// 20150422
+if (packetVersion >= 20150422)
+{
+ packet(SMSG_BEING_HAT_EFFECTS, 0x0a3b, -1, &BeingRecv::processBeingHatEffects, 20150422);
+}
+
// 20150513
if (packetVersion >= 20150513)
{