mirror of
https://github.com/whoahq/whoa.git
synced 2026-02-01 08:12:44 +03:00
feat(console): implement ConsoleInitializeClientCVar
This commit is contained in:
parent
f605bc0670
commit
08faeb135d
@ -1,9 +1,27 @@
|
|||||||
#include "console/CVar.hpp"
|
#include "console/CVar.hpp"
|
||||||
|
#include "console/Command.hpp"
|
||||||
|
#include "console/CVarHandlers.hpp"
|
||||||
#include <storm/String.hpp>
|
#include <storm/String.hpp>
|
||||||
|
|
||||||
|
bool CVar::m_initialized;
|
||||||
bool CVar::m_needsSave;
|
bool CVar::m_needsSave;
|
||||||
TSHashTable<CVar, HASHKEY_STRI> CVar::s_registeredCVars;
|
TSHashTable<CVar, HASHKEY_STRI> CVar::s_registeredCVars;
|
||||||
|
|
||||||
|
void CVar::Initialize() {
|
||||||
|
CVar::m_initialized = true;
|
||||||
|
|
||||||
|
char basePath[STORM_MAX_PATH];
|
||||||
|
// TODO
|
||||||
|
// SFile::GetBasePath(basePath, 260);
|
||||||
|
// SStrPrintf(basePath, sizeof(basePath), "%s%s\\", basePath, "WTF");
|
||||||
|
// s_CreatePathDirectories(basePath);
|
||||||
|
|
||||||
|
ConsoleCommandRegister("set", CVarSetCommandHandler, DEFAULT, "Set the value of a CVar");
|
||||||
|
ConsoleCommandRegister("cvar_reset", CVarResetCommandHandler, DEFAULT, "Set the value of a CVar to it's startup value");
|
||||||
|
ConsoleCommandRegister("cvar_default", CVarDefaultCommandHandler, DEFAULT, "Set the value of a CVar to it's coded default value");
|
||||||
|
ConsoleCommandRegister("cvarlist", CVarListCommandHandler, DEFAULT, "List cvars");
|
||||||
|
}
|
||||||
|
|
||||||
CVar* CVar::Lookup(const char* name) {
|
CVar* CVar::Lookup(const char* name) {
|
||||||
return name
|
return name
|
||||||
? CVar::s_registeredCVars.Ptr(name)
|
? CVar::s_registeredCVars.Ptr(name)
|
||||||
|
|||||||
@ -8,10 +8,12 @@
|
|||||||
class CVar : public TSHashObject<CVar, HASHKEY_STRI> {
|
class CVar : public TSHashObject<CVar, HASHKEY_STRI> {
|
||||||
public:
|
public:
|
||||||
// Static variables
|
// Static variables
|
||||||
|
static bool m_initialized;
|
||||||
static TSHashTable<CVar, HASHKEY_STRI> s_registeredCVars;
|
static TSHashTable<CVar, HASHKEY_STRI> s_registeredCVars;
|
||||||
static bool m_needsSave;
|
static bool m_needsSave;
|
||||||
|
|
||||||
// Static functions
|
// Static functions
|
||||||
|
static void Initialize();
|
||||||
static CVar* Lookup(const char* name);
|
static CVar* Lookup(const char* name);
|
||||||
static CVar* Register(const char*, const char*, uint32_t, const char*, bool (*)(CVar*, const char*, const char*, void*), uint32_t, bool, void*, bool);
|
static CVar* Register(const char*, const char*, uint32_t, const char*, bool (*)(CVar*, const char*, const char*, void*), uint32_t, bool, void*, bool);
|
||||||
|
|
||||||
|
|||||||
25
src/console/CVarHandlers.cpp
Normal file
25
src/console/CVarHandlers.cpp
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#include "console/CVarHandlers.hpp"
|
||||||
|
|
||||||
|
int32_t CVarDefaultCommandHandler(const char* command, const char* arguments) {
|
||||||
|
// TODO
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t CVarListCommandHandler(const char* command, const char* arguments) {
|
||||||
|
// TODO
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t CVarSetCommandHandler(const char* command, const char* arguments) {
|
||||||
|
// TODO
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t CVarResetCommandHandler(const char* command, const char* arguments) {
|
||||||
|
// TODO
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
14
src/console/CVarHandlers.hpp
Normal file
14
src/console/CVarHandlers.hpp
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#ifndef CONSOLE_C_VAR_HANDLERS_HPP
|
||||||
|
#define CONSOLE_C_VAR_HANDLERS_HPP
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
int32_t CVarDefaultCommandHandler(const char* command, const char* arguments);
|
||||||
|
|
||||||
|
int32_t CVarListCommandHandler(const char* command, const char* arguments);
|
||||||
|
|
||||||
|
int32_t CVarSetCommandHandler(const char* command, const char* arguments);
|
||||||
|
|
||||||
|
int32_t CVarResetCommandHandler(const char* command, const char* arguments);
|
||||||
|
|
||||||
|
#endif
|
||||||
@ -1,9 +1,17 @@
|
|||||||
#include "console/Client.hpp"
|
#include "console/Client.hpp"
|
||||||
|
#include "CVar.hpp"
|
||||||
|
|
||||||
|
static const char* s_filename;
|
||||||
|
|
||||||
void ConsoleInitializeClientCommand() {
|
void ConsoleInitializeClientCommand() {
|
||||||
// TODO
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
void ConsoleInitializeClientCVar(const char* a1) {
|
void ConsoleInitializeClientCVar(const char* filename) {
|
||||||
|
s_filename = filename;
|
||||||
|
|
||||||
|
CVar::Initialize();
|
||||||
|
|
||||||
// TODO
|
// TODO
|
||||||
|
// CVar::Load(s_filename);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user