From 593aa06d1c7b9bd68c1d47e2967db3cac41c8368 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 17 Mar 2015 23:41:30 +0300 Subject: eathena: add partial support for packet SMSG_BEING_MILLENIUM_SHIELD 0x0440. --- src/net/eathena/beinghandler.cpp | 14 ++++++++++++++ src/net/eathena/beinghandler.h | 2 ++ src/net/eathena/packets.h | 2 +- src/net/eathena/protocol.h | 1 + 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp index 7f3762e58..13fa26032 100644 --- a/src/net/eathena/beinghandler.cpp +++ b/src/net/eathena/beinghandler.cpp @@ -132,6 +132,7 @@ BeingHandler::BeingHandler(const bool enableSync) : SMSG_GLADIATOR_FEEL_REQUEST, SMSG_BOSS_MAP_INFO, SMSG_BEING_FONT, + SMSG_BEING_MILLENIUM_SHIELD, 0 }; handledMessages = _messages; @@ -392,6 +393,10 @@ void BeingHandler::handleMessage(Net::MessageIn &msg) processBeingFont(msg); break; + case SMSG_BEING_MILLENIUM_SHIELD: + processBeingMilleniumShield(msg); + break; + default: break; } @@ -1861,4 +1866,13 @@ void BeingHandler::processBeingFont(Net::MessageIn &msg) msg.readInt16("font"); } +void BeingHandler::processBeingMilleniumShield(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + + msg.readInt32("account id"); + msg.readInt16("shields"); + msg.readInt16("unused"); +} + } // namespace EAthena diff --git a/src/net/eathena/beinghandler.h b/src/net/eathena/beinghandler.h index 2d80577f9..1d1bfb1dd 100644 --- a/src/net/eathena/beinghandler.h +++ b/src/net/eathena/beinghandler.h @@ -154,6 +154,8 @@ class BeingHandler final : public MessageHandler, public Ea::BeingHandler static void processBossMapInfo(Net::MessageIn &msg); static void processBeingFont(Net::MessageIn &msg); + + static void processBeingMilleniumShield(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 971ecef2a..798465f2d 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -132,7 +132,7 @@ int16_t packet_lengths[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 25, // #0x0440 - 0, 4, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 10, 4, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 1fce01349..359583bdf 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -157,6 +157,7 @@ #define SMSG_BEING_STAT_UPDATE_1 0x01ab #define SMSG_BEING_ATTRS 0x0b0a #define SMSG_BEING_FONT 0x02ef +#define SMSG_BEING_MILLENIUM_SHIELD 0x0440 #define SMSG_IGNORE_NICK_ACK 0x00d1 #define SMSG_STARS_KILL 0x020e #define SMSG_GLADIATOR_FEEL_REQUEST 0x0253 -- cgit v1.2.3-70-g09d2