RedM Natives

GET_HEADING_FROM_VECTOR_2D

Hash0x38D5202FF9271C62
Runtime nameGetHeadingFromVector_2d
NamespaceMISC
SideClient
NameOfficial
Docs
Since build1207
GTA V hash0x2FFB6B224F4B2926

Signature

float GET_HEADING_FROM_VECTOR_2D(float dx, float dy);

Parameters

NameTypeDescription
dxfloat—
dyfloat—

Returns float

Description

dx = x1 - x2
dy = y1 - y2

Usage

Lua
local retval = GetHeadingFromVector_2d(dx, dy)

-- always works, by hash
local retval = Citizen.InvokeNative(0x38D5202FF9271C62, dx, dy, Citizen.ResultAsFloat())
JavaScript and C#
JavaScript
const retval = GetHeadingFromVector_2d(dx, dy);

// by hash
const retval = Citizen.invokeNative('0x38D5202FF9271C62', dx + 0.0000001, dy + 0.0000001, Citizen.returnResultAnyway(), Citizen.resultAsFloat());
C#
float retval = Function.Call<float>((Hash)0x38D5202FF9271C62, dx, dy);
  • 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.

Sources

alloc8or RDR3 NativeDB

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