#pragma once namespace Components { class ClientCommand : public Component { public: ClientCommand(); static void Add(const char* name, const std::function& callback); static bool CheatsOk(const Game::gentity_s* ent); private: static std::unordered_map> HandlersSV; static void ClientCommandStub(int clientNum); static void AddCheatCommands(); static void AddDevelopmentCommands(); static void AddScriptFunctions(); static const char* EntInfoLine(int entNum); static void G_DumpEntityDebugInfoToConsole(bool logfileOnly); static void G_DumpEntityDebugInfoToCSV(const char* filenameSuffix); }; }