mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-11-10 15:22:20 +00:00
Add CV_Set, CV_SetValue, CV_StealthSet, CV_StealthSetValue and CV_AddValue to Lua
CV_SetValue merged with CV_Set (same with CV_StealthSetValue and CV_StealthSet).
This commit is contained in:
parent
ab7ccbc5d5
commit
3e31bc9e45
1 changed files with 43 additions and 1 deletions
|
@ -444,6 +444,45 @@ static int lib_cvFindVar(lua_State *L)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int CVarSetFunction
|
||||||
|
(
|
||||||
|
lua_State *L,
|
||||||
|
void (*Set)(consvar_t *, const char *),
|
||||||
|
void (*SetValue)(consvar_t *, INT32)
|
||||||
|
){
|
||||||
|
consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR);
|
||||||
|
|
||||||
|
switch (lua_type(L, 2))
|
||||||
|
{
|
||||||
|
case LUA_TSTRING:
|
||||||
|
(*Set)(cvar, lua_tostring(L, 2));
|
||||||
|
break;
|
||||||
|
case LUA_TNUMBER:
|
||||||
|
(*SetValue)(cvar, (INT32)lua_tonumber(L, 2));
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return luaL_typerror(L, 1, "string or number");
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int lib_cvSet(lua_State *L)
|
||||||
|
{
|
||||||
|
return CVarSetFunction(L, CV_Set, CV_SetValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int lib_cvStealthSet(lua_State *L)
|
||||||
|
{
|
||||||
|
return CVarSetFunction(L, CV_StealthSet, CV_StealthSetValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int lib_cvAddValue(lua_State *L)
|
||||||
|
{
|
||||||
|
consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR);
|
||||||
|
CV_AddValue(cvar, (INT32)luaL_checknumber(L, 2));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
// CONS_Printf for a single player
|
// CONS_Printf for a single player
|
||||||
// Use 'print' in baselib for a global message.
|
// Use 'print' in baselib for a global message.
|
||||||
|
@ -483,8 +522,11 @@ static luaL_Reg lib[] = {
|
||||||
{"COM_BufAddText", lib_comBufAddText},
|
{"COM_BufAddText", lib_comBufAddText},
|
||||||
{"COM_BufInsertText", lib_comBufInsertText},
|
{"COM_BufInsertText", lib_comBufInsertText},
|
||||||
{"CV_RegisterVar", lib_cvRegisterVar},
|
{"CV_RegisterVar", lib_cvRegisterVar},
|
||||||
{"CONS_Printf", lib_consPrintf},
|
|
||||||
{"CV_FindVar", lib_cvFindVar},
|
{"CV_FindVar", lib_cvFindVar},
|
||||||
|
{"CV_Set", lib_cvSet},
|
||||||
|
{"CV_StealthSet", lib_cvStealthSet},
|
||||||
|
{"CV_AddValue", lib_cvAddValue},
|
||||||
|
{"CONS_Printf", lib_consPrintf},
|
||||||
{NULL, NULL}
|
{NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue