summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-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);