3 * ===============================================================
4 * SourceMod (C)2004-2007 AlliedModders LLC. All rights reserved.
5 * ===============================================================
7 * This file is not open source and may not be copied without explicit
8 * written permission of AlliedModders LLC. This file may not be redistributed
9 * in whole or significant part.
10 * For information, see LICENSE.txt or http://www.sourcemod.net/license.php
15 #ifndef _INCLUDE_SOURCEMOD_SERVERCOMMANDS_H_
16 #define _INCLUDE_SOURCEMOD_SERVERCOMMANDS_H_
18 #include "sourcemod.h"
19 #include <IRootConsoleMenu.h>
20 #include "PluginSys.h"
21 #include "sourcemm_api.h"
23 #include <sh_string.h>
26 using namespace SourceMod;
27 using namespace SourceHook;
35 class RootConsoleMenu :
36 public IConCommandBaseAccessor,
38 public IRootConsoleCommand,
44 public: //IConCommandBaseAccessor
45 bool RegisterConCommandBase(ConCommandBase *pCommand);
46 public: //SMGlobalClass
47 void OnSourceModStartup(bool late);
48 void OnSourceModShutdown();
49 public: //IRootConsoleCommand
50 void OnRootConsoleCommand(const char *cmd, unsigned int argcount);
51 public: //IRootConsole
52 bool AddRootConsoleCommand(const char *cmd, const char *text, IRootConsoleCommand *pHandler);
53 bool RemoveRootConsoleCommand(const char *cmd, IRootConsoleCommand *pHandler);
54 void ConsolePrint(const char *fmt, ...);
55 const char *GetArgument(unsigned int argno);
56 unsigned int GetArgumentCount();
57 const char *GetArguments();
58 void DrawGenericOption(const char *cmd, const char *text);
64 List<ConsoleEntry *> m_Menu;
67 extern RootConsoleMenu g_RootMenu;
69 #endif //_INCLUDE_SOURCEMOD_SERVERCOMMANDS_H_