summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2018-01-16 23:25:23 +0300
committerAndrei Karas <akaras@inbox.ru>2018-01-16 23:40:57 +0300
commit8b70550dab4dc90c8b0b1c84b349c4df125ff2bb (patch)
tree1c85c872e4d34d7124540dd91189900c249d2b20
parent4f8a0f6e11f32b17c45cb4214fbb83e9a1c8cd1e (diff)
downloadmv-8b70550dab4dc90c8b0b1c84b349c4df125ff2bb.tar.gz
mv-8b70550dab4dc90c8b0b1c84b349c4df125ff2bb.tar.bz2
mv-8b70550dab4dc90c8b0b1c84b349c4df125ff2bb.tar.xz
mv-8b70550dab4dc90c8b0b1c84b349c4df125ff2bb.zip
Add packet SMSG_CHANGE_MAP_SERVER 0x0ac7.
-rw-r--r--src/net/eathena/charserverrecv.cpp5
-rw-r--r--src/net/eathena/packetsin.inc6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/net/eathena/charserverrecv.cpp b/src/net/eathena/charserverrecv.cpp
index 6bdf1d4e8..abae9b0e1 100644
--- a/src/net/eathena/charserverrecv.cpp
+++ b/src/net/eathena/charserverrecv.cpp
@@ -331,6 +331,11 @@ void CharServerRecv::processChangeMapServer(Net::MessageIn &msg)
server.hostname = ipToString(msg.readInt32("host"));
}
server.port = msg.readInt16("port");
+ if (msg.getVersion() >= 20170315)
+ {
+ for (int f = 0; f < 32; f ++)
+ msg.readInt32("unknown");
+ }
network->disconnect();
client->setState(State::CHANGE_MAP);
diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc
index ad6c63b6a..08ca43cf9 100644
--- a/src/net/eathena/packetsin.inc
+++ b/src/net/eathena/packetsin.inc
@@ -977,6 +977,12 @@ if (packetVersion >= 20170502)
packet(SMSG_PARTY_MEMBER_JOB_LEVEL, 0x0abd, 10, &PartyRecv::processPartyMemberJobLevel, 20170502);
}
+// 20170315
+if (packetVersion == 20170315)
+{
+ packet(SMSG_CHANGE_MAP_SERVER, 0x0ac7, 156, &CharServerRecv::processChangeMapServer, 20170315);
+}
+
// 20170830
packet(SMSG_PLAYER_STAT_UPDATE_7, 0x0acb, 12, &PlayerRecv::processPlayerStatUpdate7, 20170830);
packet(SMSG_PLAYER_GET_EXP2, 0x0acc, 18, &PlayerRecv::processPlayerGetExp2, 20170830);