This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
YimMenu/docs/lua/classes/pointer.md
tupoy-ya a1fb2ae6d8
feat(Lua)!: New Lua bindings (#3563)
* 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>
2024-08-14 08:40:09 +02:00

7.4 KiB

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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:

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_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_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_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_patch = pointer:patch_qword(value)

is_null()

  • Returns:
    • boolean: Returns true if the address is null.

Example Usage:

boolean = pointer:is_null()

is_valid()

  • Returns:
    • boolean: Returns true if the address is not null.

Example Usage:

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:

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:

number = pointer:get_address()

set_address(address)

Sets the memory address stored in the pointer object.

  • Parameters:
    • address (integer): new address.

Example Usage:

pointer:set_address(address)