Remove ConVar and ConCommand singletons

Extraneous singletons.
This commit is contained in:
Kawe Mazidjatari 2022-11-18 22:10:20 +01:00
parent 4bf0e2f544
commit 9c1efe20ad
8 changed files with 28 additions and 34 deletions

View File

@ -251,7 +251,7 @@ void Systems_Init()
spdlog::info("Detour->Attach() '{:10.6f}' seconds ('{:12d}' clocks)\n", initTimer.GetDuration().GetSeconds(), initTimer.GetDuration().GetCycles());
spdlog::info("+-------------------------------------------------------------+\n");
g_pConVar->Init();
ConVar::Init();
#ifdef DEDICATED
Dedicated_Init();

View File

@ -211,7 +211,7 @@ FORCEINLINE void CHostState::Setup(void)
#ifndef CLIENT_DLL
g_pBanSystem->Load();
#endif // !CLIENT_DLL
g_pConVar->PurgeHostNames();
ConVar::PurgeHostNames();
net_usesocketsforloopback->SetValue(1);
if (net_useRandomKey->GetBool())

View File

@ -80,10 +80,10 @@ static void InitVPKSystem()
//-----------------------------------------------------------------------------
bool CEngineAPI::VModInit(CEngineAPI* pEngineAPI, const char* pModName, const char* pGameDir)
{
g_pConCommand->InitShipped();
g_pConCommand->PurgeShipped();
g_pConVar->InitShipped();
g_pConVar->PurgeShipped();
ConCommand::InitShipped();
ConCommand::PurgeShipped();
ConVar::InitShipped();
ConVar::PurgeShipped();
bool results = CEngineAPI_ModInit(pEngineAPI, pModName, pGameDir);
if (!IsValveMod(pModName) && !IsRespawnMod(pModName))
@ -149,5 +149,5 @@ void SysDll2_Attach()
void SysDll2_Detach()
{
DetourDetach((LPVOID*)&CEngineAPI_ModInit, &CEngineAPI::VModInit);
DetourDetach((LPVOID*)&v_CEngineAPI_SetStartupInfo, &CEngineAPI::VSetStartupInfo);
DetourDetach((LPVOID*)&v_CEngineAPI_SetStartupInfo, &CEngineAPI::VSetStartupInfo);
}

View File

@ -56,11 +56,11 @@ int CModAppSystemGroup::Main(CModAppSystemGroup* pModAppSystemGroup)
//-----------------------------------------------------------------------------
bool CModAppSystemGroup::Create(CModAppSystemGroup* pModAppSystemGroup)
{
ConCommand::Init();
#ifdef DEDICATED
pModAppSystemGroup->SetServerOnly();
*g_bDedicated = true;
#endif // DEDICATED
g_pConCommand->Init();
g_pFactory->GetFactoriesFromRegister();
g_pFactory->AddFactory(FACTORY_INTERFACE_VERSION, g_pFactory);
g_pFactory->AddFactory(INTERFACEVERSION_PLUGINSYSTEM, g_pPluginSystem);

View File

@ -61,7 +61,7 @@ ConVar::~ConVar(void)
//-----------------------------------------------------------------------------
// Purpose: initialize ConVar's
//-----------------------------------------------------------------------------
void ConVar::Init(void) const
void ConVar::Init(void)
{
//-------------------------------------------------------------------------
// ENGINE |
@ -227,7 +227,7 @@ void ConVar::Init(void) const
//-----------------------------------------------------------------------------
// Purpose: initialize shipped ConVar's
//-----------------------------------------------------------------------------
void ConVar::InitShipped(void) const
void ConVar::InitShipped(void)
{
#ifndef CLIENT_DLL
ai_script_nodes_draw = g_pCVar->FindVar("ai_script_nodes_draw");
@ -284,7 +284,7 @@ void ConVar::InitShipped(void) const
//-----------------------------------------------------------------------------
// Purpose: unregister/disable extraneous ConVar's.
//-----------------------------------------------------------------------------
void ConVar::PurgeShipped(void) const
void ConVar::PurgeShipped(void)
{
#ifdef DEDICATED
const char* pszToPurge[] =
@ -311,7 +311,7 @@ void ConVar::PurgeShipped(void) const
//-----------------------------------------------------------------------------
// Purpose: clear all hostname ConVar's.
//-----------------------------------------------------------------------------
void ConVar::PurgeHostNames(void) const
void ConVar::PurgeHostNames(void)
{
const char* pszHostNames[] =
{
@ -1075,4 +1075,3 @@ void IConVar_Detach()
}
///////////////////////////////////////////////////////////////////////////////
ConVar* g_pConVar = new ConVar();

View File

@ -15,11 +15,11 @@ public:
ConVar(void);
~ConVar(void);
void Init(void) const;
void InitShipped(void) const;
static void Init(void);
static void InitShipped(void);
void PurgeShipped(void) const;
void PurgeHostNames(void) const;
static void PurgeShipped(void);
static void PurgeHostNames(void);
void AddFlags(int nFlags);
void RemoveFlags(int nFlags);
@ -81,14 +81,14 @@ public:
int m_nValue;
};
IConVar* m_pIConVarVFTable{}; //0x0040
ConVar* m_pParent {}; //0x0048
const char* m_pszDefaultValue{}; //0x0050
CVValue_t m_Value {}; //0c0058
bool m_bHasMin {}; //0x0070
float m_fMinVal {}; //0x0074
bool m_bHasMax {}; //0x0078
float m_fMaxVal {}; //0x007C
IConVar* m_pIConVarVFTable; //0x0040
ConVar* m_pParent ; //0x0048
const char* m_pszDefaultValue; //0x0050
CVValue_t m_Value ; //0c0058
bool m_bHasMin ; //0x0070
float m_fMinVal ; //0x0074
bool m_bHasMax ; //0x0078
float m_fMaxVal ; //0x007C
CUtlVector<FnChangeCallback_t> m_fnChangeCallbacks; //0x0080
}; //Size: 0x00A0
static_assert(sizeof(ConVar) == 0xA0);
@ -112,8 +112,6 @@ void IConVar_Detach();
void ConVar_PrintDescription(ConCommandBase* pVar);
extern ConVar* g_pConVar;
///////////////////////////////////////////////////////////////////////////////
class VConVar : public IDetour
{

View File

@ -458,7 +458,7 @@ void ConCommand::InitShipped(void)
//-----------------------------------------------------------------------------
// Purpose: unregister extraneous ConCommand's.
//-----------------------------------------------------------------------------
void ConCommand::PurgeShipped(void) const
void ConCommand::PurgeShipped(void)
{
#ifdef DEDICATED
const char* pszCommandToRemove[] =
@ -731,4 +731,3 @@ void ConCommand_Detach()
DetourDetach((LPVOID*)&ConCommandBase_IsFlagSet, &ConCommandBase::IsFlagSetInternal);
DetourDetach((LPVOID*)&v_Cmd_ForwardToServer, &Cmd_ForwardToServer);
}
ConCommand* g_pConCommand = new ConCommand();

View File

@ -131,9 +131,9 @@ public:
ConCommand(void);
~ConCommand(void);
void Init(void);
void InitShipped(void);
void PurgeShipped(void) const;
static void Init(void);
static void InitShipped(void);
static void PurgeShipped(void);
bool IsCommand(void) const;
void* m_nNullCallBack; //0x0040
@ -185,8 +185,6 @@ ECommandTarget_t Cbuf_GetCurrentPlayer(void);
void ConCommand_Attach();
void ConCommand_Detach();
extern ConCommand* g_pConCommand;
///////////////////////////////////////////////////////////////////////////////
class VConCommand : public IDetour
{