From 8b70550dab4dc90c8b0b1c84b349c4df125ff2bb Mon Sep 17 00:00:00 2001
From: Andrei Karas <akaras@inbox.ru>
Date: Tue, 16 Jan 2018 23:25:23 +0300
Subject: Add packet SMSG_CHANGE_MAP_SERVER 0x0ac7.

---
 src/net/eathena/charserverrecv.cpp | 5 +++++
 src/net/eathena/packetsin.inc      | 6 ++++++
 2 files changed, 11 insertions(+)

(limited to 'src')

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);
-- 
cgit v1.2.3-70-g09d2