import { Vector2 } from '../types/Vector2'; import { Vector3 } from '../types/Vector3'; import { Vector4 } from '../types/Vector4'; import { Color } from '../types/Color'; import { createFromHandle } from '../types/HandleRegistry'; import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f, int, uint, float, Hash, u8, u16, u32, u64, i8, i16, i32, i64 } from '../types/NativeAliases'; export class Uievents { /** * eventData: * struct UI_SCRIPT_EVENT * { * alignas(8) eUIScriptEventType eventType; // https://alloc8or.re/rdr3/doc/enums/eUIScriptEventType.txt * alignas(8) int intParam; * alignas(8) Hash hashParam; * alignas(8) Hash datastoreParam; * }; Old name: _EVENT_MANAGER_GET_EVENT * * @param hash * @returns eventData */ static eventsUiGetMessage(hash: string | number): [boolean, number] { const result = inv<[boolean, number]>('0xE24E957294241444', _h(hash), pvi(), rai()); return [!!result[0], result[1]]; } /** * Old name: _EVENT_MANAGER_POP_EVENT * * @param hash */ static eventsUiPopMessage(hash: string | number): void { inv('0x8E8A2369F48EC839', _h(hash)); } /** * eventData: see EVENTS_UI_GET_MESSAGE Old name: _EVENT_MANAGER_PEEK_EVENT * * @param hash * @returns eventData */ static eventsUiPeekMessage(hash: string | number): [boolean, number] { const result = inv<[boolean, number]>('0x90237103F27F7937', _h(hash), pvi(), rai()); return [!!result[0], result[1]]; } /** * Old name: _EVENT_MANAGER_IS_EVENT_PENDING * * @param hash * @returns */ static eventsUiIsPending(hash: string | number): boolean { return !!inv('0x67ED5A7963F2F722', _h(hash), rai()); } }