mirror of
https://github.com/Mr-X-GTA/YimMenu.git
synced 2025-01-04 00:23:27 +08:00
eecd20beaf
* feat(Lua): Make independent imgui independent. feat(Lua): Add a `pointer:set_address` binding. feat(Lua): Added `menu_event.Wndproc` event. fix(Lua): Fix `ImGui.SliderFloat3` binding. fix(Lua Docs): Partially fixed auto generated documentation. * fix(gui.cpp): include `lua_manager.hpp`. * fix(lua_manager.hpp): Added `draw_less_dependent_gui` function. * chore(Lua): Rename `add_independent_imgui` to `add_always_draw_imgui`. * docs(menu_event): Added docs for Wndporc event. * docs: Fixed a few more errors. * add reasoning and use native underlying format Co-authored-by: tupoy-ya <tupoy-ya@users.noreply.github.com> Co-authored-by: xiaoxiao921 <837334+xiaoxiao921@users.noreply.github.com>
359 lines
7.4 KiB
Markdown
359 lines
7.4 KiB
Markdown
# Class: pointer
|
|
|
|
Class representing a 64-bit memory address.
|
|
|
|
## Constructors (1)
|
|
|
|
### `new(address)`
|
|
|
|
Returns a memory instance, with the given address.
|
|
|
|
- **Parameters:**
|
|
- `address` (integer): Address
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
myInstance = pointer:new(address)
|
|
```
|
|
|
|
## Functions (26)
|
|
|
|
### `add(offset)`
|
|
|
|
Adds an offset to the current memory address and returns a new pointer object.
|
|
|
|
- **Parameters:**
|
|
- `offset` (integer): offset
|
|
|
|
- **Returns:**
|
|
- `pointer`: new pointer object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer = pointer:add(offset)
|
|
```
|
|
|
|
### `sub(offset)`
|
|
|
|
Subs an offset to the current memory address and returns a new pointer object.
|
|
|
|
- **Parameters:**
|
|
- `offset` (integer): offset
|
|
|
|
- **Returns:**
|
|
- `pointer`: new pointer object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer = pointer:sub(offset)
|
|
```
|
|
|
|
### `rip(offset)`
|
|
|
|
Rips the current memory address and returns a new pointer object.
|
|
|
|
- **Parameters:**
|
|
- `offset` (integer): offset
|
|
|
|
- **Returns:**
|
|
- `pointer`: new pointer object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer = pointer:rip(offset)
|
|
```
|
|
|
|
### `get_byte()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `number`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_byte()
|
|
```
|
|
|
|
### `get_word()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `number`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_word()
|
|
```
|
|
|
|
### `get_int()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `number`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_int()
|
|
```
|
|
|
|
### `get_dword()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `number`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_dword()
|
|
```
|
|
|
|
### `get_float()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `float`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
float = pointer:get_float()
|
|
```
|
|
|
|
### `get_qword()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `number`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_qword()
|
|
```
|
|
|
|
### `set_byte(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_byte(value)
|
|
```
|
|
|
|
### `set_word(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_word(value)
|
|
```
|
|
|
|
### `set_int(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_int(value)
|
|
```
|
|
|
|
### `set_dword(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_dword(value)
|
|
```
|
|
|
|
### `set_float(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (float): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_float(value)
|
|
```
|
|
|
|
### `set_qword(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_qword(value)
|
|
```
|
|
|
|
### `get_string()`
|
|
|
|
Retrieves the value stored at the memory address as the specified type.
|
|
|
|
- **Returns:**
|
|
- `string`: the value stored at the memory address as the specified type.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
string = pointer:get_string()
|
|
```
|
|
|
|
### `set_string(value)`
|
|
|
|
Sets the value at the memory address to the specified value of the given type.
|
|
|
|
- **Parameters:**
|
|
- `value` (string): new value.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_string(value)
|
|
```
|
|
|
|
### `patch_byte(value)`
|
|
|
|
Creates a memory patch for modifying the value at the memory address with the specified value.
|
|
The modified value is applied when you call the apply function on the lua_patch object.
|
|
The original value is restored when you call the restore function on the lua_patch object.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
- **Returns:**
|
|
- `lua_patch`: memory patch instance for modifying the value at the memory address with the specified value. Can call apply / restore on the object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
lua_patch = pointer:patch_byte(value)
|
|
```
|
|
|
|
### `patch_word(value)`
|
|
|
|
Creates a memory patch for modifying the value at the memory address with the specified value.
|
|
The modified value is applied when you call the apply function on the lua_patch object.
|
|
The original value is restored when you call the restore function on the lua_patch object.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
- **Returns:**
|
|
- `lua_patch`: memory patch instance for modifying the value at the memory address with the specified value. Can call apply / restore on the object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
lua_patch = pointer:patch_word(value)
|
|
```
|
|
|
|
### `patch_dword(value)`
|
|
|
|
Creates a memory patch for modifying the value at the memory address with the specified value.
|
|
The modified value is applied when you call the apply function on the lua_patch object.
|
|
The original value is restored when you call the restore function on the lua_patch object.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
- **Returns:**
|
|
- `lua_patch`: memory patch instance for modifying the value at the memory address with the specified value. Can call apply / restore on the object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
lua_patch = pointer:patch_dword(value)
|
|
```
|
|
|
|
### `patch_qword(value)`
|
|
|
|
Creates a memory patch for modifying the value at the memory address with the specified value.
|
|
The modified value is applied when you call the apply function on the lua_patch object.
|
|
The original value is restored when you call the restore function on the lua_patch object.
|
|
|
|
- **Parameters:**
|
|
- `value` (number): new value.
|
|
|
|
- **Returns:**
|
|
- `lua_patch`: memory patch instance for modifying the value at the memory address with the specified value. Can call apply / restore on the object.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
lua_patch = pointer:patch_qword(value)
|
|
```
|
|
|
|
### `is_null()`
|
|
|
|
- **Returns:**
|
|
- `boolean`: Returns true if the address is null.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
boolean = pointer:is_null()
|
|
```
|
|
|
|
### `is_valid()`
|
|
|
|
- **Returns:**
|
|
- `boolean`: Returns true if the address is not null.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
boolean = pointer:is_valid()
|
|
```
|
|
|
|
### `deref()`
|
|
|
|
Dereferences the memory address and returns a new pointer object pointing to the value at that address.
|
|
|
|
- **Returns:**
|
|
- `pointer`: A new pointer object pointing to the value at that address.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer = pointer:deref()
|
|
```
|
|
|
|
### `get_address()`
|
|
|
|
Retrieves the memory address stored in the pointer object.
|
|
|
|
- **Returns:**
|
|
- `number`: The memory address stored in the pointer object as a number.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
number = pointer:get_address()
|
|
```
|
|
|
|
### `set_address(address)`
|
|
|
|
Sets the memory address stored in the pointer object.
|
|
|
|
- **Parameters:**
|
|
- `address` (integer): new address.
|
|
|
|
**Example Usage:**
|
|
```lua
|
|
pointer:set_address(address)
|
|
```
|
|
|
|
|