feat(ui): implement Script_SetCVar

This commit is contained in:
fallenoak 2025-11-29 16:40:36 -06:00
parent 51ff90314c
commit 7fe7ed96d6
No known key found for this signature in database
GPG Key ID: 7628F8E61AEA070D

View File

@ -584,7 +584,29 @@ int32_t Script_GetCVarBool(lua_State* L) {
}
int32_t Script_SetCVar(lua_State* L) {
WHOA_UNIMPLEMENTED(0);
if (!lua_isstring(L, 1)) {
return luaL_error(L, "Usage: SetCVar(\"cvar\", value [, \"scriptCvar\")");
}
auto varName = lua_tostring(L, 1);
auto var = CVar::LookupRegistered(varName);
if (!var) {
return luaL_error(L, "Couldn't find CVar named '%s'", varName);
}
if (var->m_flags & 0x4) {
return luaL_error(L, "\"%s\" is read-only", varName);
}
auto value = lua_tostring(L, 2);
if (!value) {
value = "0";
}
var->Set(value, true, false, false, true);
return 0;
}
int32_t Script_GetCVarDefault(lua_State* L) {