- all optionmenu items scriptified, but not integrated yet.

This commit is contained in:
Christoph Oelckers 2017-02-11 00:36:53 +01:00
commit f91d91d6e8
19 changed files with 1953 additions and 207 deletions

View file

@ -202,6 +202,36 @@ DEFINE_ACTION_FUNCTION(_CVar, GetString)
ACTION_RETURN_STRING(v.String);
}
DEFINE_ACTION_FUNCTION(_CVar, SetInt)
{
PARAM_SELF_STRUCT_PROLOGUE(FBaseCVar);
PARAM_INT(val);
UCVarValue v;
v.Int = val;
self->SetGenericRep(v, CVAR_Int);
return 0;
}
DEFINE_ACTION_FUNCTION(_CVar, SetFloat)
{
PARAM_SELF_STRUCT_PROLOGUE(FBaseCVar);
PARAM_FLOAT(val);
UCVarValue v;
v.Float = val;
self->SetGenericRep(v, CVAR_Float);
return 0;
}
DEFINE_ACTION_FUNCTION(_CVar, SetString)
{
PARAM_SELF_STRUCT_PROLOGUE(FBaseCVar);
PARAM_STRING(val);
UCVarValue v;
v.String = val.GetChars();
self->SetGenericRep(v, CVAR_String);
return 0;
}
bool FBaseCVar::ToBool (UCVarValue value, ECVarType type)
{
switch (type)
@ -643,6 +673,12 @@ void FBaseCVar::DisableCallbacks ()
m_UseCallback = false;
}
DEFINE_ACTION_FUNCTION(_CVar, GetRealType)
{
PARAM_SELF_STRUCT_PROLOGUE(FBaseCVar);
ACTION_RETURN_INT(self->GetRealType());
}
//
// Boolean cvar implementation
//
@ -1082,6 +1118,13 @@ void FBaseCVar::ResetToDefault ()
}
}
DEFINE_ACTION_FUNCTION(_CVar, ResetToDefault)
{
PARAM_SELF_STRUCT_PROLOGUE(FBaseCVar);
self->ResetToDefault();
return 0;
}
//
// Flag cvar implementation
//
@ -1487,6 +1530,13 @@ FBaseCVar *FindCVar (const char *var_name, FBaseCVar **prev)
return var;
}
DEFINE_ACTION_FUNCTION(_CVar, FindCVar)
{
PARAM_PROLOGUE;
PARAM_NAME(name);
ACTION_RETURN_POINTER(FindCVar(name, nullptr));
}
FBaseCVar *FindCVarSub (const char *var_name, int namelen)
{
FBaseCVar *var;