RedM Natives

_ITEMDATABASE_GET_SHOP_LAYOUT_PAGE_INFO_BY_INDEX

Outputs the layout page info at the selected index.

Hash0xDBEADA0DF5F9AB9F
Runtime nameItemdatabaseGetShopLayoutPageInfoByIndex
NamespaceITEMDATABASE
SideClient
NameCommunity guess
Docs
Since build1355

Signature

BOOL _ITEMDATABASE_GET_SHOP_LAYOUT_PAGE_INFO_BY_INDEX(Hash layout, int index, Any* outData);

Parameters

NameTypeDescription
layoutHash—
indexint—
outDataAny*—

Returns BOOL

Description

alloc8or RDR3 NativeDB

Outputs the layout page info at the selected index.
struct LayoutPageInfo
{
	alignas(8) Hash pageKey;
	alignas(8) Hash unk1;
	alignas(8) BOOL unk2;
	alignas(8) int  numItems;
};

VORPCORE RDR3natives

Returns the layout page info at the selected index

Usage

Lua
local retval, outData = ItemdatabaseGetShopLayoutPageInfoByIndex(layout, index, outData)

-- always works, by hash
local retval, outData = Citizen.InvokeNative(0xDBEADA0DF5F9AB9F, layout, index, Citizen.PointerValueIntInitialized(outData), Citizen.ReturnResultAnyway())
JavaScript and C#
JavaScript
const [retval, outData] = ItemdatabaseGetShopLayoutPageInfoByIndex(layout, index, outData);

// by hash
const [retval, outData] = Citizen.invokeNative('0xDBEADA0DF5F9AB9F', layout, index, Citizen.pointerValueIntInitialized(outData), Citizen.returnResultAnyway());
C#
var outData = new OutputArgument();
bool retval = Function.Call<bool>((Hash)0xDBEADA0DF5F9AB9F, layout, index, outData);
// outData.GetResult<int>()
  • Hash parameters: the named function also accepts a string and hashes it for you; Citizen.InvokeNative needs the number — pass joaat("name") or a backtick literal like `name`.
  • The last argument is an in/out pointer: pass its initial value, and the updated value is returned after the result.
  • Any* arguments are often structs. Build them with a DataView buffer and pass it with :Buffer() — see the examples and notes below.
  • The name is a community guess and may change. If the named call is missing in your client build, use InvokeNative with the hash — it always works.

Examples

LUA · VORPCORE RDR3natives
local data = DataView.ArrayBuffer(4 * 8)
if (Citizen.InvokeNative(0xDBEADA0DF5F9AB9F, `st_doctor`, 0, data:Buffer()) == 1) then
local pageKey = data:GetInt32(0)
end

Sources

alloc8or RDR3 NativeDB · VORPCORE RDR3natives

Something wrong or missing? Contribute a verified note — corrections ship through pull requests.