diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/net/eathena/charserverrecv.cpp | 5 | ||||
-rw-r--r-- | src/net/eathena/packetsin.inc | 6 |
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); |