summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/eathena/maphandler.cpp8
-rw-r--r--src/net/eathena/maphandler.h2
-rw-r--r--src/net/eathena/packetsout.inc7
-rw-r--r--src/net/maphandler.h2
-rw-r--r--src/net/tmwa/maphandler.cpp4
-rw-r--r--src/net/tmwa/maphandler.h2
6 files changed, 25 insertions, 0 deletions
diff --git a/src/net/eathena/maphandler.cpp b/src/net/eathena/maphandler.cpp
index 7054949f2..075a94a38 100644
--- a/src/net/eathena/maphandler.cpp
+++ b/src/net/eathena/maphandler.cpp
@@ -66,4 +66,12 @@ void MapHandler::camera(int action,
outMsg.writeFloat(latitude, "latitude");
}
+void MapHandler::clientVersion(const int version) const
+{
+ if (packetVersion < 20090406)
+ return;
+ createOutPacket(CMSG_CLIENT_VERSION);
+ outMsg.writeInt32(version, "version");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/maphandler.h b/src/net/eathena/maphandler.h
index 52f50add4..2895087e4 100644
--- a/src/net/eathena/maphandler.h
+++ b/src/net/eathena/maphandler.h
@@ -43,6 +43,8 @@ class MapHandler final : public Net::MapHandler
float range,
float rotation,
float latitude) const override final;
+
+ void clientVersion(const int version) const override final;
};
} // namespace EAthena
diff --git a/src/net/eathena/packetsout.inc b/src/net/eathena/packetsout.inc
index e18283736..6b45709ef 100644
--- a/src/net/eathena/packetsout.inc
+++ b/src/net/eathena/packetsout.inc
@@ -354,6 +354,7 @@ packet(CMSG_SKILL_USE_BEING_STOP, 0x0000, 0, nullptr);
packet(CMSG_NPC_BARTER_CLOSE, 0x0000, 0, nullptr);
packet(CMSG_CAMERA_INFO, 0x0000, 0, nullptr);
packet(CMSG_NPC_BARTER_BUY, 0x0000, 0, nullptr);
+packet(CMSG_CLIENT_VERSION, 0x0000, 0, nullptr);
#else
// 20040713
if (packetVersion >= 20040713)
@@ -586,6 +587,12 @@ if (packetVersion >= 20081210)
packet(CMSG_SKILL_SELECT_MENU, 0x0443, 8, clif->pSkillSelectMenu);
}
+// 20090406
+if (packetVersion >= 20090406)
+{
+ packet(CMSG_CLIENT_VERSION, 0x044a, 6, clif->pClientVersion);
+}
+
// 20090520
if (packetVersion >= 20090520)
{
diff --git a/src/net/maphandler.h b/src/net/maphandler.h
index 55197f364..75a22382d 100644
--- a/src/net/maphandler.h
+++ b/src/net/maphandler.h
@@ -45,6 +45,8 @@ class MapHandler notfinal
float range,
float rotation,
float latitude) const = 0;
+
+ virtual void clientVersion(const int version) const = 0;
};
} // namespace Net
diff --git a/src/net/tmwa/maphandler.cpp b/src/net/tmwa/maphandler.cpp
index 81afd740c..56e716583 100644
--- a/src/net/tmwa/maphandler.cpp
+++ b/src/net/tmwa/maphandler.cpp
@@ -51,4 +51,8 @@ void MapHandler::camera(int action A_UNUSED,
{
}
+void MapHandler::clientVersion(const int version A_UNUSED) const
+{
+}
+
} // namespace TmwAthena
diff --git a/src/net/tmwa/maphandler.h b/src/net/tmwa/maphandler.h
index 62aacc7a5..b1661e5b4 100644
--- a/src/net/tmwa/maphandler.h
+++ b/src/net/tmwa/maphandler.h
@@ -43,6 +43,8 @@ class MapHandler final : public Net::MapHandler
float range,
float rotation,
float latitude) const override final;
+
+ void clientVersion(const int version) const override final;
};
} // namespace TmwAthena