summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-02-24 17:47:26 +0300
committerAndrei Karas <akaras@inbox.ru>2016-02-24 17:47:26 +0300
commit52f9607980c82f53bbc76a5bb5825cbff61dc3b5 (patch)
treea4256432fbb4a6709b04d352d99f35156c0cd0d1 /src/net
parent142cdd218fe10efbea5ceb78cb7947812c35e19e (diff)
downloadmv-52f9607980c82f53bbc76a5bb5825cbff61dc3b5.tar.gz
mv-52f9607980c82f53bbc76a5bb5825cbff61dc3b5.tar.bz2
mv-52f9607980c82f53bbc76a5bb5825cbff61dc3b5.tar.xz
mv-52f9607980c82f53bbc76a5bb5825cbff61dc3b5.zip
Add chat command /showlevel. Also add show level commands to player context menu.
Diffstat (limited to 'src/net')
-rw-r--r--src/net/adminhandler.h2
-rw-r--r--src/net/eathena/adminhandler.cpp8
-rw-r--r--src/net/eathena/adminhandler.h2
-rw-r--r--src/net/tmwa/adminhandler.cpp4
-rw-r--r--src/net/tmwa/adminhandler.h2
5 files changed, 18 insertions, 0 deletions
diff --git a/src/net/adminhandler.h b/src/net/adminhandler.h
index 31dd89f02..55568fe6d 100644
--- a/src/net/adminhandler.h
+++ b/src/net/adminhandler.h
@@ -110,6 +110,8 @@ class AdminHandler notfinal
virtual void playerGmCommands(const std::string &name) const = 0;
virtual void playerCharGmCommands(const std::string &name) const = 0;
+
+ virtual void showLevel(const std::string &name) const = 0;
};
} // namespace Net
diff --git a/src/net/eathena/adminhandler.cpp b/src/net/eathena/adminhandler.cpp
index f5f5099ae..b2a898cca 100644
--- a/src/net/eathena/adminhandler.cpp
+++ b/src/net/eathena/adminhandler.cpp
@@ -203,4 +203,12 @@ void AdminHandler::playerCharGmCommands(const std::string &name) const
chatHandler->talk("#charcommands " + name, GENERAL_CHANNEL);
}
+void AdminHandler::showLevel(const std::string &name) const
+{
+ if (name.empty() || (localPlayer && name == localPlayer->getName()))
+ chatHandler->talk("@exp", GENERAL_CHANNEL);
+ else
+ chatHandler->talk("#exp " + name, GENERAL_CHANNEL);
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/adminhandler.h b/src/net/eathena/adminhandler.h
index c84368d8b..832aaab16 100644
--- a/src/net/eathena/adminhandler.h
+++ b/src/net/eathena/adminhandler.h
@@ -86,6 +86,8 @@ class AdminHandler final : public Ea::AdminHandler
void playerCharGmCommands(const std::string &name) const
override final;
+ void showLevel(const std::string &name) const override final;
+
protected:
static std::string mStatsName;
};
diff --git a/src/net/tmwa/adminhandler.cpp b/src/net/tmwa/adminhandler.cpp
index 91a1985b1..7b5f9d9b9 100644
--- a/src/net/tmwa/adminhandler.cpp
+++ b/src/net/tmwa/adminhandler.cpp
@@ -154,4 +154,8 @@ void AdminHandler::playerCharGmCommands(const std::string &name A_UNUSED) const
{
}
+void AdminHandler::showLevel(const std::string &name A_UNUSED) const
+{
+}
+
} // namespace TmwAthena
diff --git a/src/net/tmwa/adminhandler.h b/src/net/tmwa/adminhandler.h
index 35a12913a..58ad0fb22 100644
--- a/src/net/tmwa/adminhandler.h
+++ b/src/net/tmwa/adminhandler.h
@@ -89,6 +89,8 @@ class AdminHandler final : public Ea::AdminHandler
void playerCharGmCommands(const std::string &name) const override final
A_CONST;
+
+ void showLevel(const std::string &name) const override final A_CONST;
};
} // namespace TmwAthena