RedM Natives

TASK_START_SCENARIO_IN_PLACE_HASH

conditionalHash (optionally): Every conditional anim has requirements to play it.

Hash0x524B54361229154F
Runtime nameTaskStartScenarioInPlaceHash
NamespaceTASK
SideClient
NameOfficial
Docs
Since build1207

Signature

void TASK_START_SCENARIO_IN_PLACE_HASH(Ped ped, Hash scenarioHash, int duration, BOOL playEnterAnim, Hash conditionalHash, float heading, BOOL idleForever);

Parameters

NameTypeDescription
pedPed—
scenarioHashHash—
durationint—
playEnterAnimBOOL—
conditionalHashHash—
headingfloat—
idleForeverBOOL—

Returns void

Description

https://github.com/femga/rdr3_discoveries/blob/master/animations/scenarios
Params: duration in milliseconds

conditionalHash (optionally):
0 = play random conditional anim.
Every conditional anim has requirements to play it.
If requirements are not met, ped plays random allowed conditional anim or can be stuck.
For example, this scenario type has possible conditional anim WORLD_HUMAN_LEAN_BACK_WALL_SMOKING_MALE_D, but it can not be played by player, because condition is set to NOT be CAIConditionIsPlayer (check file amb_rest.meta and amb_rest_CA.meta with OPENIV to clarify requirements).

Usage

Lua
TaskStartScenarioInPlaceHash(ped, scenarioHash, duration, playEnterAnim, conditionalHash, heading, idleForever)

-- always works, by hash
Citizen.InvokeNative(0x524B54361229154F, ped, scenarioHash, duration, playEnterAnim, conditionalHash, heading, idleForever)
JavaScript and C#
JavaScript
TaskStartScenarioInPlaceHash(ped, scenarioHash, duration, playEnterAnim, conditionalHash, heading, idleForever);

// by hash
Citizen.invokeNative('0x524B54361229154F', ped, scenarioHash, duration, playEnterAnim, conditionalHash, heading + 0.0000001, idleForever);
C#
Function.Call((Hash)0x524B54361229154F, ped, scenarioHash, duration, playEnterAnim, conditionalHash, heading, idleForever);
  • 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.

Sources

alloc8or RDR3 NativeDB

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