mirror of
https://github.com/Mr-X-GTA/YimMenu.git
synced 2025-01-04 00:23:27 +08:00
feat(lua): add tunable overloads for getting / setting values through the already joaated tunable value. (#2417)
This commit is contained in:
parent
9d7e5893c6
commit
e56a6fd38f
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
Table for manipulating gta tunables.
|
Table for manipulating gta tunables.
|
||||||
|
|
||||||
## Functions (6)
|
## Functions (12)
|
||||||
|
|
||||||
### `get_int(tunable_name)`
|
### `get_int(tunable_name)`
|
||||||
|
|
||||||
@ -43,6 +43,45 @@ float = tunables.get_float(tunable_name)
|
|||||||
boolean = tunables.get_bool(tunable_name)
|
boolean = tunables.get_bool(tunable_name)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### `get_int(tunable_joaated_value)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
|
||||||
|
- **Returns:**
|
||||||
|
- `integer`: The value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
integer = tunables.get_int(tunable_joaated_value)
|
||||||
|
```
|
||||||
|
|
||||||
|
### `get_float(tunable_joaated_value)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
|
||||||
|
- **Returns:**
|
||||||
|
- `float`: The value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
float = tunables.get_float(tunable_joaated_value)
|
||||||
|
```
|
||||||
|
|
||||||
|
### `get_bool(tunable_joaated_value)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
|
||||||
|
- **Returns:**
|
||||||
|
- `boolean`: The value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
boolean = tunables.get_bool(tunable_joaated_value)
|
||||||
|
```
|
||||||
|
|
||||||
### `set_int(tunable_name, val)`
|
### `set_int(tunable_name, val)`
|
||||||
|
|
||||||
- **Parameters:**
|
- **Parameters:**
|
||||||
@ -76,4 +115,37 @@ tunables.set_float(tunable_name, val)
|
|||||||
tunables.set_bool(tunable_name, val)
|
tunables.set_bool(tunable_name, val)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### `set_int(tunable_joaated_value, val)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
- `val` (integer): The new value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
tunables.set_int(tunable_joaated_value, val)
|
||||||
|
```
|
||||||
|
|
||||||
|
### `set_float(tunable_joaated_value, val)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
- `val` (float): The new value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
tunables.set_float(tunable_joaated_value, val)
|
||||||
|
```
|
||||||
|
|
||||||
|
### `set_bool(tunable_joaated_value, val)`
|
||||||
|
|
||||||
|
- **Parameters:**
|
||||||
|
- `tunable_joaated_value` (integer): The joaated value of the tunable.
|
||||||
|
- `val` (boolean): The new value of the given tunable.
|
||||||
|
|
||||||
|
**Example Usage:**
|
||||||
|
```lua
|
||||||
|
tunables.set_bool(tunable_joaated_value, val)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,11 +7,13 @@ namespace lua::tunables
|
|||||||
void bind(sol::state& state)
|
void bind(sol::state& state)
|
||||||
{
|
{
|
||||||
auto ns = state["tunables"].get_or_create<sol::table>();
|
auto ns = state["tunables"].get_or_create<sol::table>();
|
||||||
ns["get_int"] = get<int>;
|
|
||||||
ns["get_float"] = get<float>;
|
ns["get_int"] = sol::overload(get<int>, get_already_joaated<int>);
|
||||||
ns["get_bool"] = get<bool>;
|
ns["get_float"] = sol::overload(get<float>, get_already_joaated<float>);
|
||||||
ns["set_int"] = set<int>;
|
ns["get_bool"] = sol::overload(get<bool>, get_already_joaated<bool>);
|
||||||
ns["set_float"] = set<float>;
|
|
||||||
ns["set_bool"] = set<bool>;
|
ns["set_int"] = sol::overload(set<int>, set_already_joaated<int>);
|
||||||
|
ns["set_float"] = sol::overload(set<float>, set_already_joaated<float>);
|
||||||
|
ns["set_bool"] = sol::overload(set<bool>, set_already_joaated<bool>);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -34,6 +34,33 @@ namespace lua::tunables
|
|||||||
return T();
|
return T();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: get_int
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Returns: integer: The value of the given tunable.
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: get_float
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Returns: float: The value of the given tunable.
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: get_bool
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Returns: boolean: The value of the given tunable.
|
||||||
|
|
||||||
|
template<typename T>
|
||||||
|
T get_already_joaated(rage::joaat_t tunable_joaated_value)
|
||||||
|
{
|
||||||
|
if (auto tunable = big::g_tunables_service->get_tunable<T*>(tunable_joaated_value))
|
||||||
|
return *tunable;
|
||||||
|
|
||||||
|
return T();
|
||||||
|
}
|
||||||
|
|
||||||
// Lua API: Function
|
// Lua API: Function
|
||||||
// Table: tunables
|
// Table: tunables
|
||||||
// Name: set_int
|
// Name: set_int
|
||||||
@ -58,5 +85,29 @@ namespace lua::tunables
|
|||||||
big::g_tunables_service->set_tunable<T>(rage::joaat(tunable_name), val);
|
big::g_tunables_service->set_tunable<T>(rage::joaat(tunable_name), val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: set_int
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Param: val: integer: The new value of the given tunable.
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: set_float
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Param: val: float: The new value of the given tunable.
|
||||||
|
|
||||||
|
// Lua API: Function
|
||||||
|
// Table: tunables
|
||||||
|
// Name: set_bool
|
||||||
|
// Param: tunable_joaated_value: integer: The joaated value of the tunable.
|
||||||
|
// Param: val: boolean: The new value of the given tunable.
|
||||||
|
|
||||||
|
template<typename T>
|
||||||
|
void set_already_joaated(rage::joaat_t tunable_joaated_value, T val)
|
||||||
|
{
|
||||||
|
big::g_tunables_service->set_tunable<T>(tunable_joaated_value, val);
|
||||||
|
}
|
||||||
|
|
||||||
void bind(sol::state& state);
|
void bind(sol::state& state);
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user