diff options
author | Andrei Karas <akaras@inbox.ru> | 2018-04-07 00:44:58 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2018-04-07 01:54:33 +0300 |
commit | 8720859cf97b5b0865a17d6d96c17a3481a3c2ae (patch) | |
tree | 25865af2f9adc12c8f600373705adaf42f93b2ae /src | |
parent | 24b3f27775801e4ce45e4203f87994209dd54e7b (diff) | |
download | manaplus-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')
-rw-r--r-- | src/net/eathena/beingrecv.cpp | 14 | ||||
-rw-r--r-- | src/net/eathena/beingrecv.h | 1 | ||||
-rw-r--r-- | src/net/eathena/packetsin.inc | 6 |
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) { |