From 388cb093276e34ba5aaf1e994439e8347ffc0e3a Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 18 Mar 2015 00:31:04 +0300 Subject: eathena: add partial support for packet SMSG_BATTLE_PLAY 0x07fe. --- src/net/eathena/battlegroundhandler.cpp | 11 +++++++++++ src/net/eathena/battlegroundhandler.h | 2 ++ src/net/eathena/packets.h | 2 +- src/net/eathena/protocol.h | 1 + 4 files changed, 15 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/net/eathena/battlegroundhandler.cpp b/src/net/eathena/battlegroundhandler.cpp index 9c23e08ff..941910873 100644 --- a/src/net/eathena/battlegroundhandler.cpp +++ b/src/net/eathena/battlegroundhandler.cpp @@ -40,6 +40,7 @@ BattleGroundHandler::BattleGroundHandler() : SMSG_BATTLE_EMBLEM, SMSG_BATTLE_UPDATE_SCORE, SMSG_BATTLE_UPDATE_COORDS, + SMSG_BATTLE_PLAY, 0 }; handledMessages = _messages; @@ -62,6 +63,10 @@ void BattleGroundHandler::handleMessage(Net::MessageIn &msg) processBattleUpdateCoords(msg); break; + case SMSG_BATTLE_PLAY: + processBattlePlay(msg); + break; + default: break; } @@ -92,4 +97,10 @@ void BattleGroundHandler::processBattleUpdateCoords(Net::MessageIn &msg) msg.readInt16("y"); } +void BattleGroundHandler::processBattlePlay(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + msg.readString(24, "battle ground name"); +} + } // namespace EAthena diff --git a/src/net/eathena/battlegroundhandler.h b/src/net/eathena/battlegroundhandler.h index e46394199..5fa175f87 100644 --- a/src/net/eathena/battlegroundhandler.h +++ b/src/net/eathena/battlegroundhandler.h @@ -45,6 +45,8 @@ class BattleGroundHandler final : public MessageHandler, void processBattleUpdateScore(Net::MessageIn &msg); void processBattleUpdateCoords(Net::MessageIn &msg); + + void processBattlePlay(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 63566351f..c93b4bfd6 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -211,7 +211,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, 8, 268, 0, 0, 0, 0, 0, 0, 0, 15, 8, 6, 6, 0, 8, 0, 0, 5, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 8, 25, 10, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 8, 25, 10, 0, 26, 0, //0 1 2 3 4 5 6 7 8 9 a b c d e f //0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 // #0x0800 diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 86b9ab57b..f8180dec2 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -430,6 +430,7 @@ #define SMSG_BATTLE_EMBLEM 0x02dd #define SMSG_BATTLE_UPDATE_SCORE 0x02de #define SMSG_BATTLE_UPDATE_COORDS 0x02df +#define SMSG_BATTLE_PLAY 0x07fe /********************************** * Packets from client to server * -- cgit v1.2.3-70-g09d2