RedM Natives

_TASK_ITEM_INTERACTION_3

Hash0xD61D5E1AD9876DEB
Runtime nameTaskItemInteraction_3
NamespaceTASK
SideClient
NameCommunity guess
Docs
Since build1207

Signature

void _TASK_ITEM_INTERACTION_3(Ped ped, Hash item, Any* guid, Any p3, Any p4, Any p5, float p6);

Parameters

NameTypeDescription
pedPed—
itemHash—
guidAny*—
p3Any—
p4Any—
p5Any—
p6float—

Returns void

Description

Params: p3, p4, p5, p6: 0, 0, 0, -1.0f in R* Scripts

Usage

Lua
local guid = TaskItemInteraction_3(ped, item, p3, p4, p5, p6)

-- always works, by hash
local guid = Citizen.InvokeNative(0xD61D5E1AD9876DEB, ped, item, Citizen.PointerValueInt(), p3, p4, p5, p6)
JavaScript and C#
JavaScript
const guid = TaskItemInteraction_3(ped, item, p3, p4, p5, p6);

// by hash
const guid = Citizen.invokeNative('0xD61D5E1AD9876DEB', ped, item, Citizen.pointerValueInt(), p3, p4, p5, p6 + 0.0000001);
C#
var guid = new OutputArgument();
Function.Call((Hash)0xD61D5E1AD9876DEB, ped, item, guid, p3, p4, p5, p6);
// guid.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`.
  • Float parameters: Lua integers (10, or whole numbers decoded from NUI/JSON) are sent as ints and read as garbage. Write 10.0 or value + 0.0. The generated JS wrappers add 0.0000001 to non-zero floats for the same reason.
  • Pointer (out) arguments are not passed in Lua/JS: their values are returned after the result, in order.
  • 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.

Sources

alloc8or RDR3 NativeDB

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