diff options
author | Tycho <work.tycho+git@gmail.com> | 2014-05-24 13:44:49 +0200 |
---|---|---|
committer | Tycho <work.tycho+git@gmail.com> | 2014-05-24 13:44:49 +0200 |
commit | 4ab82881165cb180b020e67f851028718ab84d87 (patch) | |
tree | 93e773ebd46fb76dd520821133b01f6d99b26e94 /src/Server.cpp | |
parent | Ignore CTest files (diff) | |
parent | Merge pull request #1022 from mc-server/FixMineshafts (diff) | |
download | cuberite-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.cpp | 35 |
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 |