summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-18 17:14:38 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-18 17:14:38 +0300
commit16c256230774fc1dcdf66f16a70a3cd9f6fd0343 (patch)
treee2a7562894c575727f3fdb5183f4765d70330ccb
parentfbf357addfe7c7d367a3203be3ad78aba278bcf6 (diff)
downloadplus-16c256230774fc1dcdf66f16a70a3cd9f6fd0343.tar.gz
plus-16c256230774fc1dcdf66f16a70a3cd9f6fd0343.tar.bz2
plus-16c256230774fc1dcdf66f16a70a3cd9f6fd0343.tar.xz
plus-16c256230774fc1dcdf66f16a70a3cd9f6fd0343.zip
eathena: add partial support for packet SMSG_BATTLE_JOINED 0x08d9.
-rw-r--r--src/net/eathena/battlegroundhandler.cpp12
-rw-r--r--src/net/eathena/battlegroundhandler.h2
-rw-r--r--src/net/eathena/packets.h2
-rw-r--r--src/net/eathena/protocol.h1
4 files changed, 16 insertions, 1 deletions
diff --git a/src/net/eathena/battlegroundhandler.cpp b/src/net/eathena/battlegroundhandler.cpp
index 7024f33bc..3cc324392 100644
--- a/src/net/eathena/battlegroundhandler.cpp
+++ b/src/net/eathena/battlegroundhandler.cpp
@@ -44,6 +44,7 @@ BattleGroundHandler::BattleGroundHandler() :
SMSG_BATTLE_QUEUE_ACK,
SMSG_BATTLE_BEGINS,
SMSG_BATTLE_NOTICE_DELETE,
+ SMSG_BATTLE_JOINED,
0
};
handledMessages = _messages;
@@ -82,6 +83,10 @@ void BattleGroundHandler::handleMessage(Net::MessageIn &msg)
processBattleNoticeDelete(msg);
break;
+ case SMSG_BATTLE_JOINED:
+ processBattleJoined(msg);
+ break;
+
default:
break;
}
@@ -139,4 +144,11 @@ void BattleGroundHandler::processBattleNoticeDelete(Net::MessageIn &msg)
msg.readString(24, "bg name");
}
+void BattleGroundHandler::processBattleJoined(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+ msg.readString(24, "name");
+ msg.readInt32("position");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/battlegroundhandler.h b/src/net/eathena/battlegroundhandler.h
index a437a1563..6e30edda1 100644
--- a/src/net/eathena/battlegroundhandler.h
+++ b/src/net/eathena/battlegroundhandler.h
@@ -53,6 +53,8 @@ class BattleGroundHandler final : public MessageHandler,
void processBattleBegins(Net::MessageIn &msg);
void processBattleNoticeDelete(Net::MessageIn &msg);
+
+ void processBattleJoined(Net::MessageIn &msg);
};
} // namespace EAthena
diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h
index a8246c6ce..867640a32 100644
--- a/src/net/eathena/packets.h
+++ b/src/net/eathena/packets.h
@@ -231,7 +231,7 @@ int16_t packet_lengths[] =
0, 0, 0, -1, 0, 0, 0, 0, 0, 12, 10, 0, 0, 0, 0, 0,
// #0x08C0
-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 10,
- 0, 0, 10, 0, 0, -1, 6, 0, 27, 0, 0, 27, 0, 0, 0, 50,
+ 0, 0, 10, 0, 0, -1, 6, 0, 27, 30, 0, 27, 0, 0, 0, 50,
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 1 2 3 4 5 6 7 8 9 a b c d e f
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index 3040648e5..6b1fd6fc8 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -447,6 +447,7 @@
#define SMSG_BATTLE_QUEUE_ACK 0x08d8
#define SMSG_BATTLE_BEGINS 0x08df
#define SMSG_BATTLE_NOTICE_DELETE 0x08db
+#define SMSG_BATTLE_JOINED 0x08d9
/**********************************
* Packets from client to server *