summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-04-01 02:53:35 +0300
committerAndrei Karas <akaras@inbox.ru>2016-04-01 02:53:35 +0300
commitd5b524c02308c1db5c5ebba96fa9abf8db0da2de (patch)
tree7bdfb9ac32ed35bb1c7818f6455df32bb372acb4
parentc14fb368c606d0ca4e0c73fb845b38e2dc84c958 (diff)
downloadmanaverse-d5b524c02308c1db5c5ebba96fa9abf8db0da2de.tar.gz
manaverse-d5b524c02308c1db5c5ebba96fa9abf8db0da2de.tar.bz2
manaverse-d5b524c02308c1db5c5ebba96fa9abf8db0da2de.tar.xz
manaverse-d5b524c02308c1db5c5ebba96fa9abf8db0da2de.zip
Add packet SMSG_MAP_LOGIN_SUCCESS 0x02eb.
-rw-r--r--src/net/eathena/gamerecv.cpp6
-rw-r--r--src/net/eathena/packetsin.inc8
2 files changed, 11 insertions, 3 deletions
diff --git a/src/net/eathena/gamerecv.cpp b/src/net/eathena/gamerecv.cpp
index 41704deaa..6fdb7389a 100644
--- a/src/net/eathena/gamerecv.cpp
+++ b/src/net/eathena/gamerecv.cpp
@@ -55,8 +55,10 @@ void GameRecv::processMapLogin(Net::MessageIn &msg)
logger->log("Protocol: Player start position: "
"(%d, %d), Direction: %d",
x, y, direction);
- msg.readInt16("font");
- msg.readUInt8("sex");
+ if (msg.getVersion() >= 20080102)
+ msg.readInt16("font");
+ if (msg.getVersion() >= 20141022)
+ msg.readUInt8("sex");
mLastHost &= 0xffffff;
diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc
index b93e582ce..27620d7d3 100644
--- a/src/net/eathena/packetsin.inc
+++ b/src/net/eathena/packetsin.inc
@@ -24,6 +24,9 @@
packet(SMSG_PLAYER_STORAGE_ADD, 0x01c4, 22, &InventoryRecv::processPlayerStorageAdd, 5);
packet(SMSG_PLAYER_CART_ADD, 0x01c5, 22, &InventoryRecv::processPlayerCartAdd, 5);
+// 20080102
+packet(SMSG_MAP_LOGIN_SUCCESS, 0x02eb, 14, &GameRecv::processMapLogin, 20080102);
+
// 20100223
packet(SMSG_TRADE_ITEM_ADD, 0x080f, 20, &TradeRecv::processTradeItemAdd, 20100223);
@@ -49,6 +52,10 @@ packet(SMSG_BEING_VISIBLE, 0x09dd, -1, &BeingRecv::processBeing
packet(SMSG_BEING_MOVE, 0x09db, -1, &BeingRecv::processBeingMove, 20131223);
packet(SMSG_BEING_SPAWN, 0x09dc, -1, &BeingRecv::processBeingSpawn, 20131223);
+// 20141022
+// or 20141016?
+packet(SMSG_MAP_LOGIN_SUCCESS, 0x0a18, 14, &GameRecv::processMapLogin, 20141022);
+
// 20150000 or near
packet(SMSG_ADMIN_ACCOUNT_STATS, 0x0214, 42, &AdminRecv::processAccountStats, 0);
packet(SMSG_ADMIN_GET_LOGIN_ACK, 0x01e0, 30, &AdminRecv::processAdminGetLoginAck, 0);
@@ -239,7 +246,6 @@ packet(SMSG_MAIL_SET_ATTACHMENT_ACK, 0x0255, 5, &MailRecv::processSetAtt
packet(SMSG_MANNER_MESSAGE, 0x014a, 6, &ChatRecv::processMannerMessage, 0);
packet(SMSG_MAP_ACCOUNT_ID, 0x0283, 6, &GameRecv::processMapAccountId, 0);
packet(SMSG_MAP_AUTH_REFUSE, 0x0074, 3, &GameRecv::processMapAuthRefuse, 0);
-packet(SMSG_MAP_LOGIN_SUCCESS, 0x0a18, 14, &GameRecv::processMapLogin, 0);
packet(SMSG_MAP_MASK, 0x0b02, 10, &Ea::PlayerRecv::processMapMask, 0);
packet(SMSG_MAP_MUSIC, 0x0b05, -1, &Ea::PlayerRecv::processMapMusic, 0);
packet(SMSG_MAP_NOT_FOUND, 0x0840, -1, &GeneralRecv::processMapNotFound, 0);