[Dvars]: Fixed the dvars registering.

This commit is contained in:
JerryALT 2024-03-31 22:10:43 +03:00
parent 1c9bb68bd1
commit b7cdf2a230

View File

@ -90,9 +90,16 @@ namespace Dvars
// INTEGER
static Utils::function<Game::dvar_s* (const char* dvarName, Game::dvar_type typeInt, std::uint16_t flags, const char* description, std::int32_t defaultValue, std::int32_t null1, std::int32_t null2, std::int32_t null3, std::int32_t minValue, std::int32_t maxValue)>
Dvar_RegisterInt_r = 0x588750;
static Utils::function<void(Game::dvar_s* dvar, const char* dvarName, Game::dvar_type typeInt, std::uint16_t flags, const char* description, std::int32_t defaultValue, std::int32_t null1, std::int32_t null2, std::int32_t null3, std::int32_t minValue, std::int32_t maxValue)>
Dvar_ReregisterInt = 0x588610;
inline Game::dvar_s* Dvar_RegisterInt(const char* dvar_name, const char* description, std::int32_t default_value, std::int32_t min_value, std::int32_t max_value, std::uint16_t flags)
{
if (const auto& dvar = Functions::Dvar_FindVar(dvar_name); dvar)
{
Dvar_ReregisterInt(dvar, dvar_name, Game::dvar_type::integer, flags, description, default_value, 0, 0, 0, min_value, max_value);
return dvar;
}
return Dvar_RegisterInt_r(dvar_name, Game::dvar_type::integer, flags, description, default_value, 0, 0, 0, min_value, max_value);
}
@ -109,7 +116,6 @@ namespace Dvars
Dvar_ReregisterBool(dvar, dvar_name, Game::dvar_type::boolean, flags, description, default_value, 0, 0, 0, 0, 0);
return dvar;
}
else
return Dvar_RegisterNewBool(dvar_name, Game::dvar_type::boolean, flags, description, default_value, 0, 0, 0, 0, 0);
}
@ -126,38 +132,54 @@ namespace Dvars
Dvar_ReregisterEnum(dvar, dvar_name, Game::dvar_type::enumeration, flags, description, default_value, 0, 0, 0, enum_size, enum_data);
return dvar;
}
else
return Dvar_RegisterNewEnum(dvar_name, Game::dvar_type::enumeration, flags, description, default_value, 0, 0, 0, enum_size, enum_data);
}
// STRING
static Utils::function<Game::dvar_s* (const char* dvar_name, Game::dvar_type type_string, std::uint16_t flags, const char* description, const char* default_value, std::int32_t null1, std::int32_t null2, std::int32_t null3, std::int32_t null4, std::int32_t null5)>
Dvar_RegisterString_r = 0x588750;
static Utils::function<void(Game::dvar_s* dvar, const char* dvar_name, Game::dvar_type type_string, std::uint16_t flags, const char* description, const char* default_value, std::int32_t null1, std::int32_t null2, std::int32_t null3, std::int32_t null4, std::int32_t null5)>
Dvar_ReregisterString = 0x588610;
inline Game::dvar_s* Dvar_RegisterString(const char* dvar_name, const char* description, const char* default_value, std::uint16_t flags)
{
const auto dvar = Dvars::Functions::Dvar_FindVar(dvar_name);
if (!dvar)
if (const auto& dvar = Functions::Dvar_FindVar(dvar_name); dvar)
{
return Dvar_RegisterString_r(dvar_name, Game::dvar_type::string, flags, description, default_value, 0, 0, 0, 0, 0);
}
Dvar_ReregisterString(dvar, dvar_name, Game::dvar_type::string, flags, description, default_value, 0, 0, 0, 0, 0);
return dvar;
}
return Dvar_RegisterString_r(dvar_name, Game::dvar_type::string, flags, description, default_value, 0, 0, 0, 0, 0);
}
// VEC2
static Utils::function<Game::dvar_s* (const char* dvar_name, Game::dvar_type type_float2, std::uint16_t flags, const char* description, float x, float y, std::int32_t null1, std::int32_t null2, float min, float max)>
Dvar_RegisterVec2_r = 0x588750;
static Utils::function<void(Game::dvar_s* dvar, const char* dvar_name, Game::dvar_type type_float2, std::uint16_t flags, const char* description, float x, float y, std::int32_t null1, std::int32_t null2, float min, float max)>
Dvar_ReregisterVec2 = 0x588610;
inline Game::dvar_s* Dvar_RegisterVec2(const char* dvar_name, const char* description, float x, float y, float min_value, float max_value, std::uint16_t flags) {
inline Game::dvar_s* Dvar_RegisterVec2(const char* dvar_name, const char* description, float x, float y, float min_value, float max_value, std::uint16_t flags)
{
if (const auto& dvar = Functions::Dvar_FindVar(dvar_name); dvar)
{
Dvar_ReregisterVec2(dvar, dvar_name, Game::dvar_type::vec2, flags, description, x, y, 0, 0, min_value, max_value);
return dvar;
}
return Dvar_RegisterVec2_r(dvar_name, Game::dvar_type::vec2, flags, description, x, y, 0, 0, min_value, max_value);
}
// VEC3
static Utils::function<Game::dvar_s* (const char* dvar_name, Game::dvar_type type_float3, std::uint16_t flags, const char* description, float x, float y, float z, std::int32_t null, float min, float max)>
Dvar_RegisterVec3_r = 0x588750;
static Utils::function<void(Game::dvar_s* dvar, const char* dvar_name, Game::dvar_type type_float3, std::uint16_t flags, const char* description, float x, float y, float z, std::int32_t null, float min, float max)>
Dvar_ReregisterVec3 = 0x588610;
inline Game::dvar_s* Dvar_RegisterVec3(const char* dvar_name, const char* description, float x, float y, float z, float min_value, float max_value, std::uint16_t flags) {
inline Game::dvar_s* Dvar_RegisterVec3(const char* dvar_name, const char* description, float x, float y, float z, float min_value, float max_value, std::uint16_t flags)
{
if (const auto& dvar = Functions::Dvar_FindVar(dvar_name); dvar)
{
Dvar_ReregisterVec3(dvar, dvar_name, Game::dvar_type::vec3, flags, description, x, y, z, 0, min_value, max_value);
return dvar;
}
return Dvar_RegisterVec3_r(dvar_name, Game::dvar_type::vec3, flags, description, x, y, z, 0, min_value, max_value);
}
@ -174,21 +196,24 @@ namespace Dvars
Dvar_ReregisterVec4(dvar, dvar_name, Game::dvar_type::vec4, flags, description, x, y, z, w, min_value, max_value);
return dvar;
}
else
return Dvar_RegisterNewVec4(dvar_name, Game::dvar_type::vec4, flags, description, x, y, z, w, min_value, max_value);
}
// FLOAT
static Utils::function<Game::dvar_s* (const char* dvar_name, Game::dvar_type type_float2, std::uint16_t flags, const char* description, float x, float y, std::int32_t null1, std::int32_t null2, float min, float max)>
Dvar_RegisterFloat_r = 0x588750;
static Utils::function<void(Game::dvar_s* dvar, const char* dvar_name, Game::dvar_type type_float2, std::uint16_t flags, const char* description, float x, float y, std::int32_t null1, std::int32_t null2, float min, float max)>
Dvar_ReregisterFloat = 0x588610;
inline Game::dvar_s* Dvar_RegisterFloat(const char* dvar_name, const char* description, float default_value, float min_value, float max_value, std::uint16_t flags) {
inline Game::dvar_s* Dvar_RegisterFloat(const char* dvar_name, const char* description, float default_value, float min_value, float max_value, std::uint16_t flags)
{
if (const auto& dvar = Functions::Dvar_FindVar(dvar_name); dvar)
{
Dvar_ReregisterFloat(dvar, dvar_name, Game::dvar_type::value, flags, description, default_value, 0, 0, 0, min_value, max_value);
return dvar;
}
return Dvar_RegisterFloat_r(dvar_name, Game::dvar_type::value, flags, description, default_value, 0, 0, 0, min_value, max_value);
}
//REMOVE THIS CODE!!!
static Utils::function<Game::dvar_s* (const char* dvar_name, Game::dvar_type type, std::uint16_t flags, const char* description, int x, int y, int z, int w, int min, int max)>
Dvar_RegisterNew = 0x588750;
}
namespace Override