summaryrefslogtreecommitdiffstats
path: root/src/Server.cpp
diff options
context:
space:
mode:
authorTycho <work.tycho+git@gmail.com>2014-05-24 13:44:49 +0200
committerTycho <work.tycho+git@gmail.com>2014-05-24 13:44:49 +0200
commit4ab82881165cb180b020e67f851028718ab84d87 (patch)
tree93e773ebd46fb76dd520821133b01f6d99b26e94 /src/Server.cpp
parentIgnore CTest files (diff)
parentMerge pull request #1022 from mc-server/FixMineshafts (diff)
downloadcuberite-4ab82881165cb180b020e67f851028718ab84d87.tar
cuberite-4ab82881165cb180b020e67f851028718ab84d87.tar.gz
cuberite-4ab82881165cb180b020e67f851028718ab84d87.tar.bz2
cuberite-4ab82881165cb180b020e67f851028718ab84d87.tar.lz
cuberite-4ab82881165cb180b020e67f851028718ab84d87.tar.xz
cuberite-4ab82881165cb180b020e67f851028718ab84d87.tar.zst
cuberite-4ab82881165cb180b020e67f851028718ab84d87.zip
Diffstat (limited to 'src/Server.cpp')
-rw-r--r--src/Server.cpp35
1 files changed, 34 insertions, 1 deletions
diff --git a/src/Server.cpp b/src/Server.cpp
index bfb1b1cbb..aa731cdd2 100644
--- a/src/Server.cpp
+++ b/src/Server.cpp
@@ -476,7 +476,37 @@ void cServer::ExecuteConsoleCommand(const AString & a_Cmd, cCommandOutputCallbac
a_Output.Finished();
return;
}
-
+ if (split[0] == "load")
+ {
+ if (split.size() > 1)
+ {
+ cPluginManager::Get()->LoadPlugin(split[1]);
+
+ return;
+ }
+ else
+ {
+ a_Output.Out("No plugin given! Command: load <pluginname>");
+ a_Output.Finished();
+ return;
+ }
+ }
+
+ if (split[0] == "unload")
+ {
+ if (split.size() > 1)
+ {
+ cPluginManager::Get()->RemovePlugin(cPluginManager::Get()->GetPlugin(split[1]));
+ return;
+ }
+ else
+ {
+ a_Output.Out("No plugin given! Command: unload <pluginname>");
+ a_Output.Finished();
+ return;
+ }
+ }
+
// There is currently no way a plugin can do these (and probably won't ever be):
if (split[0].compare("chunkstats") == 0)
{
@@ -567,6 +597,9 @@ void cServer::BindBuiltInConsoleCommands(void)
PlgMgr->BindConsoleCommand("restart", NULL, " - Restarts the server cleanly");
PlgMgr->BindConsoleCommand("stop", NULL, " - Stops the server cleanly");
PlgMgr->BindConsoleCommand("chunkstats", NULL, " - Displays detailed chunk memory statistics");
+ PlgMgr->BindConsoleCommand("load <pluginname>", NULL, " - Adds and enables the specified plugin");
+ PlgMgr->BindConsoleCommand("unload <pluginname>", NULL, " - Disables the specified plugin");
+
#if defined(_MSC_VER) && defined(_DEBUG) && defined(ENABLE_LEAK_FINDER)
PlgMgr->BindConsoleCommand("dumpmem", NULL, " - Dumps all used memory blocks together with their callstacks into memdump.xml");
#endif