diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-03-12 18:04:15 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-03-12 18:04:15 +0300 |
commit | 841c5a9c5fdba7c9607a3fcd9a2bf40e20bcca7f (patch) | |
tree | ec2c8e6db9352fa4bf7245716d3a319c1fb950fa | |
parent | 2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0 (diff) | |
download | manaplus-841c5a9c5fdba7c9607a3fcd9a2bf40e20bcca7f.tar.gz manaplus-841c5a9c5fdba7c9607a3fcd9a2bf40e20bcca7f.tar.bz2 manaplus-841c5a9c5fdba7c9607a3fcd9a2bf40e20bcca7f.tar.xz manaplus-841c5a9c5fdba7c9607a3fcd9a2bf40e20bcca7f.zip |
eathena: add partial support for packet SMSG_BOSS_MAP_INFO 0x0293.
-rw-r--r-- | src/net/eathena/beinghandler.cpp | 19 | ||||
-rw-r--r-- | src/net/eathena/beinghandler.h | 2 | ||||
-rw-r--r-- | src/net/eathena/packets.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
4 files changed, 23 insertions, 1 deletions
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp index 3d17e8cfc..aaac021ab 100644 --- a/src/net/eathena/beinghandler.cpp +++ b/src/net/eathena/beinghandler.cpp @@ -131,6 +131,7 @@ BeingHandler::BeingHandler(const bool enableSync) : SMSG_TAEKWON_RANKS_LIST, SMSG_PK_RANKS_LIST, SMSG_GLADIATOR_FEEL_REQUEST, + SMSG_BOSS_MAP_INFO, 0 }; handledMessages = _messages; @@ -383,6 +384,10 @@ void BeingHandler::handleMessage(Net::MessageIn &msg) processGladiatorFeelRequest(msg); break; + case SMSG_BOSS_MAP_INFO: + processBossMapInfo(msg); + break; + default: break; } @@ -1830,4 +1835,18 @@ void BeingHandler::processGladiatorFeelRequest(Net::MessageIn &msg) msg.readUInt8("which"); } +void BeingHandler::processBossMapInfo(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + + msg.readUInt8("info type"); + msg.readInt32("x"); + msg.readInt32("y"); + msg.readInt16("min hours"); + msg.readInt16("min minutes"); + msg.readInt16("max hours"); + msg.readInt16("max minutes"); + msg.readString(24, "monster name"); // really can be used 51 byte? +} + } // namespace EAthena diff --git a/src/net/eathena/beinghandler.h b/src/net/eathena/beinghandler.h index 791f6a81e..b11553b09 100644 --- a/src/net/eathena/beinghandler.h +++ b/src/net/eathena/beinghandler.h @@ -150,6 +150,8 @@ class BeingHandler final : public MessageHandler, public Ea::BeingHandler static void processPkRanksList(Net::MessageIn &msg); static void processGladiatorFeelRequest(Net::MessageIn &msg); + + static void processBossMapInfo(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 980bd1e7a..a7d355560 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -94,7 +94,7 @@ int16_t packet_lengths[] = 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // #0x0280 0, 0, 0, 6, 14, 0, 0, -1, 0, 12, 18, 0, 0, 0, 4, 0, - 4, 4, 0, 0, 0, 0, 0, 0, 8, 6, 0, 80, 0, -1, 0, 0, + 4, 4, 0, 70, 0, 0, 0, 0, 8, 6, 0, 80, 0, -1, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 107, 6, -1, 0, 7, 22, 191, 0, 0, 0, 0, 0, 0, // #0x02C0 diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index bb8b8bfa0..353278842 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -157,6 +157,7 @@ #define SMSG_IGNORE_NICK_ACK 0x00d1 #define SMSG_STARS_KILL 0x020e #define SMSG_GLADIATOR_FEEL_REQUEST 0x0253 +#define SMSG_BOSS_MAP_INFO 0x0293 #define SMSG_PLAYER_STATUS_CHANGE 0x0229 #define SMSG_PLAYER_STATUS_CHANGE2 0x028a |