#pragma once namespace Components { class ModList : public Component { public: ModList(); static void RunMod(const std::string& mod); private: static std::vector Mods; static unsigned int CurrentMod; static bool HasMod(const std::string& modName); static unsigned int GetItemCount(); static const char* GetItemText(unsigned int index, int column); static void Select(unsigned int index); static void UIScript_LoadMods([[maybe_unused]] const UIScript::Token& token, [[maybe_unused]] const Game::uiInfo_s* info); static void UIScript_RunMod([[maybe_unused]] const UIScript::Token& token, [[maybe_unused]] const Game::uiInfo_s* info); static void UIScript_ClearMods([[maybe_unused]] const UIScript::Token& token, [[maybe_unused]] const Game::uiInfo_s* info); }; }