@nativewrappers/redm-codegen 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/dist/classes/AnimScene.d.ts +82 -82
  2. package/dist/classes/AnimScene.d.ts.map +1 -1
  3. package/dist/classes/AnimScene.js +124 -124
  4. package/dist/classes/BaseModel.d.ts +29 -29
  5. package/dist/classes/BaseModel.d.ts.map +1 -1
  6. package/dist/classes/BaseModel.js +43 -43
  7. package/dist/classes/BaseTask.d.ts +43 -43
  8. package/dist/classes/BaseTask.d.ts.map +1 -1
  9. package/dist/classes/BaseTask.js +53 -53
  10. package/dist/classes/Cam.d.ts +82 -82
  11. package/dist/classes/Cam.d.ts.map +1 -1
  12. package/dist/classes/Cam.js +115 -115
  13. package/dist/classes/Entity.d.ts +250 -250
  14. package/dist/classes/Entity.d.ts.map +1 -1
  15. package/dist/classes/Entity.js +350 -350
  16. package/dist/classes/Interior.d.ts +27 -27
  17. package/dist/classes/Interior.d.ts.map +1 -1
  18. package/dist/classes/Interior.js +42 -42
  19. package/dist/classes/Ped.d.ts +55 -55
  20. package/dist/classes/Ped.d.ts.map +1 -1
  21. package/dist/classes/Ped.js +76 -76
  22. package/dist/classes/PedTask.d.ts +797 -797
  23. package/dist/classes/PedTask.d.ts.map +1 -1
  24. package/dist/classes/PedTask.js +1023 -1023
  25. package/dist/classes/PersChar.d.ts +13 -13
  26. package/dist/classes/PersChar.d.ts.map +1 -1
  27. package/dist/classes/PersChar.js +27 -27
  28. package/dist/classes/Pickup.d.ts +8 -8
  29. package/dist/classes/Pickup.d.ts.map +1 -1
  30. package/dist/classes/Pickup.js +15 -15
  31. package/dist/classes/Player.d.ts +185 -185
  32. package/dist/classes/Player.d.ts.map +1 -1
  33. package/dist/classes/Player.js +251 -251
  34. package/dist/classes/Prop.d.ts +130 -130
  35. package/dist/classes/Prop.d.ts.map +1 -1
  36. package/dist/classes/Prop.js +188 -188
  37. package/dist/classes/PropSet.d.ts +17 -17
  38. package/dist/classes/PropSet.d.ts.map +1 -1
  39. package/dist/classes/PropSet.js +25 -25
  40. package/dist/classes/VehicleTask.d.ts +23 -23
  41. package/dist/classes/VehicleTask.d.ts.map +1 -1
  42. package/dist/classes/VehicleTask.js +30 -30
  43. package/dist/classes/Volume.d.ts +39 -39
  44. package/dist/classes/Volume.d.ts.map +1 -1
  45. package/dist/classes/Volume.js +54 -54
  46. package/dist/classes/Weapon.d.ts +291 -291
  47. package/dist/classes/Weapon.d.ts.map +1 -1
  48. package/dist/classes/Weapon.js +414 -414
  49. package/dist/namespaces/Animscene.d.ts +63 -63
  50. package/dist/namespaces/Animscene.d.ts.map +1 -1
  51. package/dist/namespaces/Animscene.js +83 -83
  52. package/dist/namespaces/Audio.d.ts +464 -464
  53. package/dist/namespaces/Audio.d.ts.map +1 -1
  54. package/dist/namespaces/Audio.js +650 -650
  55. package/dist/namespaces/Bounty.d.ts +57 -57
  56. package/dist/namespaces/Bounty.d.ts.map +1 -1
  57. package/dist/namespaces/Bounty.js +90 -90
  58. package/dist/namespaces/CamStatics.d.ts +426 -426
  59. package/dist/namespaces/CamStatics.d.ts.map +1 -1
  60. package/dist/namespaces/CamStatics.js +609 -609
  61. package/dist/namespaces/Collection.d.ts +81 -81
  62. package/dist/namespaces/Collection.d.ts.map +1 -1
  63. package/dist/namespaces/Collection.js +113 -113
  64. package/dist/namespaces/Compendium.d.ts +38 -38
  65. package/dist/namespaces/Compendium.d.ts.map +1 -1
  66. package/dist/namespaces/Compendium.js +52 -52
  67. package/dist/namespaces/Crashlog.d.ts +10 -10
  68. package/dist/namespaces/Crashlog.d.ts.map +1 -1
  69. package/dist/namespaces/Crashlog.js +14 -14
  70. package/dist/namespaces/Databinding.d.ts +174 -174
  71. package/dist/namespaces/Databinding.d.ts.map +1 -1
  72. package/dist/namespaces/Databinding.js +266 -266
  73. package/dist/namespaces/EntityStatics.d.ts +110 -110
  74. package/dist/namespaces/EntityStatics.d.ts.map +1 -1
  75. package/dist/namespaces/EntityStatics.js +146 -146
  76. package/dist/namespaces/Graphics.d.ts +547 -547
  77. package/dist/namespaces/Graphics.d.ts.map +1 -1
  78. package/dist/namespaces/Graphics.js +731 -731
  79. package/dist/namespaces/Hud.d.ts +395 -395
  80. package/dist/namespaces/Hud.d.ts.map +1 -1
  81. package/dist/namespaces/Hud.js +564 -564
  82. package/dist/namespaces/InteriorStatics.d.ts +40 -40
  83. package/dist/namespaces/InteriorStatics.d.ts.map +1 -1
  84. package/dist/namespaces/InteriorStatics.js +56 -56
  85. package/dist/namespaces/Inventory.d.ts +107 -107
  86. package/dist/namespaces/Inventory.d.ts.map +1 -1
  87. package/dist/namespaces/Inventory.js +149 -149
  88. package/dist/namespaces/Itemdatabase.d.ts +5 -5
  89. package/dist/namespaces/Itemdatabase.d.ts.map +1 -1
  90. package/dist/namespaces/Itemdatabase.js +7 -7
  91. package/dist/namespaces/Map.d.ts +173 -173
  92. package/dist/namespaces/Map.d.ts.map +1 -1
  93. package/dist/namespaces/Map.js +240 -240
  94. package/dist/namespaces/Minigame.d.ts +56 -56
  95. package/dist/namespaces/Minigame.d.ts.map +1 -1
  96. package/dist/namespaces/Minigame.js +80 -80
  97. package/dist/namespaces/Network.d.ts +964 -964
  98. package/dist/namespaces/Network.d.ts.map +1 -1
  99. package/dist/namespaces/Network.js +1333 -1333
  100. package/dist/namespaces/Object.d.ts +240 -240
  101. package/dist/namespaces/Object.d.ts.map +1 -1
  102. package/dist/namespaces/Object.js +337 -337
  103. package/dist/namespaces/Pad.d.ts +95 -95
  104. package/dist/namespaces/Pad.d.ts.map +1 -1
  105. package/dist/namespaces/Pad.js +127 -127
  106. package/dist/namespaces/PedStatics.d.ts +18 -18
  107. package/dist/namespaces/PedStatics.d.ts.map +1 -1
  108. package/dist/namespaces/PedStatics.js +26 -26
  109. package/dist/namespaces/Perschar.d.ts +46 -46
  110. package/dist/namespaces/Perschar.d.ts.map +1 -1
  111. package/dist/namespaces/Perschar.js +66 -66
  112. package/dist/namespaces/Physics.d.ts +207 -207
  113. package/dist/namespaces/Physics.d.ts.map +1 -1
  114. package/dist/namespaces/Physics.js +315 -315
  115. package/dist/namespaces/PlayerStatics.d.ts +68 -68
  116. package/dist/namespaces/PlayerStatics.d.ts.map +1 -1
  117. package/dist/namespaces/PlayerStatics.js +95 -95
  118. package/dist/namespaces/Population.d.ts +86 -86
  119. package/dist/namespaces/Population.d.ts.map +1 -1
  120. package/dist/namespaces/Population.js +116 -116
  121. package/dist/namespaces/Posse.d.ts +43 -43
  122. package/dist/namespaces/Posse.d.ts.map +1 -1
  123. package/dist/namespaces/Posse.js +67 -67
  124. package/dist/namespaces/Propset.d.ts +59 -59
  125. package/dist/namespaces/Propset.d.ts.map +1 -1
  126. package/dist/namespaces/Propset.js +81 -81
  127. package/dist/namespaces/Shapetest.d.ts +11 -11
  128. package/dist/namespaces/Shapetest.d.ts.map +1 -1
  129. package/dist/namespaces/Shapetest.js +13 -13
  130. package/dist/namespaces/Stats.d.ts +90 -90
  131. package/dist/namespaces/Stats.d.ts.map +1 -1
  132. package/dist/namespaces/Stats.js +127 -127
  133. package/dist/namespaces/Streaming.d.ts +127 -127
  134. package/dist/namespaces/Streaming.d.ts.map +1 -1
  135. package/dist/namespaces/Streaming.js +193 -193
  136. package/dist/namespaces/Task.d.ts +346 -346
  137. package/dist/namespaces/Task.d.ts.map +1 -1
  138. package/dist/namespaces/Task.js +525 -525
  139. package/dist/namespaces/Telemetry.d.ts +176 -176
  140. package/dist/namespaces/Telemetry.d.ts.map +1 -1
  141. package/dist/namespaces/Telemetry.js +255 -255
  142. package/dist/namespaces/VolumeStatics.d.ts +64 -64
  143. package/dist/namespaces/VolumeStatics.d.ts.map +1 -1
  144. package/dist/namespaces/VolumeStatics.js +85 -85
  145. package/dist/namespaces/Water.d.ts +27 -27
  146. package/dist/namespaces/Water.d.ts.map +1 -1
  147. package/dist/namespaces/Water.js +41 -41
  148. package/dist/namespaces/WeaponStatics.d.ts +234 -234
  149. package/dist/namespaces/WeaponStatics.d.ts.map +1 -1
  150. package/dist/namespaces/WeaponStatics.js +320 -320
  151. package/dist/namespaces/Zone.d.ts +7 -7
  152. package/dist/namespaces/Zone.d.ts.map +1 -1
  153. package/dist/namespaces/Zone.js +9 -9
  154. package/package.json +1 -1
  155. package/src/classes/AnimScene.ts +133 -133
  156. package/src/classes/BaseModel.ts +50 -50
  157. package/src/classes/BaseTask.ts +55 -55
  158. package/src/classes/Cam.ts +126 -126
  159. package/src/classes/Entity.ts +365 -365
  160. package/src/classes/Interior.ts +43 -43
  161. package/src/classes/Ped.ts +86 -86
  162. package/src/classes/PedTask.ts +2067 -2067
  163. package/src/classes/PersChar.ts +34 -34
  164. package/src/classes/Pickup.ts +16 -16
  165. package/src/classes/Player.ts +296 -296
  166. package/src/classes/Prop.ts +203 -203
  167. package/src/classes/PropSet.ts +29 -29
  168. package/src/classes/VehicleTask.ts +32 -32
  169. package/src/classes/Volume.ts +61 -61
  170. package/src/classes/Weapon.ts +427 -427
  171. package/src/namespaces/Animscene.ts +86 -86
  172. package/src/namespaces/Audio.ts +760 -760
  173. package/src/namespaces/Bounty.ts +102 -102
  174. package/src/namespaces/CamStatics.ts +631 -631
  175. package/src/namespaces/Collection.ts +114 -114
  176. package/src/namespaces/Compendium.ts +59 -59
  177. package/src/namespaces/Crashlog.ts +16 -16
  178. package/src/namespaces/Databinding.ts +282 -282
  179. package/src/namespaces/EntityStatics.ts +158 -158
  180. package/src/namespaces/Graphics.ts +1140 -1140
  181. package/src/namespaces/Hud.ts +592 -592
  182. package/src/namespaces/InteriorStatics.ts +64 -64
  183. package/src/namespaces/Inventory.ts +165 -165
  184. package/src/namespaces/Itemdatabase.ts +8 -8
  185. package/src/namespaces/Map.ts +256 -256
  186. package/src/namespaces/Minigame.ts +92 -92
  187. package/src/namespaces/Network.ts +1392 -1392
  188. package/src/namespaces/Object.ts +350 -350
  189. package/src/namespaces/Pad.ts +127 -127
  190. package/src/namespaces/PedStatics.ts +30 -30
  191. package/src/namespaces/Perschar.ts +76 -76
  192. package/src/namespaces/Physics.ts +327 -327
  193. package/src/namespaces/PlayerStatics.ts +103 -103
  194. package/src/namespaces/Population.ts +131 -131
  195. package/src/namespaces/Posse.ts +67 -67
  196. package/src/namespaces/Propset.ts +92 -92
  197. package/src/namespaces/Shapetest.ts +14 -14
  198. package/src/namespaces/Stats.ts +143 -143
  199. package/src/namespaces/Streaming.ts +226 -226
  200. package/src/namespaces/Task.ts +498 -498
  201. package/src/namespaces/Telemetry.ts +261 -261
  202. package/src/namespaces/VolumeStatics.ts +87 -87
  203. package/src/namespaces/Water.ts +47 -47
  204. package/src/namespaces/WeaponStatics.ts +325 -325
  205. package/src/namespaces/Zone.ts +10 -10
@@ -7,31 +7,54 @@ export class PedTask extends BaseTask {
7
7
  super(entity);
8
8
  }
9
9
  /**
10
- * @returns
10
+ * Baits: p_fishHook02x, p_baitBread01x, p_baitCorn01x, p_baitCheese01x, p_baitWorm01x, p_baitCricket01x, p_crawdad01x, p_finisheDragonfly01x, p_finisdFishlure01x, p_finishdCrawd01x, p_finisheDragonflyLegendary01x, p_finisdFishlureLegendary01x, p_finishdCrawdLegendary01x, p_lgoc_spinner_v4
11
+ *
12
+ * @param bait
13
+ * @param withoutBuoy
14
+ * @param instantly
11
15
  */
12
- getPedWaypointOverrideSpeed() {
13
- return inv('0xD39A2F3E7FCAFF08', this.entity.handle, raf());
16
+ setFishingBait(bait, withoutBuoy, instantly) {
17
+ inv('0x9B0C7FA063E67629', this.entity.handle, bait, withoutBuoy, instantly);
14
18
  }
15
19
  /**
16
- * Climbs or vaults the nearest thing.
20
+ * Params: p3, p4, p5, p6: 0, 0, 0, -1.0f in R* Scripts
17
21
  *
18
- * @param unused
22
+ * @param item
23
+ * @param p3
24
+ * @param p4
25
+ * @param p5
26
+ * @param p6
27
+ * @returns guid
19
28
  */
20
- climb(unused) {
21
- inv('0x89D9FCC2435112F1', this.entity.handle, unused);
29
+ itemInteraction3(item, p3, p4, p5, p6) {
30
+ const result = inv('0xD61D5E1AD9876DEB', this.entity.handle, _h(item), pvi(), p3, p4, p5, f(p6));
31
+ return result;
32
+ }
33
+ /**
34
+ * @returns Returns `true` if the specified `ped` is currently in combat using a ranged weapon, and is ready to shoot (actively attempting to attack)
35
+ */
36
+ getTaskCombatReadyToShoot() {
37
+ return inv('0x5EA655F01D93667A', this.entity.handle, rai());
22
38
  }
23
39
  /**
24
- * Old name: _TASK_VEHICLE_DRIVE_TO_POINT
25
- * flag: 524419 and 0 in shop_horse_shop R* Script
26
- *
27
40
  * @param vehicle
28
- * @param pos
29
- * @param p5
30
- * @param p6
31
- * @param flag
41
+ * @param seat
32
42
  */
33
- vehicleDriveStraightToPoint(vehicle, pos, p5, p6, flag) {
34
- inv('0x089FF2FB965F0A29', this.entity.handle, vehicle.handle, f(pos.x), f(pos.y), f(pos.z), f(p5), f(p6), flag);
43
+ warpPedIntoVehicle(vehicle, seat) {
44
+ inv('0x9A7D091411C5F684', this.entity.handle, vehicle.handle, seat);
45
+ }
46
+ /**
47
+ * ped = Ped you want to perform this task.
48
+ * target = the Entity they should aim at.
49
+ * distanceToStopAt = distance from the target, where the ped should stop to aim.
50
+ * StartAimingDist = distance where the ped should start to aim.
51
+ *
52
+ * @param target
53
+ * @param distanceToStopAt
54
+ * @param StartAimingDist
55
+ */
56
+ gotoEntityAiming(target, distanceToStopAt, StartAimingDist) {
57
+ inv('0xA9DA48FAB8A76C12', this.entity.handle, target.handle, f(distanceToStopAt), f(StartAimingDist));
35
58
  }
36
59
  /**
37
60
  * @param p1
@@ -48,92 +71,48 @@ export class PedTask extends BaseTask {
48
71
  * @param p12
49
72
  * @param p13
50
73
  * @param p14
51
- * @param p15
52
- */
53
- goToCoordWhileAimingAtCoordUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15) {
54
- inv('0x639C0425A0B4E77E', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15);
55
- }
56
- /**
57
- * flags: 0 = HANDS_UP_NOTHING; 1 = HANDS_UP_STRAIGHT_TO_LOOP
58
- *
59
- * @param duration
60
- * @param facingPed
61
- * @param timeToFacePed
62
- * @param flags
63
74
  */
64
- handsUp(duration, facingPed, timeToFacePed, flags) {
65
- inv('0xF2EAB31979A7F910', this.entity.handle, duration, facingPed.handle, timeToFacePed, flags);
75
+ goToCoordWhileAimingAtEntityUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
76
+ inv('0x78426D0982D083C9', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14);
66
77
  }
67
78
  /**
68
- * timer: in ms, if it reaches 0 it will auto warp the ped on the horse
69
- * Flags will still apply to mountStyle
79
+ * Used with 'P_BODYPARTARMFLOAT02X' model in fishing_core.c
70
80
  *
71
- * @param mount
72
- * @param timer
73
- * @param seatIndex Refer to [enum: eVehicleSeat]
74
- * @param pedSpeed
75
- * @param mountStyle
76
- * @param p6
77
- * @param p7
78
- */
79
- mountAnimal(mount, timer, seatIndex, pedSpeed, mountStyle, p6, p7) {
80
- inv('0x92DB0739813C5186', this.entity.handle, mount.handle, timer, seatIndex, f(pedSpeed), mountStyle, p6, p7);
81
- }
82
- /**
83
- * @returns
81
+ * @param object
84
82
  */
85
- getPedIsIgnoringDeadBodies() {
86
- return inv('0x1948BBE561A2375A', this.entity.handle);
83
+ pedFishingrodHookObject(object) {
84
+ inv('0xCE71C2F9BAA3F975', this.entity.handle, object.handle);
87
85
  }
88
86
  /**
89
- * @param p1
87
+ * @param exitAnimation
90
88
  * @param p2
91
- * @param p3
92
- * @param p4
93
89
  */
94
- setSphereDefensiveArea(p1, p2, p3, p4) {
95
- inv('0x933C06518B52A9A4', this.entity.handle, f(p1), f(p2), f(p3), f(p4));
90
+ reactLookAtEnd(exitAnimation, p2) {
91
+ inv('0x541E5B41DCA45828', this.entity.handle, exitAnimation, p2);
96
92
  }
97
- /**
98
- * @param p1
99
- * @param p2
100
- * @param p3
101
- * @param p4
102
- */
103
- useRandomScenarioInGroup(p1, p2, p3, p4) {
104
- inv('0x14747F4A5971DE4E', this.entity.handle, p1, p2, p3, p4);
93
+ clearDrivebyTaskUnderneathDrivingTask() {
94
+ inv('0xC35B5CDB2824CF69', this.entity.handle);
105
95
  }
106
96
  /**
107
- * enum eWhistleType
108
- * {
109
- * WHISTLE_MAIN,
110
- * WHISTLE_SECONDARY,
111
- * WHISTLE_DOUBLE,
112
- * WHISTLE_URGENT,
113
- * WHISTLE_LONG
114
- * };
115
- *
116
- * @param p1
117
- * @param whistleType
97
+ * @param neverUseInteriors
118
98
  */
119
- goToWhistle(p1, whistleType) {
120
- inv('0xBAD6545608CECA6E', this.entity.handle, p1.handle, whistleType);
99
+ setPedPathNeverUseInteriors(neverUseInteriors) {
100
+ inv('0x42CFD8FD8CC8DC69', this.entity.handle, neverUseInteriors);
121
101
  }
122
102
  /**
123
- * @param pos
124
- * @param duration
125
- * @param flags
126
- * @param p6
127
- * @param p7
103
+ * @param radius
128
104
  */
129
- lookAtCoord(pos, duration, flags, p6, p7) {
130
- inv('0x6FA46612594F7973', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration, flags, p6, p7);
105
+ combatHatedTargets(radius) {
106
+ inv('0x8182B561A29BD597', this.entity.handle, f(radius));
131
107
  }
132
108
  /**
133
- * @returns
109
+ * Only used in R* Scripts fishing_core and av_fishing_river
110
+ *
111
+ * @returns p1
134
112
  */
135
- isPedInHitReact() {
136
- return inv('0xF330A5C062B29BED', this.entity.handle);
113
+ setTaskFishing() {
114
+ const result = inv('0xF3735ACD11ACD501', this.entity.handle, pvi());
115
+ return [result[0], result[1]];
137
116
  }
138
117
  /**
139
118
  * @param p1
@@ -144,102 +123,30 @@ export class PedTask extends BaseTask {
144
123
  * @param p6
145
124
  * @param p7
146
125
  * @param p8
126
+ * @param p9
127
+ * @param p10
147
128
  */
148
- N_0x3FFCD7BBA074CC80(p1, p2, p3, p4, p5, p6, p7, p8) {
149
- inv('0x3FFCD7BBA074CC80', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8);
150
- }
151
- /**
152
- * @returns
153
- */
154
- isMountedWeaponTaskUnderneathDrivingTask() {
155
- return inv('0xA320EF046186FA3B', this.entity.handle, rai());
156
- }
157
- /**
158
- * flags: See TASK_ENTER_VEHICLE
159
- *
160
- * @param p1
161
- * @param flags Refer to [enum: eEnterExitVehicleFlags]
162
- */
163
- disembarkNearestTrainCarriage(p1, flags) {
164
- inv('0x0A11F3BDEC03ED5F', this.entity.handle, f(p1), flags);
165
- }
166
- /**
167
- * fleeType: see TASK_FLEE_COORD
168
- *
169
- * @param fleeFromTarget
170
- * @param pos
171
- * @param distance
172
- * @param p6
173
- * @param p7
174
- * @param p8
175
- * @param targetPed
176
- */
177
- fleeFromPed(fleeFromTarget, pos, distance, p6, p7, p8, targetPed) {
178
- inv('0x7B74D8EEDE9B5727', this.entity.handle, fleeFromTarget.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), p6, p7, f(p8), targetPed.handle);
179
- }
180
- /**
181
- * @returns
182
- */
183
- isPedGettingUp() {
184
- return inv('0x2A74E1D5F2F00EEC', this.entity.handle, rai());
185
- }
186
- /**
187
- * @param time
188
- */
189
- duck(time) {
190
- inv('0xA14B5FBF986BAC23', this.entity.handle, time);
129
+ goToEntityWhileAimingAtEntityUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) {
130
+ inv('0xCEF0117C233026AD', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
191
131
  }
192
132
  /**
193
- * @param p1
133
+ * @param preferStayInWater
194
134
  * @param p2
195
- * @param p3
196
- * @param p4
197
- */
198
- robPed(p1, p2, p3, p4) {
199
- inv('0x7BB967F85D8CCBDB', this.entity.handle, p1, p2, p3, p4);
200
- }
201
- /**
202
- * getupSetHash: see nm_blend_out_sets.meta
203
- *
204
- * @param flags
205
- * @param getupSetHash
206
- * @param p3
207
- * @param p4
208
- * @param p5
209
135
  */
210
- unhogtiePed(flags, getupSetHash, p3, p4, p5) {
211
- inv('0x79559BAD83CCD038', this.entity.handle, flags, _h(getupSetHash), p3, p4, f(p5));
136
+ setPedPathPreferStayInWater(preferStayInWater, p2) {
137
+ inv('0xC6170856E54557B2', this.entity.handle, preferStayInWater, f(p2));
212
138
  }
213
139
  /**
214
- * hecks if the ped camera is directed at the given coord within the specified radius. https://www.youtube.com/watch?v=iLHXrWVvq_c
215
- *
216
- * @param coord The coord to check if they're looking at
217
- * @param radius The radius of the frustum
218
- * @returns Returns `true` if the ped camera is within the range of the frustum, `false` otherwise
140
+ * @param name
219
141
  */
220
- isPedLookingAtCoord(coord, radius) {
221
- return inv('0x508F5053E3F6F0C4', this.entity.handle, f(coord.x), f(coord.y), f(coord.z), f(radius), rai());
142
+ requestTaskMoveNetworkStateTransition(name) {
143
+ inv('0xD01015C7316AE176', this.entity.handle, name);
222
144
  }
223
145
  /**
224
146
  * @param entity
225
147
  */
226
- walkAway(entity) {
227
- inv('0x04ACFAC71E6858F9', this.entity.handle, entity.handle);
228
- }
229
- /**
230
- * @returns
231
- */
232
- getHogtieEscapeTimer() {
233
- return inv('0x4687E69D258BBE41', this.entity.handle, raf());
234
- }
235
- weapon() {
236
- inv('0x7157B82D60E4BC46', this.entity.handle);
237
- }
238
- /**
239
- * @returns
240
- */
241
- isPedWalking() {
242
- return inv('0xDE4C184B2B9B071A', this.entity.handle, rai());
148
+ pedFishingrodHookEntity(entity) {
149
+ inv('0x1A52076D26E09004', this.entity.handle, entity.handle);
243
150
  }
244
151
  /**
245
152
  * @param p1
@@ -312,199 +219,6 @@ export class PedTask extends BaseTask {
312
219
  ambientAnimalHunt(p1, p2) {
313
220
  inv('0x4B39D8F9D0FE7749', this.entity.handle, p1, p2);
314
221
  }
315
- /**
316
- * @param p1
317
- * @param taskFlag Refer to [enum: eEnterExitVehicleFlags]
318
- */
319
- leaveAnyVehicle(p1, taskFlag) {
320
- inv('0x504D54DF3F6F2247', this.entity.handle, p1, taskFlag);
321
- }
322
- /**
323
- * @param targetPed
324
- * @param p2
325
- * @param p3
326
- */
327
- combatPed(targetPed, p2, p3) {
328
- inv('0xF166E48407BAC484', this.entity.handle, targetPed.handle, p2, p3);
329
- }
330
- /**
331
- * Params: p4 = -1.0f, p5 = -1, p6 = 0 in R* Scripts
332
- *
333
- * @param fleeFromTarget
334
- * @param fleeStyle Refer to [enum: eFleeStyle]
335
- * @param flag
336
- * @param p4
337
- * @param p5
338
- * @param p6
339
- */
340
- fleePed(fleeFromTarget, fleeStyle, flag, p4, p5, p6) {
341
- inv('0xFD45175A6DFD7CE9', this.entity.handle, fleeFromTarget.handle, fleeStyle, flag, f(p4), p5, p6);
342
- }
343
- /**
344
- * @returns
345
- */
346
- isPedLeadingHorse() {
347
- return inv('0xEFC4303DDC6E60D3', this.entity.handle);
348
- }
349
- /**
350
- * @param entity
351
- * @param offset
352
- * @param movementSpeed
353
- * @param timeout
354
- * @param stoppingRange
355
- * @param persistFollowing
356
- * @param p9
357
- * @param walkOnly
358
- * @param p11
359
- * @param p12
360
- * @param p13
361
- */
362
- followToOffsetOfEntity(entity, offset, movementSpeed, timeout, stoppingRange, persistFollowing, p9, walkOnly, p11, p12, p13) {
363
- inv('0x304AE42E357B8C7E', this.entity.handle, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(movementSpeed), timeout, f(stoppingRange), persistFollowing, p9, walkOnly, p11, p12, p13);
364
- }
365
- /**
366
- * duration: the amount of time in milliseconds to do the task. -1 will keep the task going until either another task is applied, or CLEAR_ALL_TASKS() is called with the ped
367
- *
368
- * @param targetEntity
369
- * @param duration
370
- * @param p3
371
- * @param p4
372
- */
373
- aimGunAtEntity(targetEntity, duration, p3, p4) {
374
- inv('0x9B53BB6E8943AF53', this.entity.handle, targetEntity.handle, duration, p3, p4);
375
- }
376
- /**
377
- * `_GET_ANIM_SCENE_FROM_PED_*` But in a strange way, it also seems to work with the butcher's meat-cutting animscene. This does not return AnimScenes in general — it seems restricted to
378
- * SEARCH-related scenes (needs more research).
379
- *
380
- * @returns Returns the AnimScene handle currently associated with the given Ped, but only when the anim event "SEARCHSTART" has fired on that Ped.
381
- */
382
- N_0x2C497BDEF897C6DF() {
383
- return createFromHandle('AnimScene', inv('0x2C497BDEF897C6DF', this.entity.handle, rai()));
384
- }
385
- /**
386
- * @param p1
387
- * @returns
388
- */
389
- police(p1) {
390
- return inv('0x87BE56724650408E', this.entity.handle, p1);
391
- }
392
- /**
393
- * @param scenarioPoint
394
- * @param flag
395
- */
396
- hitchAnimal(scenarioPoint, flag) {
397
- inv('0x9030AD4B6207BFE8', this.entity.handle, scenarioPoint, flag);
398
- }
399
- uncuffPed() {
400
- inv('0x67406F2C8F87FC4F', this.entity.handle);
401
- }
402
- /**
403
- * @param p1
404
- * @param p2
405
- * @param p3
406
- */
407
- waypointPlaybackPause(p1, p2, p3) {
408
- inv('0x0F342546AA06FED5', this.entity.handle, p1, p2, p3);
409
- }
410
- /**
411
- * meleeStyles: AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_MOUNT_FACEDOWN_FROM_FRONT, AR_ALLIGATOR_LEAPKILL, AR_ALLIGATOR_WAIST_AUTOKILL_FRONT
412
- *
413
- * @param meleeTarget
414
- * @param meleeStyle
415
- * @param p3
416
- * @param animBlendRatio
417
- * @param p5
418
- * @param p6
419
- */
420
- putPedDirectlyIntoMelee(meleeTarget, meleeStyle, p3, animBlendRatio, p5, p6) {
421
- inv('0x1C6CD14A876FFE39', this.entity.handle, meleeTarget.handle, _h(meleeStyle), f(p3), f(animBlendRatio), p5, p6);
422
- }
423
- /**
424
- * @param waypointRecording
425
- * @param p2
426
- * @param flag
427
- * @param p4
428
- * @param p5
429
- * @param p6
430
- * @param p7
431
- */
432
- followWaypointRecording(waypointRecording, p2, flag, p4, p5, p6, p7) {
433
- inv('0x0759591819534F7B', this.entity.handle, waypointRecording, p2, flag, p4, p5, p6, p7);
434
- }
435
- /**
436
- * @param targetPed
437
- */
438
- hogtieTargetPed(targetPed) {
439
- inv('0x27829AFD3E03AC1A', this.entity.handle, targetPed.handle);
440
- }
441
- /**
442
- * shootatEntity:
443
- * If true, peds will shoot at Entity till it is dead.
444
- * If false, peds will just walk till they reach the entity and will cease shooting.
445
- *
446
- * @param p1
447
- * @param p2
448
- * @param p3
449
- * @param p4
450
- * @param p5
451
- * @param p6
452
- * @param p7
453
- * @param p8
454
- * @param p9
455
- * @param p10
456
- */
457
- goToEntityWhileAimingAtEntity(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) {
458
- inv('0x97465886D35210E9', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
459
- }
460
- /**
461
- * @param pos
462
- * @param distance
463
- */
464
- useNearestTrainScenarioToCoordWarp(pos, distance) {
465
- inv('0x3774B03456DD6106', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance));
466
- }
467
- /**
468
- * @param p1
469
- */
470
- wanderSwim(p1) {
471
- inv('0x527EA3DB8BC7F03B', this.entity.handle, p1);
472
- }
473
- /**
474
- * duration in milliseconds
475
- *
476
- * @param pos
477
- * @param duration
478
- */
479
- turnPedToFaceCoord(pos, duration) {
480
- inv('0x1DDA930A0AC38571', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration);
481
- }
482
- /**
483
- * @param preferAvoidMud
484
- * @param p2
485
- */
486
- setPedPathPreferToAvoidMud(preferAvoidMud, p2) {
487
- inv('0x8BB283A7888AD1AD', this.entity.handle, preferAvoidMud, f(p2));
488
- }
489
- /**
490
- * @param animDict
491
- * @param animName
492
- * @param entity
493
- * @param p4
494
- * @param p5
495
- * @param p6
496
- * @param p7
497
- * @param p8
498
- * @param p9
499
- * @param p10
500
- * @param p11
501
- * @param p12
502
- * @param p13
503
- * @param p14
504
- */
505
- playUpperAnimFacingEntity(animDict, animName, entity, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
506
- inv('0xAD67214236AB1CFE', this.entity.handle, animDict, animName, entity.handle, p4, f(p5), f(p6), p7, f(p8), p9, p10, f(p11), p12, p13, f(p14));
507
- }
508
222
  /**
509
223
  * @param goToLocationX
510
224
  * @param goToLocationY
@@ -609,286 +323,253 @@ export class PedTask extends BaseTask {
609
323
  return Vector3.fromArray(result);
610
324
  }
611
325
  /**
612
- * @param radius
326
+ * @returns
613
327
  */
614
- combatHatedTargetsNoLosTest(radius) {
615
- inv('0xB5BC69D9C4060BC3', this.entity.handle, f(radius));
328
+ isTaskMoveNetworkReadyForTransition() {
329
+ return inv('0x30ED88D5E0C56A37', this.entity.handle, rai());
330
+ }
331
+ clearDefensiveArea() {
332
+ inv('0x95A6C46A31D1917D', this.entity.handle);
616
333
  }
617
334
  /**
618
- * @param p1
335
+ * @param modifier
619
336
  */
620
- N_0x31BB338F64D5C861(p1) {
621
- inv('0x31BB338F64D5C861', this.entity.handle, p1);
337
+ setPedPathDeepSnowCostModifier(modifier) {
338
+ inv('0xE8C296B75EACC357', this.entity.handle, f(modifier));
622
339
  }
623
340
  /**
624
- * @param modifier
341
+ * @returns
625
342
  */
626
- setPedPathClimbCostModifier(modifier) {
627
- inv('0x88E32DB8C1A4AA4B', this.entity.handle, f(modifier));
343
+ getItemInteractionItemId() {
344
+ return (inv('0x804425C4BBD00883', this.entity.handle, rai())) & 0xFFFFFFFF;
628
345
  }
629
346
  /**
630
347
  * @param entity
631
- * @param duration
632
- * @param targetRadius
633
- * @param offset
634
- * @param moveBlendRatio
635
- * @param offsetFlags
348
+ * @param mount
349
+ * @param p3
636
350
  */
637
- gotoEntityOffsetXy(entity, duration, targetRadius, offset, moveBlendRatio, offsetFlags) {
638
- inv('0x338E7EF52B6095A9', this.entity.handle, entity.handle, duration, f(targetRadius), f(offset.x), f(offset.y), f(moveBlendRatio), offsetFlags);
351
+ placeCarriedEntityOnMount(entity, mount, p3) {
352
+ inv('0x6D3D87C57B3D52C7', this.entity.handle, entity.handle, mount.handle, f(p3));
353
+ }
354
+ detachCarriablePed() {
355
+ inv('0x36D188AECB26094B', this.entity.handle);
639
356
  }
640
357
  /**
641
- * Makes ped walk around the area the params p1 p2 seems to not affect anything but p2 is either 0 or 1 and p1 is mostly 1.0 or ped heading
642
- *
643
- * @param p2
644
- * @param p3
358
+ * @returns
645
359
  */
646
- wanderStandard(p2, p3) {
647
- inv('0xBB9CE077274F6A1B', this.entity.handle, f(p2), p3);
360
+ getItemInteractionState() {
361
+ return (inv('0x6AA3DCA2C6F5EB6D', this.entity.handle, rai())) & 0xFFFFFFFF;
648
362
  }
649
363
  /**
650
- * @param p1
651
- * @param p2
364
+ * @returns
652
365
  */
653
- clearPedTasks(p1, p2) {
654
- inv('0xE1EF3C1216AFF2CD', this.entity.handle, p1, p2);
366
+ getIsPedAimingInTheAir() {
367
+ return inv('0x8785E6E40C7A8819', this.entity.handle);
655
368
  }
656
369
  /**
657
- * @param moveNetworkDefName
370
+ * param3: duration in ms, use -1 to look forever
371
+ * param4: using 2048 is fine
372
+ * param5: using 3 is fine
373
+ *
374
+ * @param lookAtTarget
375
+ * @param duration
658
376
  * @param p3
659
377
  * @param p4
660
- * @param animDict
661
- * @param flags
662
- * @returns taskData
378
+ * @param p5
663
379
  */
664
- moveNetworkByNameWithInitParams(moveNetworkDefName, p3, p4, animDict, flags) {
665
- const result = inv('0x139805C2A67C4795', this.entity.handle, moveNetworkDefName, pvi(), f(p3), p4, animDict, flags);
666
- return result;
380
+ lookAtEntity(lookAtTarget, duration, p3, p4, p5) {
381
+ inv('0x69F4BE8C8CC4796C', this.entity.handle, lookAtTarget.handle, duration, p3, p4, p5);
667
382
  }
668
383
  /**
669
- * @param pos
670
- * @param entity
384
+ * @param taskIndex
385
+ * @returns
671
386
  */
672
- jump2(pos, entity) {
673
- inv('0x91083103137D7254', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), entity.handle);
387
+ getIsTaskActive(taskIndex) {
388
+ return inv('0xB0760331C7AA4155', this.entity.handle, taskIndex, rai());
674
389
  }
675
390
  /**
676
- * @param scenario
677
- * @param conditionalAnim
678
- * @param p3
391
+ * grappleStyle: AR_GRAPPLE_STRUGGLE, AR_ALLIGATOR_LEG_GRAB_CHALLENGE_FAIL, AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_BACK_DEFEND, AR_GRAPPLE_FRONT_FROM_FRONT
392
+ *
393
+ * @param grappleTarget
394
+ * @param grappleStyle
395
+ * @param p3
679
396
  * @param p4
680
397
  * @param p5
681
398
  * @param p6
682
- * @param p7
683
- * @param p8
684
- * @param p9
685
399
  */
686
- useScenarioPoint(scenario, conditionalAnim, p3, p4, p5, p6, p7, p8, p9) {
687
- inv('0xCCDAE6324B6A821C', this.entity.handle, scenario, conditionalAnim, p3, p4, p5, _h(p6), p7, f(p8), p9);
400
+ putPedDirectlyIntoGrapple(grappleTarget, grappleStyle, p3, p4, p5, p6) {
401
+ inv('0xA05F3F20889D7A5B', this.entity.handle, grappleTarget.handle, _h(grappleStyle), f(p3), f(p4), p5, p6);
688
402
  }
689
403
  /**
690
- * @returns
404
+ * @param p1
405
+ * @param p2
691
406
  */
692
- isPedRunningTaskItemInteraction() {
693
- return inv('0xEC7E480FF8BD0BED', this.entity.handle);
407
+ combatAnimalWarn(p1, p2) {
408
+ inv('0xF960F3D57B660E96', this.entity.handle, p1, p2);
694
409
  }
695
410
  /**
696
- * @param vehicle
411
+ * @param toggle
697
412
  */
698
- breakVehicleDoorLock(vehicle) {
699
- inv('0xBB28D1BC9EA8A6A5', this.entity.handle, vehicle.handle);
413
+ setPedIgnoreDeadBodies(toggle) {
414
+ inv('0x013A7BA5015C1372', this.entity.handle, toggle);
700
415
  }
701
416
  /**
702
- * @param vehicle
703
- * @param vehicleTarget
704
- * @param missionType
417
+ * @param p1
418
+ * @param p2
419
+ * @param p3
705
420
  * @param p4
706
421
  * @param p5
707
422
  * @param p6
708
423
  * @param p7
709
- * @param DriveAgainstTraffic
710
424
  */
711
- vehicleMission(vehicle, vehicleTarget, missionType, p4, p5, p6, p7, DriveAgainstTraffic) {
712
- inv('0x659427E0EF36BCDE', this.entity.handle, vehicle.handle, vehicleTarget.handle, missionType, f(p4), p5, f(p6), f(p7), DriveAgainstTraffic);
713
- }
714
- /**
715
- * @param avoidTraffic
716
- */
717
- setPedPathAvoidTraffic(avoidTraffic) {
718
- inv('0x7C015D8BCEC72CF4', this.entity.handle, avoidTraffic);
719
- }
720
- /**
721
- * @param p1
722
- * @param p2
723
- */
724
- guard(p1, p2) {
725
- inv('0xB9FB242EACCAF30F', this.entity.handle, p1, p2);
425
+ moveInTrafficToDestination(p1, p2, p3, p4, p5, p6, p7) {
426
+ inv('0xDCA3A13F7A45338B', this.entity.handle, p1, p2, p3, p4, p5, p6, p7);
726
427
  }
727
428
  /**
728
429
  * @param attacker
729
430
  * @param p2
730
- * @param unusedParam3 Unused by the native.
731
- * @param unusedParam4 Unused by the native.
732
- * @param everyFrame Removes the `0x1000` bitmask from `flag`
733
- * @param p6
734
- * @param p7 Removes the `0x80000` bitmask from `flag`
735
- * @param flag
736
- * @returns Returns `true` on success, `false` if it failed (whether due to `attacker` being invalid, or the `attacker` ped being dead)
431
+ * @returns Returns `true` on success, or `false` if `attacker` doesn't exist, or is dead.
737
432
  */
738
- intimidated2(attacker, p2, unusedParam3, unusedParam4, everyFrame, p6, p7, flag) {
739
- return inv('0x933ACC1A1771A288', this.entity.handle, attacker.handle, p2, unusedParam3, unusedParam4, everyFrame, p6, p7, flag, rai());
433
+ intimidated(attacker, p2) {
434
+ return inv('0x648B75D44930D6BD', this.entity.handle, attacker.handle, p2, rai());
740
435
  }
741
436
  /**
742
- * @param avoidFire
437
+ * @returns
743
438
  */
744
- setPedPathAvoidFire(avoidFire) {
745
- inv('0x4455517B28441E60', this.entity.handle, avoidFire);
439
+ waypointPlaybackGetIsShooting() {
440
+ return inv('0xA5B94DF8AF058F46', this.entity.handle);
746
441
  }
747
442
  /**
748
- * @param reviver
749
- * @param tool
443
+ * @param pos
444
+ * @param distance
445
+ * @param p5
446
+ * @param p6
447
+ * @param p7
448
+ * @param p8
750
449
  */
751
- reviveTarget(reviver, tool) {
752
- inv('0x356088527D9EBAAD', this.entity.handle, reviver.handle, _h(tool));
450
+ useNearestScenarioChainToCoordWarp(pos, distance, p5, p6, p7, p8) {
451
+ inv('0x97A28E63F0BA5631', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), p5, p6, p7, p8);
753
452
  }
754
453
  /**
755
- * https://github.com/femga/rdr3_discoveries/blob/master/animations/kit_emotes_list.lua
756
- * emote: https://alloc8or.re/rdr3/doc/enums/eEmote.txt enum eEmoteType
757
- * {
758
- * EMOTE_TYPE_INVALID = -1,
759
- * EMOTE_TYPE_REACT,
760
- * EMOTE_TYPE_ACTION,
761
- * EMOTE_TYPE_TAUNT,
762
- * EMOTE_TYPE_GREET,
763
- * EMOTE_TYPE_TWIRL_GUN,
764
- * EMOTE_TYPE_DANCE_FLOOR
765
- * }; enum eEmotePlaybackMode
766
- * {
767
- * EMOTE_PM_INVALID = -1,
768
- * EMOTE_PM_UPPERBODY,
769
- * EMOTE_PM_UPPERBODY_LOOP,
770
- * EMOTE_PM_FULLBODY,
771
- * };
454
+ * returned values:
455
+ * 0 to 7 = task that's currently in progress, 0 meaning the first one.
456
+ * -1 no task sequence in progress.
772
457
  *
773
- * @param emoteType
774
- * @param playbackMode
775
- * @param emote
776
- * @param isSecondaryTask
777
- * @param canBreakOut
778
- * @param disableEarlyOutAnimTag
779
- * @param ignoreInvalidMainTask
780
- * @param destroyProps
458
+ * @returns
781
459
  */
782
- playEmoteWithHash(emoteType, playbackMode, emote, isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps) {
783
- inv('0xB31A277C1AC7B7FF', this.entity.handle, emoteType, playbackMode, _h(emote), isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps);
460
+ getSequenceProgress() {
461
+ return inv('0x00A9010CFE1E3533', this.entity.handle, rai());
784
462
  }
785
463
  /**
786
464
  * @returns
787
465
  */
788
- isTaskMoveNetworkReadyForTransition() {
789
- return inv('0x30ED88D5E0C56A37', this.entity.handle, rai());
466
+ waypointPlaybackGetIsAiming() {
467
+ return inv('0xD73A5D1F0325C71C', this.entity.handle);
790
468
  }
791
- clearDefensiveArea() {
792
- inv('0x95A6C46A31D1917D', this.entity.handle);
469
+ /**
470
+ * @param toggle
471
+ */
472
+ setPedPathCanUseLadders(toggle) {
473
+ inv('0x77A5B103C87F476E', this.entity.handle, toggle);
793
474
  }
794
475
  /**
795
- * @param modifier
476
+ * @param p1
477
+ * @param p2
796
478
  */
797
- setPedPathDeepSnowCostModifier(modifier) {
798
- inv('0xE8C296B75EACC357', this.entity.handle, f(modifier));
479
+ stopAnimPlayback(p1, p2) {
480
+ inv('0xEE08C992D238C5D1', this.entity.handle, p1, p2);
799
481
  }
800
482
  /**
483
+ * @param targetPed
484
+ * @param p2
801
485
  * @returns
802
486
  */
803
- getItemInteractionItemId() {
804
- return (inv('0x804425C4BBD00883', this.entity.handle, rai())) & 0xFFFFFFFF;
487
+ confront(targetPed, p2) {
488
+ return inv('0x3A2A2071DF5CC569', this.entity.handle, targetPed.handle, p2);
489
+ }
490
+ N_0x1F298C7BD30D1240() {
491
+ inv('0x1F298C7BD30D1240', this.entity.handle);
805
492
  }
806
493
  /**
807
- * @param entity
808
- * @param mount
494
+ * @param p1
495
+ * @param p2
809
496
  * @param p3
810
497
  */
811
- placeCarriedEntityOnMount(entity, mount, p3) {
812
- inv('0x6D3D87C57B3D52C7', this.entity.handle, entity.handle, mount.handle, f(p3));
813
- }
814
- detachCarriablePed() {
815
- inv('0x36D188AECB26094B', this.entity.handle);
498
+ setCrouchMovement(p1, p2, p3) {
499
+ inv('0x17293C633C8AC019', this.entity.handle, p1, p2, p3);
816
500
  }
817
501
  /**
818
- * @returns
502
+ * Tells the ped to go to an offset coord from an entity, without using the navmesh. if timeBeforeTeleport is -1 the ped will never warp, p7 is 1 or 0 still unknown param
503
+ *
504
+ * @param entity
505
+ * @param offset
506
+ * @param moveBlendRatio
507
+ * @param timeBeforeTeleport
508
+ * @param p7
819
509
  */
820
- getItemInteractionState() {
821
- return (inv('0x6AA3DCA2C6F5EB6D', this.entity.handle, rai())) & 0xFFFFFFFF;
510
+ goStraightToCoordRelativeToEntity(entity, offset, moveBlendRatio, timeBeforeTeleport, p7) {
511
+ inv('0x61E360B7E040D12E', this.entity.handle, entity.handle, f(offset.x), f(offset.y), f(offset.z), moveBlendRatio, timeBeforeTeleport, p7);
822
512
  }
823
513
  /**
824
- * @returns
514
+ * Sets the time it takes for a hogtied ped to escape
515
+ * -1.0f for ped to never escape
516
+ *
517
+ * @param time
825
518
  */
826
- getIsPedAimingInTheAir() {
827
- return inv('0x8785E6E40C7A8819', this.entity.handle);
519
+ setHogtieEscapeTimer(time) {
520
+ inv('0xAB591AE6B48B913E', this.entity.handle, f(time));
828
521
  }
829
522
  /**
830
- * param3: duration in ms, use -1 to look forever
831
- * param4: using 2048 is fine
832
- * param5: using 3 is fine
833
- *
834
- * @param lookAtTarget
835
- * @param duration
836
- * @param p3
837
- * @param p4
838
- * @param p5
523
+ * Makes the ped run to take cover
839
524
  */
840
- lookAtEntity(lookAtTarget, duration, p3, p4, p5) {
841
- inv('0x69F4BE8C8CC4796C', this.entity.handle, lookAtTarget.handle, duration, p3, p4, p5);
525
+ stayInCover() {
526
+ inv('0xE5DA8615A6180789', this.entity.handle);
842
527
  }
843
528
  /**
844
- * @param taskIndex
845
- * @returns
529
+ * @param p1
846
530
  */
847
- getIsTaskActive(taskIndex) {
848
- return inv('0xB0760331C7AA4155', this.entity.handle, taskIndex, rai());
531
+ followWaypointRecordingAdvanced(p1) {
532
+ inv('0x0CFC13EBC19BCA52', this.entity.handle, p1);
849
533
  }
850
534
  /**
851
- * Returns hash of the underlying move network def, see move_networks.xml
852
- * https://alloc8or.re/rdr3/doc/misc/move_networks.txt
535
+ * Tells the ped to go to a coord, without using the navemesh. if timeBeforeTeleport is -1 the ped will never warp, p8 is always 0 or 1 still unknown
853
536
  *
854
- * @returns
537
+ * @param pos
538
+ * @param moveBlendRatio
539
+ * @param timeBeforeTeleport
540
+ * @param finalHeading
541
+ * @param targetRadius
542
+ * @param p8
855
543
  */
856
- getTaskMoveNetworkId() {
857
- return (inv('0xCACC2F9D994504B7', this.entity.handle, rai())) & 0xFFFFFFFF;
544
+ goStraightToCoord(pos, moveBlendRatio, timeBeforeTeleport, finalHeading, targetRadius, p8) {
545
+ inv('0xD76B57B44F1E6F8B', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(moveBlendRatio), timeBeforeTeleport, f(finalHeading), f(targetRadius), p8);
858
546
  }
859
547
  /**
860
- * @param p1
861
- * @param p2
862
- * @param p3
863
- * @param p4
864
- * @param p5
865
- * @param p6
548
+ * @returns
866
549
  */
867
- guardAssignedDefensiveArea(p1, p2, p3, p4, p5, p6) {
868
- inv('0xD2A207EEBDF9889B', this.entity.handle, f(p1), f(p2), f(p3), f(p4), f(p5), p6);
550
+ getPedWaypointOverrideSpeed() {
551
+ return inv('0xD39A2F3E7FCAFF08', this.entity.handle, raf());
869
552
  }
870
553
  /**
871
- * @param pos
872
- * @param duration
873
- * @param firingPattern
874
- * @param p6
554
+ * Climbs or vaults the nearest thing.
555
+ *
556
+ * @param unused
875
557
  */
876
- shootAtCoord(pos, duration, firingPattern, p6) {
877
- inv('0x46A6CC01E0826106', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration, _h(firingPattern), p6);
558
+ climb(unused) {
559
+ inv('0x89D9FCC2435112F1', this.entity.handle, unused);
878
560
  }
879
561
  /**
880
- * Makes a ped react to an entity.
881
- * Params: reactingTo Entity can be 0, p8 is always 4
562
+ * Old name: _TASK_VEHICLE_DRIVE_TO_POINT
563
+ * flag: 524419 and 0 in shop_horse_shop R* Script
882
564
  *
883
- * @param reactingTo
565
+ * @param vehicle
884
566
  * @param pos
885
- * @param reactionName
567
+ * @param p5
886
568
  * @param p6
887
- * @param p7
888
- * @param p8
569
+ * @param flag
889
570
  */
890
- react(reactingTo, pos, reactionName, p6, p7, p8) {
891
- inv('0xC4C32C31920E1B70', this.entity.handle, reactingTo.handle, f(pos.x), f(pos.y), f(pos.z), reactionName, f(p6), f(p7), p8);
571
+ vehicleDriveStraightToPoint(vehicle, pos, p5, p6, flag) {
572
+ inv('0x089FF2FB965F0A29', this.entity.handle, vehicle.handle, f(pos.x), f(pos.y), f(pos.z), f(p5), f(p6), flag);
892
573
  }
893
574
  /**
894
575
  * @param p1
@@ -898,204 +579,209 @@ export class PedTask extends BaseTask {
898
579
  * @param p5
899
580
  * @param p6
900
581
  * @param p7
582
+ * @param p8
583
+ * @param p9
584
+ * @param p10
585
+ * @param p11
586
+ * @param p12
587
+ * @param p13
588
+ * @param p14
589
+ * @param p15
901
590
  */
902
- guardAssignedDefensiveArea2(p1, p2, p3, p4, p5, p6, p7) {
903
- inv('0x1FC9B33976BACD6C', this.entity.handle, p1, p2, p3, p4, p5, p6, p7);
591
+ goToCoordWhileAimingAtCoordUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15) {
592
+ inv('0x639C0425A0B4E77E', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15);
904
593
  }
905
594
  /**
906
- * @param pos
907
- * @param heading
595
+ * flags: 0 = HANDS_UP_NOTHING; 1 = HANDS_UP_STRAIGHT_TO_LOOP
596
+ *
597
+ * @param duration
598
+ * @param facingPed
599
+ * @param timeToFacePed
600
+ * @param flags
908
601
  */
909
- plantBomb(pos, heading) {
910
- inv('0x965FEC691D55E9BF', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(heading));
602
+ handsUp(duration, facingPed, timeToFacePed, flags) {
603
+ inv('0xF2EAB31979A7F910', this.entity.handle, duration, facingPed.handle, timeToFacePed, flags);
911
604
  }
912
605
  /**
913
- * @param scenarioHash
914
- * @param pos
915
- * @param heading
916
- * @param duration
917
- * @param sittingScenario
918
- * @param teleport
919
- * @param p9
920
- * @param p10
921
- * @param p11
606
+ * timer: in ms, if it reaches 0 it will auto warp the ped on the horse
607
+ * Flags will still apply to mountStyle
608
+ *
609
+ * @param mount
610
+ * @param timer
611
+ * @param seatIndex Refer to [enum: eVehicleSeat]
612
+ * @param pedSpeed
613
+ * @param mountStyle
614
+ * @param p6
615
+ * @param p7
922
616
  */
923
- startScenarioAtPosition(scenarioHash, pos, heading, duration, sittingScenario, teleport, p9, p10, p11) {
924
- inv('0x4D1F61FC34AF3CD1', this.entity.handle, _h(scenarioHash), f(pos.x), f(pos.y), f(pos.z), f(heading), duration, sittingScenario, teleport, p9, f(p10), p11);
617
+ mountAnimal(mount, timer, seatIndex, pedSpeed, mountStyle, p6, p7) {
618
+ inv('0x92DB0739813C5186', this.entity.handle, mount.handle, timer, seatIndex, f(pedSpeed), mountStyle, p6, p7);
925
619
  }
926
620
  /**
927
- * @param vehicle
928
- * @param pos
929
- * @param speed
930
- * @param behaviorFlag
931
- * @param stoppingRange
621
+ * @returns
932
622
  */
933
- vehicleGotoNavmesh(vehicle, pos, speed, behaviorFlag, stoppingRange) {
934
- inv('0x195AEEB13CEFE2EE', this.entity.handle, vehicle.handle, f(pos.x), f(pos.y), f(pos.z), f(speed), behaviorFlag, f(stoppingRange));
623
+ getPedIsIgnoringDeadBodies() {
624
+ return inv('0x1948BBE561A2375A', this.entity.handle);
625
+ }
626
+ /**
627
+ * @param p1
628
+ * @param taskFlag Refer to [enum: eEnterExitVehicleFlags]
629
+ */
630
+ leaveAnyVehicle(p1, taskFlag) {
631
+ inv('0x504D54DF3F6F2247', this.entity.handle, p1, taskFlag);
935
632
  }
936
633
  /**
937
- * grappleStyle: AR_GRAPPLE_MOUNT_STANDING_FROM_FRONT, AR_GRAPPLE_MOUNT_STANDING_FROM_RIGHT, AR_GRAPPLE_MOUNT_STANDING_FROM_BACK, AR_GRAPPLE_MOUNT_STANDING_FROM_LEFT, AR_GRAPPLE_MOUNT_FROM_FRONT, AR_WOLF_EXECUTION_ENTER_FROM_BACK, AR_GRAPPLE_DRAG_FRONT_ON_ASS, AR_GRAPPLE_FRONT_FROM_LEFT_FAR, AR_BEAR_CHALLENGE_FRONT, AR_GRAPPLE_FRONT_FROM_FRONT, AR_GRAPPLE_MOUNT_FACEUP_FROM_FRONT
938
- *
939
634
  * @param targetPed
940
- * @param grappleStyle
635
+ * @param p2
941
636
  * @param p3
942
- * @param p4
943
- * @param p5
944
- * @param p6
945
- * @returns
946
637
  */
947
- grapple(targetPed, grappleStyle, p3, p4, p5, p6) {
948
- return inv('0x779A2FFACEFAEA7B', this.entity.handle, targetPed.handle, _h(grappleStyle), p3, f(p4), p5, p6);
638
+ combatPed(targetPed, p2, p3) {
639
+ inv('0xF166E48407BAC484', this.entity.handle, targetPed.handle, p2, p3);
949
640
  }
950
641
  /**
951
- * @param ped1
952
- * @param waypointRecording
953
- * @param p3
642
+ * Params: p4 = -1.0f, p5 = -1, p6 = 0 in R* Scripts
643
+ *
644
+ * @param fleeFromTarget
645
+ * @param fleeStyle Refer to [enum: eFleeStyle]
646
+ * @param flag
954
647
  * @param p4
955
648
  * @param p5
956
649
  * @param p6
957
- * @param p7
958
- * @param p8
959
650
  */
960
- followEntityAlongWaypointRecordingAtOffset(ped1, waypointRecording, p3, p4, p5, p6, p7, p8) {
961
- inv('0x4D2B787BAE9AB760', this.entity.handle, ped1.handle, waypointRecording, f(p3), f(p4), p5, p6, p7, p8);
651
+ fleePed(fleeFromTarget, fleeStyle, flag, p4, p5, p6) {
652
+ inv('0xFD45175A6DFD7CE9', this.entity.handle, fleeFromTarget.handle, fleeStyle, flag, f(p4), p5, p6);
962
653
  }
963
654
  /**
964
- * @param pos
965
- * @param speed
966
- * @param p5
967
- * @param p6
968
- * @param walkingStyle
969
- * @param p8
970
- * @param p9
971
- * @param p10
972
- * @param p11
973
- * @param p12
655
+ * @returns
974
656
  */
975
- goToCoordAnyMeansExtraParams(pos, speed, p5, p6, walkingStyle, p8, p9, p10, p11, p12) {
976
- inv('0x1DD45F9ECFDB1BC9', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(speed), p5, p6, walkingStyle, f(p8), p9, p10, p11, p12);
657
+ isPedLeadingHorse() {
658
+ return inv('0xEFC4303DDC6E60D3', this.entity.handle);
977
659
  }
978
660
  /**
979
- * @param pos
661
+ * @param entity
662
+ * @param offset
663
+ * @param movementSpeed
980
664
  * @param timeout
981
- * @param p5
982
- * @param p6
983
- * @param p7
984
- * @param p8
985
- * @param coverpoint
986
- * @param p10
665
+ * @param stoppingRange
666
+ * @param persistFollowing
667
+ * @param p9
668
+ * @param walkOnly
987
669
  * @param p11
988
670
  * @param p12
671
+ * @param p13
989
672
  */
990
- putPedDirectlyIntoCover(pos, timeout, p5, p6, p7, p8, coverpoint, p10, p11, p12) {
991
- inv('0x4172393E6BE1FECE', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), timeout, p5, f(p6), p7, p8, coverpoint, p10, p11, p12);
673
+ followToOffsetOfEntity(entity, offset, movementSpeed, timeout, stoppingRange, persistFollowing, p9, walkOnly, p11, p12, p13) {
674
+ inv('0x304AE42E357B8C7E', this.entity.handle, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(movementSpeed), timeout, f(stoppingRange), persistFollowing, p9, walkOnly, p11, p12, p13);
992
675
  }
993
676
  /**
994
- * @param p1
995
- * @param p2
677
+ * duration: the amount of time in milliseconds to do the task. -1 will keep the task going until either another task is applied, or CLEAR_ALL_TASKS() is called with the ped
678
+ *
679
+ * @param targetEntity
680
+ * @param duration
996
681
  * @param p3
997
682
  * @param p4
998
- * @param p5
999
- * @param p6
1000
- * @param p7
1001
- * @param p8
1002
- * @param p9
1003
- * @param p10
1004
- * @param p11
1005
- * @param p12
1006
- * @param p13
1007
- * @param p14
1008
683
  */
1009
- goToCoordAndAimAtHatedEntitiesNearCoordUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
1010
- inv('0x87BD711FC31EA273', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14);
684
+ aimGunAtEntity(targetEntity, duration, p3, p4) {
685
+ inv('0x9B53BB6E8943AF53', this.entity.handle, targetEntity.handle, duration, p3, p4);
1011
686
  }
1012
687
  /**
1013
- * @param target
688
+ * `_GET_ANIM_SCENE_FROM_PED_*` But in a strange way, it also seems to work with the butcher's meat-cutting animscene. This does not return AnimScenes in general — it seems restricted to
689
+ * SEARCH-related scenes (needs more research).
690
+ *
691
+ * @returns Returns the AnimScene handle currently associated with the given Ped, but only when the anim event "SEARCHSTART" has fired on that Ped.
1014
692
  */
1015
- arrestPed(target) {
1016
- inv('0xF3B9A78A178572B1', this.entity.handle, target.handle);
693
+ N_0x2C497BDEF897C6DF() {
694
+ return createFromHandle('AnimScene', inv('0x2C497BDEF897C6DF', this.entity.handle, rai()));
1017
695
  }
1018
696
  /**
1019
697
  * @param p1
1020
- * @param p2
1021
- * @param p3
1022
698
  * @returns
1023
699
  */
1024
- setPedWaypointRouteOffset(p1, p2, p3) {
1025
- return inv('0xED98E10B0AFCE4B4', this.entity.handle, f(p1), f(p2), f(p3));
700
+ police(p1) {
701
+ return inv('0x87BE56724650408E', this.entity.handle, p1);
1026
702
  }
1027
703
  /**
1028
- * @param waypointRecording
1029
- * @returns
704
+ * @param scenarioPoint
705
+ * @param flag
1030
706
  */
1031
- isWaypointPlaybackGoingOnForPed(waypointRecording) {
1032
- return inv('0xE03B3F2D3DC59B64', this.entity.handle, waypointRecording, rai());
707
+ hitchAnimal(scenarioPoint, flag) {
708
+ inv('0x9030AD4B6207BFE8', this.entity.handle, scenarioPoint, flag);
1033
709
  }
1034
- /**
1035
- * @param p1
1036
- * @param p2
1037
- */
1038
- animalWrithe(p1, p2) {
1039
- inv('0x8C038A39C4A4B6D6', this.entity.handle, p1, p2);
710
+ uncuffPed() {
711
+ inv('0x67406F2C8F87FC4F', this.entity.handle);
1040
712
  }
1041
713
  /**
1042
- * @param p1
1043
- * @param p2
714
+ * @param moveNetworkDefName
1044
715
  * @param p3
1045
716
  * @param p4
717
+ * @param animDict
718
+ * @param flags
719
+ * @returns taskData
1046
720
  */
1047
- aimAtEntity(p1, p2, p3, p4) {
1048
- inv('0xCF7569BD0FB480A0', this.entity.handle, p1, p2, p3, p4);
721
+ moveNetworkByNameWithInitParams(moveNetworkDefName, p3, p4, animDict, flags) {
722
+ const result = inv('0x139805C2A67C4795', this.entity.handle, moveNetworkDefName, pvi(), f(p3), p4, animDict, flags);
723
+ return result;
1049
724
  }
1050
725
  /**
1051
- * @param targetPed
1052
- * @param p2
1053
- * @param p3
726
+ * @param pos
727
+ * @param entity
1054
728
  */
1055
- combatPedTimed(targetPed, p2, p3) {
1056
- inv('0x944F30DCB7096BDE', this.entity.handle, targetPed.handle, p2, p3);
729
+ jump2(pos, entity) {
730
+ inv('0x91083103137D7254', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), entity.handle);
1057
731
  }
1058
732
  /**
1059
- * @param p1
1060
- * @param p2
733
+ * @param scenario
734
+ * @param conditionalAnim
1061
735
  * @param p3
736
+ * @param p4
737
+ * @param p5
738
+ * @param p6
739
+ * @param p7
740
+ * @param p8
741
+ * @param p9
1062
742
  */
1063
- throwProjectile(p1, p2, p3) {
1064
- inv('0x7285951DBF6B5A51', this.entity.handle, p1, p2, p3);
743
+ useScenarioPoint(scenario, conditionalAnim, p3, p4, p5, p6, p7, p8, p9) {
744
+ inv('0xCCDAE6324B6A821C', this.entity.handle, scenario, conditionalAnim, p3, p4, p5, _h(p6), p7, f(p8), p9);
1065
745
  }
1066
746
  /**
1067
- * @param pos
1068
- * @param heading
1069
- * @param p5
747
+ * @returns
1070
748
  */
1071
- pedSlideToCoord(pos, heading, p5) {
1072
- inv('0xD04FE6765D990A06', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(heading), f(p5));
749
+ isPedRunningTaskItemInteraction() {
750
+ return inv('0xEC7E480FF8BD0BED', this.entity.handle);
1073
751
  }
1074
752
  /**
1075
- * grappleStyle: AR_GRAPPLE_STRUGGLE, AR_ALLIGATOR_LEG_GRAB_CHALLENGE_FAIL, AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_BACK_DEFEND, AR_GRAPPLE_FRONT_FROM_FRONT
1076
- *
1077
- * @param grappleTarget
1078
- * @param grappleStyle
1079
- * @param p3
753
+ * @param vehicle
754
+ */
755
+ breakVehicleDoorLock(vehicle) {
756
+ inv('0xBB28D1BC9EA8A6A5', this.entity.handle, vehicle.handle);
757
+ }
758
+ /**
759
+ * @param vehicle
760
+ * @param vehicleTarget
761
+ * @param missionType
1080
762
  * @param p4
1081
763
  * @param p5
1082
764
  * @param p6
765
+ * @param p7
766
+ * @param DriveAgainstTraffic
1083
767
  */
1084
- putPedDirectlyIntoGrapple(grappleTarget, grappleStyle, p3, p4, p5, p6) {
1085
- inv('0xA05F3F20889D7A5B', this.entity.handle, grappleTarget.handle, _h(grappleStyle), f(p3), f(p4), p5, p6);
768
+ vehicleMission(vehicle, vehicleTarget, missionType, p4, p5, p6, p7, DriveAgainstTraffic) {
769
+ inv('0x659427E0EF36BCDE', this.entity.handle, vehicle.handle, vehicleTarget.handle, missionType, f(p4), p5, f(p6), f(p7), DriveAgainstTraffic);
1086
770
  }
1087
771
  /**
1088
- * @param p1
1089
- * @param p2
772
+ * @param avoidTraffic
1090
773
  */
1091
- combatAnimalWarn(p1, p2) {
1092
- inv('0xF960F3D57B660E96', this.entity.handle, p1, p2);
774
+ setPedPathAvoidTraffic(avoidTraffic) {
775
+ inv('0x7C015D8BCEC72CF4', this.entity.handle, avoidTraffic);
1093
776
  }
1094
777
  /**
1095
- * @param toggle
778
+ * Returns hash of the underlying move network def, see move_networks.xml
779
+ * https://alloc8or.re/rdr3/doc/misc/move_networks.txt
780
+ *
781
+ * @returns
1096
782
  */
1097
- setPedIgnoreDeadBodies(toggle) {
1098
- inv('0x013A7BA5015C1372', this.entity.handle, toggle);
783
+ getTaskMoveNetworkId() {
784
+ return (inv('0xCACC2F9D994504B7', this.entity.handle, rai())) & 0xFFFFFFFF;
1099
785
  }
1100
786
  /**
1101
787
  * @param p1
@@ -1104,129 +790,613 @@ export class PedTask extends BaseTask {
1104
790
  * @param p4
1105
791
  * @param p5
1106
792
  * @param p6
1107
- * @param p7
1108
793
  */
1109
- moveInTrafficToDestination(p1, p2, p3, p4, p5, p6, p7) {
1110
- inv('0xDCA3A13F7A45338B', this.entity.handle, p1, p2, p3, p4, p5, p6, p7);
794
+ guardAssignedDefensiveArea(p1, p2, p3, p4, p5, p6) {
795
+ inv('0xD2A207EEBDF9889B', this.entity.handle, f(p1), f(p2), f(p3), f(p4), f(p5), p6);
1111
796
  }
1112
797
  /**
1113
- * @param attacker
1114
- * @param p2
1115
- * @returns Returns `true` on success, or `false` if `attacker` doesn't exist, or is dead.
798
+ * @param pos
799
+ * @param duration
800
+ * @param firingPattern
801
+ * @param p6
1116
802
  */
1117
- intimidated(attacker, p2) {
1118
- return inv('0x648B75D44930D6BD', this.entity.handle, attacker.handle, p2, rai());
803
+ shootAtCoord(pos, duration, firingPattern, p6) {
804
+ inv('0x46A6CC01E0826106', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration, _h(firingPattern), p6);
1119
805
  }
1120
806
  /**
807
+ * Makes a ped react to an entity.
808
+ * Params: reactingTo Entity can be 0, p8 is always 4
809
+ *
810
+ * @param reactingTo
811
+ * @param pos
812
+ * @param reactionName
813
+ * @param p6
814
+ * @param p7
815
+ * @param p8
816
+ */
817
+ react(reactingTo, pos, reactionName, p6, p7, p8) {
818
+ inv('0xC4C32C31920E1B70', this.entity.handle, reactingTo.handle, f(pos.x), f(pos.y), f(pos.z), reactionName, f(p6), f(p7), p8);
819
+ }
820
+ /**
821
+ * @param p1
822
+ * @param p2
823
+ * @param p3
824
+ * @param p4
825
+ * @param p5
826
+ * @param p6
827
+ * @param p7
828
+ */
829
+ guardAssignedDefensiveArea2(p1, p2, p3, p4, p5, p6, p7) {
830
+ inv('0x1FC9B33976BACD6C', this.entity.handle, p1, p2, p3, p4, p5, p6, p7);
831
+ }
832
+ /**
833
+ * @param pos
834
+ * @param heading
835
+ */
836
+ plantBomb(pos, heading) {
837
+ inv('0x965FEC691D55E9BF', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(heading));
838
+ }
839
+ /**
840
+ * @param scenarioHash
841
+ * @param pos
842
+ * @param heading
843
+ * @param duration
844
+ * @param sittingScenario
845
+ * @param teleport
846
+ * @param p9
847
+ * @param p10
848
+ * @param p11
849
+ */
850
+ startScenarioAtPosition(scenarioHash, pos, heading, duration, sittingScenario, teleport, p9, p10, p11) {
851
+ inv('0x4D1F61FC34AF3CD1', this.entity.handle, _h(scenarioHash), f(pos.x), f(pos.y), f(pos.z), f(heading), duration, sittingScenario, teleport, p9, f(p10), p11);
852
+ }
853
+ /**
854
+ * @param vehicle
855
+ * @param pos
856
+ * @param speed
857
+ * @param behaviorFlag
858
+ * @param stoppingRange
859
+ */
860
+ vehicleGotoNavmesh(vehicle, pos, speed, behaviorFlag, stoppingRange) {
861
+ inv('0x195AEEB13CEFE2EE', this.entity.handle, vehicle.handle, f(pos.x), f(pos.y), f(pos.z), f(speed), behaviorFlag, f(stoppingRange));
862
+ }
863
+ /**
864
+ * grappleStyle: AR_GRAPPLE_MOUNT_STANDING_FROM_FRONT, AR_GRAPPLE_MOUNT_STANDING_FROM_RIGHT, AR_GRAPPLE_MOUNT_STANDING_FROM_BACK, AR_GRAPPLE_MOUNT_STANDING_FROM_LEFT, AR_GRAPPLE_MOUNT_FROM_FRONT, AR_WOLF_EXECUTION_ENTER_FROM_BACK, AR_GRAPPLE_DRAG_FRONT_ON_ASS, AR_GRAPPLE_FRONT_FROM_LEFT_FAR, AR_BEAR_CHALLENGE_FRONT, AR_GRAPPLE_FRONT_FROM_FRONT, AR_GRAPPLE_MOUNT_FACEUP_FROM_FRONT
865
+ *
866
+ * @param targetPed
867
+ * @param grappleStyle
868
+ * @param p3
869
+ * @param p4
870
+ * @param p5
871
+ * @param p6
1121
872
  * @returns
1122
873
  */
1123
- waypointPlaybackGetIsShooting() {
1124
- return inv('0xA5B94DF8AF058F46', this.entity.handle);
874
+ grapple(targetPed, grappleStyle, p3, p4, p5, p6) {
875
+ return inv('0x779A2FFACEFAEA7B', this.entity.handle, targetPed.handle, _h(grappleStyle), p3, f(p4), p5, p6);
876
+ }
877
+ /**
878
+ * @param ped1
879
+ * @param waypointRecording
880
+ * @param p3
881
+ * @param p4
882
+ * @param p5
883
+ * @param p6
884
+ * @param p7
885
+ * @param p8
886
+ */
887
+ followEntityAlongWaypointRecordingAtOffset(ped1, waypointRecording, p3, p4, p5, p6, p7, p8) {
888
+ inv('0x4D2B787BAE9AB760', this.entity.handle, ped1.handle, waypointRecording, f(p3), f(p4), p5, p6, p7, p8);
889
+ }
890
+ /**
891
+ * @param pos
892
+ * @param speed
893
+ * @param p5
894
+ * @param p6
895
+ * @param walkingStyle
896
+ * @param p8
897
+ * @param p9
898
+ * @param p10
899
+ * @param p11
900
+ * @param p12
901
+ */
902
+ goToCoordAnyMeansExtraParams(pos, speed, p5, p6, walkingStyle, p8, p9, p10, p11, p12) {
903
+ inv('0x1DD45F9ECFDB1BC9', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(speed), p5, p6, walkingStyle, f(p8), p9, p10, p11, p12);
904
+ }
905
+ /**
906
+ * @param pos
907
+ * @param speedMultiplier
908
+ * @param timeout
909
+ * @param stoppingRange
910
+ * @param flags
911
+ * @param p8
912
+ * @param p9
913
+ * @param p10
914
+ * @param entity
915
+ * @param unk
916
+ */
917
+ followNavMeshToCoordAdvanced(pos, speedMultiplier, timeout, stoppingRange, flags, p8, p9, p10, entity, unk) {
918
+ inv('0x17F58B88D085DBAC', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(speedMultiplier), timeout, f(stoppingRange), flags, f(p8), f(p9), f(p10), entity.handle, f(unk));
919
+ }
920
+ /**
921
+ * @param radius
922
+ * @param time
923
+ * @param flags
924
+ */
925
+ combatHatedTargetsAroundPedTimed(radius, time, flags) {
926
+ inv('0x2BBA30B854534A0C', this.entity.handle, f(radius), time, flags);
927
+ }
928
+ /**
929
+ * @returns
930
+ */
931
+ isPedRunning() {
932
+ return inv('0xC5286FFC176F28A2', this.entity.handle, rai());
933
+ }
934
+ /**
935
+ * @returns
936
+ */
937
+ isPedSprinting() {
938
+ return inv('0x57E457CD2C0FC168', this.entity.handle, rai());
939
+ }
940
+ /**
941
+ * @param useSlidingSurfaces
942
+ */
943
+ setPedPathMayUseSlidingSurfaces(useSlidingSurfaces) {
944
+ inv('0x06ECF3925BC2ABAE', this.entity.handle, useSlidingSurfaces);
945
+ }
946
+ /**
947
+ * Force a ped that is already attacking to aim directly at the specified world coordinates.
948
+ *
949
+ * @param pos
950
+ * @param p4
951
+ * @param p5
952
+ * @param p6
953
+ */
954
+ forcePointAimAtCoord(pos, p4, p5, p6) {
955
+ inv('0x41323F4E0C4AE94B', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), p4, p5, p6);
956
+ }
957
+ /**
958
+ * @param p1
959
+ * @param p2
960
+ * @param p3
961
+ * @param p4
962
+ */
963
+ swapWeapon(p1, p2, p3, p4) {
964
+ inv('0xA21C51255B205245', this.entity.handle, p1, p2, p3, p4);
965
+ }
966
+ /**
967
+ * @param p1
968
+ * @param p2
969
+ * @param p3
970
+ * @param p4
971
+ * @param p5
972
+ * @param p6
973
+ * @param p7
974
+ * @param p8
975
+ */
976
+ gotoEntityOffsetXyz(p1, p2, p3, p4, p5, p6, p7, p8) {
977
+ inv('0xFA6DA9D151769392', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8);
978
+ }
979
+ /**
980
+ * @param pos
981
+ * @param distance
982
+ * @param duration
983
+ * @param p6
984
+ * @param p7
985
+ * @param p8
986
+ * @param p9
987
+ */
988
+ useNearestScenarioToCoordWarp(pos, distance, duration, p6, p7, p8, p9) {
989
+ inv('0x58E2E0F23F6B76C3', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), duration, p6, p7, p8, p9);
990
+ }
991
+ /**
992
+ * @param p1
993
+ * @returns
994
+ */
995
+ N_0x2D657B10F211C572(p1) {
996
+ return inv('0x2D657B10F211C572', this.entity.handle, f(p1));
997
+ }
998
+ /**
999
+ * Coords: volume coords used in R* Script smuggler2
1000
+ * p4/p5 = 0 in R* Scripts previous name TASK_COMBAT_PED_3
1001
+ *
1002
+ * @param pos
1003
+ * @param p4
1004
+ * @param p5
1005
+ */
1006
+ combatPedAtCoords(pos, p4, p5) {
1007
+ inv('0xC624414FA748B9BA', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), p4, p5);
1008
+ }
1009
+ /**
1010
+ * Makes the specified ped stand still for (time) milliseconds.
1011
+ *
1012
+ * @param time
1013
+ */
1014
+ standStill(time) {
1015
+ inv('0x919BE13EED931959', this.entity.handle, time);
1016
+ }
1017
+ /**
1018
+ * @param animDictionary
1019
+ * @param animationName
1020
+ * @param p3
1021
+ */
1022
+ stopAnimTask(animDictionary, animationName, p3) {
1023
+ inv('0x97FF36A1D40EA00A', this.entity.handle, animDictionary, animationName, f(p3));
1024
+ }
1025
+ /**
1026
+ * @param p1
1027
+ * @param p2
1028
+ * @param p3
1029
+ */
1030
+ turnToFaceClosestPed(p1, p2, p3) {
1031
+ inv('0x84179419DBDD36F2', this.entity.handle, f(p1), f(p2), p3);
1032
+ }
1033
+ /**
1034
+ * Fishing Research: https://pastebin.com/NmK5ZLVs
1035
+ * Only used in R* Scripts fishing_core and av_fishing_river
1036
+ *
1037
+ * @returns p1
1038
+ */
1039
+ getTaskFishing() {
1040
+ const result = inv('0xF3735ACD11ACD500', this.entity.handle, pvi());
1041
+ return [result[0], result[1]];
1042
+ }
1043
+ /**
1044
+ * @param p1
1045
+ * @param p2
1046
+ */
1047
+ shockingEventReact(p1, p2) {
1048
+ inv('0x452419CBD838065B', this.entity.handle, p1, p2);
1049
+ }
1050
+ /**
1051
+ * @returns
1052
+ */
1053
+ N_0xB520DBDA7FCF573F() {
1054
+ return inv('0xB520DBDA7FCF573F', this.entity.handle, rai());
1055
+ }
1056
+ /**
1057
+ * fleeType: see TASK_FLEE_COORD
1058
+ *
1059
+ * @param fleeFromTarget
1060
+ * @param pos
1061
+ * @param distance
1062
+ * @param p6
1063
+ * @param p7
1064
+ * @param p8
1065
+ * @param targetPed
1066
+ */
1067
+ fleeFromPed(fleeFromTarget, pos, distance, p6, p7, p8, targetPed) {
1068
+ inv('0x7B74D8EEDE9B5727', this.entity.handle, fleeFromTarget.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), p6, p7, f(p8), targetPed.handle);
1069
+ }
1070
+ /**
1071
+ * @returns
1072
+ */
1073
+ isPedGettingUp() {
1074
+ return inv('0x2A74E1D5F2F00EEC', this.entity.handle, rai());
1075
+ }
1076
+ /**
1077
+ * @param time
1078
+ */
1079
+ duck(time) {
1080
+ inv('0xA14B5FBF986BAC23', this.entity.handle, time);
1081
+ }
1082
+ /**
1083
+ * @param p1
1084
+ * @param p2
1085
+ * @param p3
1086
+ * @param p4
1087
+ */
1088
+ robPed(p1, p2, p3, p4) {
1089
+ inv('0x7BB967F85D8CCBDB', this.entity.handle, p1, p2, p3, p4);
1090
+ }
1091
+ /**
1092
+ * getupSetHash: see nm_blend_out_sets.meta
1093
+ *
1094
+ * @param flags
1095
+ * @param getupSetHash
1096
+ * @param p3
1097
+ * @param p4
1098
+ * @param p5
1099
+ */
1100
+ unhogtiePed(flags, getupSetHash, p3, p4, p5) {
1101
+ inv('0x79559BAD83CCD038', this.entity.handle, flags, _h(getupSetHash), p3, p4, f(p5));
1102
+ }
1103
+ /**
1104
+ * hecks if the ped camera is directed at the given coord within the specified radius. https://www.youtube.com/watch?v=iLHXrWVvq_c
1105
+ *
1106
+ * @param coord The coord to check if they're looking at
1107
+ * @param radius The radius of the frustum
1108
+ * @returns Returns `true` if the ped camera is within the range of the frustum, `false` otherwise
1109
+ */
1110
+ isPedLookingAtCoord(coord, radius) {
1111
+ return inv('0x508F5053E3F6F0C4', this.entity.handle, f(coord.x), f(coord.y), f(coord.z), f(radius), rai());
1112
+ }
1113
+ /**
1114
+ * @param entity
1115
+ */
1116
+ walkAway(entity) {
1117
+ inv('0x04ACFAC71E6858F9', this.entity.handle, entity.handle);
1118
+ }
1119
+ /**
1120
+ * @returns
1121
+ */
1122
+ getHogtieEscapeTimer() {
1123
+ return inv('0x4687E69D258BBE41', this.entity.handle, raf());
1124
+ }
1125
+ weapon() {
1126
+ inv('0x7157B82D60E4BC46', this.entity.handle);
1127
+ }
1128
+ /**
1129
+ * @returns
1130
+ */
1131
+ isPedWalking() {
1132
+ return inv('0xDE4C184B2B9B071A', this.entity.handle, rai());
1133
+ }
1134
+ /**
1135
+ * @param p1
1136
+ * @param p2
1137
+ * @param p3
1138
+ */
1139
+ waypointPlaybackPause(p1, p2, p3) {
1140
+ inv('0x0F342546AA06FED5', this.entity.handle, p1, p2, p3);
1141
+ }
1142
+ /**
1143
+ * meleeStyles: AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_MOUNT_FACEDOWN_FROM_FRONT, AR_ALLIGATOR_LEAPKILL, AR_ALLIGATOR_WAIST_AUTOKILL_FRONT
1144
+ *
1145
+ * @param meleeTarget
1146
+ * @param meleeStyle
1147
+ * @param p3
1148
+ * @param animBlendRatio
1149
+ * @param p5
1150
+ * @param p6
1151
+ */
1152
+ putPedDirectlyIntoMelee(meleeTarget, meleeStyle, p3, animBlendRatio, p5, p6) {
1153
+ inv('0x1C6CD14A876FFE39', this.entity.handle, meleeTarget.handle, _h(meleeStyle), f(p3), f(animBlendRatio), p5, p6);
1154
+ }
1155
+ /**
1156
+ * @param waypointRecording
1157
+ * @param p2
1158
+ * @param flag
1159
+ * @param p4
1160
+ * @param p5
1161
+ * @param p6
1162
+ * @param p7
1163
+ */
1164
+ followWaypointRecording(waypointRecording, p2, flag, p4, p5, p6, p7) {
1165
+ inv('0x0759591819534F7B', this.entity.handle, waypointRecording, p2, flag, p4, p5, p6, p7);
1166
+ }
1167
+ /**
1168
+ * @param targetPed
1169
+ */
1170
+ hogtieTargetPed(targetPed) {
1171
+ inv('0x27829AFD3E03AC1A', this.entity.handle, targetPed.handle);
1172
+ }
1173
+ /**
1174
+ * shootatEntity:
1175
+ * If true, peds will shoot at Entity till it is dead.
1176
+ * If false, peds will just walk till they reach the entity and will cease shooting.
1177
+ *
1178
+ * @param p1
1179
+ * @param p2
1180
+ * @param p3
1181
+ * @param p4
1182
+ * @param p5
1183
+ * @param p6
1184
+ * @param p7
1185
+ * @param p8
1186
+ * @param p9
1187
+ * @param p10
1188
+ */
1189
+ goToEntityWhileAimingAtEntity(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) {
1190
+ inv('0x97465886D35210E9', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
1191
+ }
1192
+ /**
1193
+ * @param pos
1194
+ * @param distance
1195
+ */
1196
+ useNearestTrainScenarioToCoordWarp(pos, distance) {
1197
+ inv('0x3774B03456DD6106', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance));
1198
+ }
1199
+ /**
1200
+ * @param p1
1201
+ */
1202
+ wanderSwim(p1) {
1203
+ inv('0x527EA3DB8BC7F03B', this.entity.handle, p1);
1204
+ }
1205
+ /**
1206
+ * duration in milliseconds
1207
+ *
1208
+ * @param pos
1209
+ * @param duration
1210
+ */
1211
+ turnPedToFaceCoord(pos, duration) {
1212
+ inv('0x1DDA930A0AC38571', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration);
1213
+ }
1214
+ /**
1215
+ * @param preferAvoidMud
1216
+ * @param p2
1217
+ */
1218
+ setPedPathPreferToAvoidMud(preferAvoidMud, p2) {
1219
+ inv('0x8BB283A7888AD1AD', this.entity.handle, preferAvoidMud, f(p2));
1220
+ }
1221
+ /**
1222
+ * @param animDict
1223
+ * @param animName
1224
+ * @param entity
1225
+ * @param p4
1226
+ * @param p5
1227
+ * @param p6
1228
+ * @param p7
1229
+ * @param p8
1230
+ * @param p9
1231
+ * @param p10
1232
+ * @param p11
1233
+ * @param p12
1234
+ * @param p13
1235
+ * @param p14
1236
+ */
1237
+ playUpperAnimFacingEntity(animDict, animName, entity, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
1238
+ inv('0xAD67214236AB1CFE', this.entity.handle, animDict, animName, entity.handle, p4, f(p5), f(p6), p7, f(p8), p9, p10, f(p11), p12, p13, f(p14));
1239
+ }
1240
+ /**
1241
+ * @param p1
1242
+ * @param p2
1243
+ */
1244
+ guard(p1, p2) {
1245
+ inv('0xB9FB242EACCAF30F', this.entity.handle, p1, p2);
1246
+ }
1247
+ /**
1248
+ * @param attacker
1249
+ * @param p2
1250
+ * @param unusedParam3 Unused by the native.
1251
+ * @param unusedParam4 Unused by the native.
1252
+ * @param everyFrame Removes the `0x1000` bitmask from `flag`
1253
+ * @param p6
1254
+ * @param p7 Removes the `0x80000` bitmask from `flag`
1255
+ * @param flag
1256
+ * @returns Returns `true` on success, `false` if it failed (whether due to `attacker` being invalid, or the `attacker` ped being dead)
1257
+ */
1258
+ intimidated2(attacker, p2, unusedParam3, unusedParam4, everyFrame, p6, p7, flag) {
1259
+ return inv('0x933ACC1A1771A288', this.entity.handle, attacker.handle, p2, unusedParam3, unusedParam4, everyFrame, p6, p7, flag, rai());
1260
+ }
1261
+ /**
1262
+ * @param avoidFire
1263
+ */
1264
+ setPedPathAvoidFire(avoidFire) {
1265
+ inv('0x4455517B28441E60', this.entity.handle, avoidFire);
1266
+ }
1267
+ /**
1268
+ * @param reviver
1269
+ * @param tool
1270
+ */
1271
+ reviveTarget(reviver, tool) {
1272
+ inv('0x356088527D9EBAAD', this.entity.handle, reviver.handle, _h(tool));
1273
+ }
1274
+ /**
1275
+ * https://github.com/femga/rdr3_discoveries/blob/master/animations/kit_emotes_list.lua
1276
+ * emote: https://alloc8or.re/rdr3/doc/enums/eEmote.txt enum eEmoteType
1277
+ * {
1278
+ * EMOTE_TYPE_INVALID = -1,
1279
+ * EMOTE_TYPE_REACT,
1280
+ * EMOTE_TYPE_ACTION,
1281
+ * EMOTE_TYPE_TAUNT,
1282
+ * EMOTE_TYPE_GREET,
1283
+ * EMOTE_TYPE_TWIRL_GUN,
1284
+ * EMOTE_TYPE_DANCE_FLOOR
1285
+ * }; enum eEmotePlaybackMode
1286
+ * {
1287
+ * EMOTE_PM_INVALID = -1,
1288
+ * EMOTE_PM_UPPERBODY,
1289
+ * EMOTE_PM_UPPERBODY_LOOP,
1290
+ * EMOTE_PM_FULLBODY,
1291
+ * };
1292
+ *
1293
+ * @param emoteType
1294
+ * @param playbackMode
1295
+ * @param emote
1296
+ * @param isSecondaryTask
1297
+ * @param canBreakOut
1298
+ * @param disableEarlyOutAnimTag
1299
+ * @param ignoreInvalidMainTask
1300
+ * @param destroyProps
1301
+ */
1302
+ playEmoteWithHash(emoteType, playbackMode, emote, isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps) {
1303
+ inv('0xB31A277C1AC7B7FF', this.entity.handle, emoteType, playbackMode, _h(emote), isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps);
1304
+ }
1305
+ /**
1306
+ * @param pos
1307
+ * @param timeout
1308
+ * @param p5
1309
+ * @param p6
1310
+ * @param p7
1311
+ * @param p8
1312
+ * @param coverpoint
1313
+ * @param p10
1314
+ * @param p11
1315
+ * @param p12
1316
+ */
1317
+ putPedDirectlyIntoCover(pos, timeout, p5, p6, p7, p8, coverpoint, p10, p11, p12) {
1318
+ inv('0x4172393E6BE1FECE', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), timeout, p5, f(p6), p7, p8, coverpoint, p10, p11, p12);
1125
1319
  }
1126
1320
  /**
1127
- * @param pos
1128
- * @param distance
1321
+ * @param p1
1322
+ * @param p2
1323
+ * @param p3
1324
+ * @param p4
1129
1325
  * @param p5
1130
1326
  * @param p6
1131
1327
  * @param p7
1132
1328
  * @param p8
1329
+ * @param p9
1330
+ * @param p10
1331
+ * @param p11
1332
+ * @param p12
1333
+ * @param p13
1334
+ * @param p14
1133
1335
  */
1134
- useNearestScenarioChainToCoordWarp(pos, distance, p5, p6, p7, p8) {
1135
- inv('0x97A28E63F0BA5631', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), p5, p6, p7, p8);
1336
+ goToCoordAndAimAtHatedEntitiesNearCoordUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
1337
+ inv('0x87BD711FC31EA273', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14);
1136
1338
  }
1137
1339
  /**
1138
- * returned values:
1139
- * 0 to 7 = task that's currently in progress, 0 meaning the first one.
1140
- * -1 no task sequence in progress.
1141
- *
1142
- * @returns
1340
+ * @param target
1143
1341
  */
1144
- getSequenceProgress() {
1145
- return inv('0x00A9010CFE1E3533', this.entity.handle, rai());
1342
+ arrestPed(target) {
1343
+ inv('0xF3B9A78A178572B1', this.entity.handle, target.handle);
1146
1344
  }
1147
1345
  /**
1346
+ * @param p1
1347
+ * @param p2
1348
+ * @param p3
1148
1349
  * @returns
1149
1350
  */
1150
- waypointPlaybackGetIsAiming() {
1151
- return inv('0xD73A5D1F0325C71C', this.entity.handle);
1152
- }
1153
- /**
1154
- * @param signalName
1155
- * @param value
1156
- */
1157
- setTaskMoveNetworkSignalFloat(signalName, value) {
1158
- inv('0xD5BB4025AE449A4E', this.entity.handle, signalName, f(value));
1351
+ setPedWaypointRouteOffset(p1, p2, p3) {
1352
+ return inv('0xED98E10B0AFCE4B4', this.entity.handle, f(p1), f(p2), f(p3));
1159
1353
  }
1160
1354
  /**
1161
- * @param taskSequenceId
1355
+ * @param waypointRecording
1356
+ * @returns
1162
1357
  */
1163
- performSequence(taskSequenceId) {
1164
- inv('0x5ABA3986D90D8A3B', this.entity.handle, taskSequenceId);
1358
+ isWaypointPlaybackGoingOnForPed(waypointRecording) {
1359
+ return inv('0xE03B3F2D3DC59B64', this.entity.handle, waypointRecording, rai());
1165
1360
  }
1166
1361
  /**
1167
1362
  * @param p1
1168
1363
  * @param p2
1169
- * @param p3
1170
1364
  */
1171
- moveInTraffic(p1, p2, p3) {
1172
- inv('0x8AA1593AEC087A29', this.entity.handle, p1, p2, p3);
1365
+ animalWrithe(p1, p2) {
1366
+ inv('0x8C038A39C4A4B6D6', this.entity.handle, p1, p2);
1173
1367
  }
1174
1368
  /**
1175
1369
  * @param p1
1176
- * @param permanently
1177
- */
1178
- knockedOut(p1, permanently) {
1179
- inv('0xF90427F00A495A28', this.entity.handle, f(p1), permanently);
1180
- }
1181
- /**
1182
- * @param duration
1183
- */
1184
- updateTaskHandsUpDuration(duration) {
1185
- inv('0xA98FCAFD7893C834', this.entity.handle, duration);
1186
- }
1187
- /**
1188
- * Similar to 0xB31A277C1AC7B7FF but checks if the ped's inventory contains the specified emote kit.
1189
- *
1190
- * @param emoteType
1191
- * @param playbackMode
1192
- * @param emote
1193
- * @param isSecondaryTask
1194
- * @param canBreakOut
1195
- * @param disableEarlyOutAnimTag
1196
- * @param ignoreInvalidMainTask
1197
- * @param destroyProps
1370
+ * @param p2
1371
+ * @param p3
1372
+ * @param p4
1198
1373
  */
1199
- playEmote(emoteType, playbackMode, emote, isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps) {
1200
- inv('0x884E3436CC1F41DD', this.entity.handle, emoteType, playbackMode, _h(emote), isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps);
1374
+ aimAtEntity(p1, p2, p3, p4) {
1375
+ inv('0xCF7569BD0FB480A0', this.entity.handle, p1, p2, p3, p4);
1201
1376
  }
1202
1377
  /**
1203
- * @param boat
1378
+ * @param targetPed
1204
1379
  * @param p2
1205
1380
  * @param p3
1206
- * @param pos
1207
- * @param p7
1208
- * @param maxSpeed
1209
- * @param drivingStyle
1210
- * @param p10
1211
- * @param p11
1212
1381
  */
1213
- boatMission(boat, p2, p3, pos, p7, maxSpeed, drivingStyle, p10, p11) {
1214
- inv('0x15C86013127CE63F', this.entity.handle, boat.handle, p2, p3, f(pos.x), f(pos.y), f(pos.z), p7, f(maxSpeed), drivingStyle, f(p10), p11);
1382
+ combatPedTimed(targetPed, p2, p3) {
1383
+ inv('0x944F30DCB7096BDE', this.entity.handle, targetPed.handle, p2, p3);
1215
1384
  }
1216
1385
  /**
1217
- * @param useLimits If `true` the ped's viewing angle will be limited to the angle range given for `minAngle` and `maxAngle`, when set to `false` the player always fully faces the player
1218
- * @param minAngle The minimum viewing angle, requires `useLimits` to be `true`.
1219
- * @param maxAngle The maximum viewing angle, reuqeres `useLimits` to be `true`.
1386
+ * @param p1
1387
+ * @param p2
1388
+ * @param p3
1220
1389
  */
1221
- setIntimidatedFacingAngle(useLimits, minAngle, maxAngle) {
1222
- inv('0x0FE797DD9F70DFA6', this.entity.handle, useLimits, f(minAngle), f(maxAngle));
1390
+ throwProjectile(p1, p2, p3) {
1391
+ inv('0x7285951DBF6B5A51', this.entity.handle, p1, p2, p3);
1223
1392
  }
1224
1393
  /**
1225
- * @param targetPed
1226
- * @param p2
1394
+ * @param pos
1395
+ * @param heading
1396
+ * @param p5
1227
1397
  */
1228
- animalFlee(targetPed, p2) {
1229
- inv('0xA899B61C66F09134', this.entity.handle, targetPed.handle, p2);
1398
+ pedSlideToCoord(pos, heading, p5) {
1399
+ inv('0xD04FE6765D990A06', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(heading), f(p5));
1230
1400
  }
1231
1401
  /**
1232
1402
  * @returns
@@ -2892,196 +3062,65 @@ export class PedTask extends BaseTask {
2892
3062
  shuffleToNextVehicleSeat(vehicle) {
2893
3063
  inv('0x7AA80209BDA643EB', this.entity.handle, vehicle.handle);
2894
3064
  }
2895
- /**
2896
- * @param pos
2897
- * @param speedMultiplier
2898
- * @param timeout
2899
- * @param stoppingRange
2900
- * @param flags
2901
- * @param p8
2902
- * @param p9
2903
- * @param p10
2904
- * @param entity
2905
- * @param unk
2906
- */
2907
- followNavMeshToCoordAdvanced(pos, speedMultiplier, timeout, stoppingRange, flags, p8, p9, p10, entity, unk) {
2908
- inv('0x17F58B88D085DBAC', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(speedMultiplier), timeout, f(stoppingRange), flags, f(p8), f(p9), f(p10), entity.handle, f(unk));
2909
- }
2910
- /**
2911
- * @param radius
2912
- * @param time
2913
- * @param flags
2914
- */
2915
- combatHatedTargetsAroundPedTimed(radius, time, flags) {
2916
- inv('0x2BBA30B854534A0C', this.entity.handle, f(radius), time, flags);
2917
- }
2918
- /**
2919
- * @returns
2920
- */
2921
- isPedRunning() {
2922
- return inv('0xC5286FFC176F28A2', this.entity.handle, rai());
3065
+ clearLookAt() {
3066
+ inv('0x0F804F1DB19B9689', this.entity.handle);
2923
3067
  }
2924
3068
  /**
3069
+ * @param inputContext
2925
3070
  * @returns
2926
3071
  */
2927
- isPedSprinting() {
2928
- return inv('0x57E457CD2C0FC168', this.entity.handle, rai());
2929
- }
2930
- /**
2931
- * @param useSlidingSurfaces
2932
- */
2933
- setPedPathMayUseSlidingSurfaces(useSlidingSurfaces) {
2934
- inv('0x06ECF3925BC2ABAE', this.entity.handle, useSlidingSurfaces);
2935
- }
2936
- /**
2937
- * Force a ped that is already attacking to aim directly at the specified world coordinates.
2938
- *
2939
- * @param pos
2940
- * @param p4
2941
- * @param p5
2942
- * @param p6
2943
- */
2944
- forcePointAimAtCoord(pos, p4, p5, p6) {
2945
- inv('0x41323F4E0C4AE94B', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), p4, p5, p6);
2946
- }
2947
- /**
2948
- * @param p1
2949
- * @param p2
2950
- * @param p3
2951
- * @param p4
2952
- */
2953
- swapWeapon(p1, p2, p3, p4) {
2954
- inv('0xA21C51255B205245', this.entity.handle, p1, p2, p3, p4);
2955
- }
2956
- /**
2957
- * @param p1
2958
- * @param p2
2959
- * @param p3
2960
- * @param p4
2961
- * @param p5
2962
- * @param p6
2963
- * @param p7
2964
- * @param p8
2965
- */
2966
- gotoEntityOffsetXyz(p1, p2, p3, p4, p5, p6, p7, p8) {
2967
- inv('0xFA6DA9D151769392', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8);
2968
- }
2969
- /**
2970
- * @param pos
2971
- * @param distance
2972
- * @param duration
2973
- * @param p6
2974
- * @param p7
2975
- * @param p8
2976
- * @param p9
2977
- */
2978
- useNearestScenarioToCoordWarp(pos, distance, duration, p6, p7, p8, p9) {
2979
- inv('0x58E2E0F23F6B76C3', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(distance), duration, p6, p7, p8, p9);
2980
- }
2981
- /**
2982
- * @param neverUseInteriors
2983
- */
2984
- setPedPathNeverUseInteriors(neverUseInteriors) {
2985
- inv('0x42CFD8FD8CC8DC69', this.entity.handle, neverUseInteriors);
2986
- }
2987
- /**
2988
- * @param radius
2989
- */
2990
- combatHatedTargets(radius) {
2991
- inv('0x8182B561A29BD597', this.entity.handle, f(radius));
2992
- }
2993
- /**
2994
- * Only used in R* Scripts fishing_core and av_fishing_river
2995
- *
2996
- * @returns p1
2997
- */
2998
- setTaskFishing() {
2999
- const result = inv('0xF3735ACD11ACD501', this.entity.handle, pvi());
3000
- return [result[0], result[1]];
3072
+ getItemInteractionPromptProgress(inputContext) {
3073
+ return inv('0xBC864A70AD55E0C1', this.entity.handle, _h(inputContext), raf());
3001
3074
  }
3002
3075
  /**
3003
3076
  * @param p1
3004
3077
  * @param p2
3005
3078
  * @param p3
3006
3079
  * @param p4
3007
- * @param p5
3008
- * @param p6
3009
- * @param p7
3010
- * @param p8
3011
- * @param p9
3012
- * @param p10
3013
- */
3014
- goToEntityWhileAimingAtEntityUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) {
3015
- inv('0xCEF0117C233026AD', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
3016
- }
3017
- /**
3018
- * @param preferStayInWater
3019
- * @param p2
3020
- */
3021
- setPedPathPreferStayInWater(preferStayInWater, p2) {
3022
- inv('0xC6170856E54557B2', this.entity.handle, preferStayInWater, f(p2));
3023
- }
3024
- /**
3025
- * @param name
3026
- */
3027
- requestTaskMoveNetworkStateTransition(name) {
3028
- inv('0xD01015C7316AE176', this.entity.handle, name);
3029
- }
3030
- /**
3031
- * @param entity
3032
- */
3033
- pedFishingrodHookEntity(entity) {
3034
- inv('0x1A52076D26E09004', this.entity.handle, entity.handle);
3035
- }
3036
- /**
3037
- * Baits: p_fishHook02x, p_baitBread01x, p_baitCorn01x, p_baitCheese01x, p_baitWorm01x, p_baitCricket01x, p_crawdad01x, p_finisheDragonfly01x, p_finisdFishlure01x, p_finishdCrawd01x, p_finisheDragonflyLegendary01x, p_finisdFishlureLegendary01x, p_finishdCrawdLegendary01x, p_lgoc_spinner_v4
3038
- *
3039
- * @param bait
3040
- * @param withoutBuoy
3041
- * @param instantly
3042
3080
  */
3043
- setFishingBait(bait, withoutBuoy, instantly) {
3044
- inv('0x9B0C7FA063E67629', this.entity.handle, bait, withoutBuoy, instantly);
3081
+ setSphereDefensiveArea(p1, p2, p3, p4) {
3082
+ inv('0x933C06518B52A9A4', this.entity.handle, f(p1), f(p2), f(p3), f(p4));
3045
3083
  }
3046
3084
  /**
3047
- * Params: p3, p4, p5, p6: 0, 0, 0, -1.0f in R* Scripts
3048
- *
3049
- * @param item
3085
+ * @param p1
3086
+ * @param p2
3050
3087
  * @param p3
3051
3088
  * @param p4
3052
- * @param p5
3053
- * @param p6
3054
- * @returns guid
3055
3089
  */
3056
- itemInteraction3(item, p3, p4, p5, p6) {
3057
- const result = inv('0xD61D5E1AD9876DEB', this.entity.handle, _h(item), pvi(), p3, p4, p5, f(p6));
3058
- return result;
3090
+ useRandomScenarioInGroup(p1, p2, p3, p4) {
3091
+ inv('0x14747F4A5971DE4E', this.entity.handle, p1, p2, p3, p4);
3059
3092
  }
3060
3093
  /**
3061
- * @returns Returns `true` if the specified `ped` is currently in combat using a ranged weapon, and is ready to shoot (actively attempting to attack)
3094
+ * enum eWhistleType
3095
+ * {
3096
+ * WHISTLE_MAIN,
3097
+ * WHISTLE_SECONDARY,
3098
+ * WHISTLE_DOUBLE,
3099
+ * WHISTLE_URGENT,
3100
+ * WHISTLE_LONG
3101
+ * };
3102
+ *
3103
+ * @param p1
3104
+ * @param whistleType
3062
3105
  */
3063
- getTaskCombatReadyToShoot() {
3064
- return inv('0x5EA655F01D93667A', this.entity.handle, rai());
3106
+ goToWhistle(p1, whistleType) {
3107
+ inv('0xBAD6545608CECA6E', this.entity.handle, p1.handle, whistleType);
3065
3108
  }
3066
3109
  /**
3067
- * @param vehicle
3068
- * @param seat
3110
+ * @param pos
3111
+ * @param duration
3112
+ * @param flags
3113
+ * @param p6
3114
+ * @param p7
3069
3115
  */
3070
- warpPedIntoVehicle(vehicle, seat) {
3071
- inv('0x9A7D091411C5F684', this.entity.handle, vehicle.handle, seat);
3116
+ lookAtCoord(pos, duration, flags, p6, p7) {
3117
+ inv('0x6FA46612594F7973', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), duration, flags, p6, p7);
3072
3118
  }
3073
3119
  /**
3074
- * ped = Ped you want to perform this task.
3075
- * target = the Entity they should aim at.
3076
- * distanceToStopAt = distance from the target, where the ped should stop to aim.
3077
- * StartAimingDist = distance where the ped should start to aim.
3078
- *
3079
- * @param target
3080
- * @param distanceToStopAt
3081
- * @param StartAimingDist
3120
+ * @returns
3082
3121
  */
3083
- gotoEntityAiming(target, distanceToStopAt, StartAimingDist) {
3084
- inv('0xA9DA48FAB8A76C12', this.entity.handle, target.handle, f(distanceToStopAt), f(StartAimingDist));
3122
+ isPedInHitReact() {
3123
+ return inv('0xF330A5C062B29BED', this.entity.handle);
3085
3124
  }
3086
3125
  /**
3087
3126
  * @param p1
@@ -3092,185 +3131,146 @@ export class PedTask extends BaseTask {
3092
3131
  * @param p6
3093
3132
  * @param p7
3094
3133
  * @param p8
3095
- * @param p9
3096
- * @param p10
3097
- * @param p11
3098
- * @param p12
3099
- * @param p13
3100
- * @param p14
3101
- */
3102
- goToCoordWhileAimingAtEntityUsingCombatStyle(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14) {
3103
- inv('0x78426D0982D083C9', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14);
3104
- }
3105
- /**
3106
- * Used with 'P_BODYPARTARMFLOAT02X' model in fishing_core.c
3107
- *
3108
- * @param object
3109
- */
3110
- pedFishingrodHookObject(object) {
3111
- inv('0xCE71C2F9BAA3F975', this.entity.handle, object.handle);
3112
- }
3113
- /**
3114
- * @param exitAnimation
3115
- * @param p2
3116
3134
  */
3117
- reactLookAtEnd(exitAnimation, p2) {
3118
- inv('0x541E5B41DCA45828', this.entity.handle, exitAnimation, p2);
3119
- }
3120
- clearDrivebyTaskUnderneathDrivingTask() {
3121
- inv('0xC35B5CDB2824CF69', this.entity.handle);
3122
- }
3123
- clearLookAt() {
3124
- inv('0x0F804F1DB19B9689', this.entity.handle);
3135
+ N_0x3FFCD7BBA074CC80(p1, p2, p3, p4, p5, p6, p7, p8) {
3136
+ inv('0x3FFCD7BBA074CC80', this.entity.handle, p1, p2, p3, p4, p5, p6, p7, p8);
3125
3137
  }
3126
3138
  /**
3127
- * @param inputContext
3128
3139
  * @returns
3129
3140
  */
3130
- getItemInteractionPromptProgress(inputContext) {
3131
- return inv('0xBC864A70AD55E0C1', this.entity.handle, _h(inputContext), raf());
3141
+ isMountedWeaponTaskUnderneathDrivingTask() {
3142
+ return inv('0xA320EF046186FA3B', this.entity.handle, rai());
3132
3143
  }
3133
3144
  /**
3134
- * @param toggle
3145
+ * flags: See TASK_ENTER_VEHICLE
3146
+ *
3147
+ * @param p1
3148
+ * @param flags Refer to [enum: eEnterExitVehicleFlags]
3135
3149
  */
3136
- setPedPathCanUseLadders(toggle) {
3137
- inv('0x77A5B103C87F476E', this.entity.handle, toggle);
3150
+ disembarkNearestTrainCarriage(p1, flags) {
3151
+ inv('0x0A11F3BDEC03ED5F', this.entity.handle, f(p1), flags);
3138
3152
  }
3139
3153
  /**
3140
- * @param p1
3141
- * @param p2
3154
+ * @param radius
3142
3155
  */
3143
- stopAnimPlayback(p1, p2) {
3144
- inv('0xEE08C992D238C5D1', this.entity.handle, p1, p2);
3156
+ combatHatedTargetsNoLosTest(radius) {
3157
+ inv('0xB5BC69D9C4060BC3', this.entity.handle, f(radius));
3145
3158
  }
3146
3159
  /**
3147
- * @param targetPed
3148
- * @param p2
3149
- * @returns
3160
+ * @param p1
3150
3161
  */
3151
- confront(targetPed, p2) {
3152
- return inv('0x3A2A2071DF5CC569', this.entity.handle, targetPed.handle, p2);
3153
- }
3154
- N_0x1F298C7BD30D1240() {
3155
- inv('0x1F298C7BD30D1240', this.entity.handle);
3162
+ N_0x31BB338F64D5C861(p1) {
3163
+ inv('0x31BB338F64D5C861', this.entity.handle, p1);
3156
3164
  }
3157
3165
  /**
3158
- * @param p1
3159
- * @param p2
3160
- * @param p3
3166
+ * @param modifier
3161
3167
  */
3162
- setCrouchMovement(p1, p2, p3) {
3163
- inv('0x17293C633C8AC019', this.entity.handle, p1, p2, p3);
3168
+ setPedPathClimbCostModifier(modifier) {
3169
+ inv('0x88E32DB8C1A4AA4B', this.entity.handle, f(modifier));
3164
3170
  }
3165
3171
  /**
3166
- * Tells the ped to go to an offset coord from an entity, without using the navmesh. if timeBeforeTeleport is -1 the ped will never warp, p7 is 1 or 0 still unknown param
3167
- *
3168
3172
  * @param entity
3173
+ * @param duration
3174
+ * @param targetRadius
3169
3175
  * @param offset
3170
3176
  * @param moveBlendRatio
3171
- * @param timeBeforeTeleport
3172
- * @param p7
3177
+ * @param offsetFlags
3173
3178
  */
3174
- goStraightToCoordRelativeToEntity(entity, offset, moveBlendRatio, timeBeforeTeleport, p7) {
3175
- inv('0x61E360B7E040D12E', this.entity.handle, entity.handle, f(offset.x), f(offset.y), f(offset.z), moveBlendRatio, timeBeforeTeleport, p7);
3179
+ gotoEntityOffsetXy(entity, duration, targetRadius, offset, moveBlendRatio, offsetFlags) {
3180
+ inv('0x338E7EF52B6095A9', this.entity.handle, entity.handle, duration, f(targetRadius), f(offset.x), f(offset.y), f(moveBlendRatio), offsetFlags);
3176
3181
  }
3177
3182
  /**
3178
- * Sets the time it takes for a hogtied ped to escape
3179
- * -1.0f for ped to never escape
3183
+ * Makes ped walk around the area the params p1 p2 seems to not affect anything but p2 is either 0 or 1 and p1 is mostly 1.0 or ped heading
3180
3184
  *
3181
- * @param time
3185
+ * @param p2
3186
+ * @param p3
3182
3187
  */
3183
- setHogtieEscapeTimer(time) {
3184
- inv('0xAB591AE6B48B913E', this.entity.handle, f(time));
3188
+ wanderStandard(p2, p3) {
3189
+ inv('0xBB9CE077274F6A1B', this.entity.handle, f(p2), p3);
3185
3190
  }
3186
3191
  /**
3187
- * Makes the ped run to take cover
3192
+ * @param p1
3193
+ * @param p2
3188
3194
  */
3189
- stayInCover() {
3190
- inv('0xE5DA8615A6180789', this.entity.handle);
3195
+ clearPedTasks(p1, p2) {
3196
+ inv('0xE1EF3C1216AFF2CD', this.entity.handle, p1, p2);
3191
3197
  }
3192
3198
  /**
3193
- * @param p1
3199
+ * @param signalName
3200
+ * @param value
3194
3201
  */
3195
- followWaypointRecordingAdvanced(p1) {
3196
- inv('0x0CFC13EBC19BCA52', this.entity.handle, p1);
3202
+ setTaskMoveNetworkSignalFloat(signalName, value) {
3203
+ inv('0xD5BB4025AE449A4E', this.entity.handle, signalName, f(value));
3197
3204
  }
3198
3205
  /**
3199
- * Tells the ped to go to a coord, without using the navemesh. if timeBeforeTeleport is -1 the ped will never warp, p8 is always 0 or 1 still unknown
3200
- *
3201
- * @param pos
3202
- * @param moveBlendRatio
3203
- * @param timeBeforeTeleport
3204
- * @param finalHeading
3205
- * @param targetRadius
3206
- * @param p8
3206
+ * @param taskSequenceId
3207
3207
  */
3208
- goStraightToCoord(pos, moveBlendRatio, timeBeforeTeleport, finalHeading, targetRadius, p8) {
3209
- inv('0xD76B57B44F1E6F8B', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), f(moveBlendRatio), timeBeforeTeleport, f(finalHeading), f(targetRadius), p8);
3208
+ performSequence(taskSequenceId) {
3209
+ inv('0x5ABA3986D90D8A3B', this.entity.handle, taskSequenceId);
3210
3210
  }
3211
3211
  /**
3212
3212
  * @param p1
3213
- * @returns
3213
+ * @param p2
3214
+ * @param p3
3214
3215
  */
3215
- N_0x2D657B10F211C572(p1) {
3216
- return inv('0x2D657B10F211C572', this.entity.handle, f(p1));
3216
+ moveInTraffic(p1, p2, p3) {
3217
+ inv('0x8AA1593AEC087A29', this.entity.handle, p1, p2, p3);
3217
3218
  }
3218
3219
  /**
3219
- * Coords: volume coords used in R* Script smuggler2
3220
- * p4/p5 = 0 in R* Scripts previous name TASK_COMBAT_PED_3
3221
- *
3222
- * @param pos
3223
- * @param p4
3224
- * @param p5
3220
+ * @param p1
3221
+ * @param permanently
3225
3222
  */
3226
- combatPedAtCoords(pos, p4, p5) {
3227
- inv('0xC624414FA748B9BA', this.entity.handle, f(pos.x), f(pos.y), f(pos.z), p4, p5);
3223
+ knockedOut(p1, permanently) {
3224
+ inv('0xF90427F00A495A28', this.entity.handle, f(p1), permanently);
3228
3225
  }
3229
3226
  /**
3230
- * Makes the specified ped stand still for (time) milliseconds.
3231
- *
3232
- * @param time
3227
+ * @param duration
3233
3228
  */
3234
- standStill(time) {
3235
- inv('0x919BE13EED931959', this.entity.handle, time);
3229
+ updateTaskHandsUpDuration(duration) {
3230
+ inv('0xA98FCAFD7893C834', this.entity.handle, duration);
3236
3231
  }
3237
3232
  /**
3238
- * @param animDictionary
3239
- * @param animationName
3240
- * @param p3
3233
+ * Similar to 0xB31A277C1AC7B7FF but checks if the ped's inventory contains the specified emote kit.
3234
+ *
3235
+ * @param emoteType
3236
+ * @param playbackMode
3237
+ * @param emote
3238
+ * @param isSecondaryTask
3239
+ * @param canBreakOut
3240
+ * @param disableEarlyOutAnimTag
3241
+ * @param ignoreInvalidMainTask
3242
+ * @param destroyProps
3241
3243
  */
3242
- stopAnimTask(animDictionary, animationName, p3) {
3243
- inv('0x97FF36A1D40EA00A', this.entity.handle, animDictionary, animationName, f(p3));
3244
+ playEmote(emoteType, playbackMode, emote, isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps) {
3245
+ inv('0x884E3436CC1F41DD', this.entity.handle, emoteType, playbackMode, _h(emote), isSecondaryTask, canBreakOut, disableEarlyOutAnimTag, ignoreInvalidMainTask, destroyProps);
3244
3246
  }
3245
3247
  /**
3246
- * @param p1
3248
+ * @param boat
3247
3249
  * @param p2
3248
3250
  * @param p3
3251
+ * @param pos
3252
+ * @param p7
3253
+ * @param maxSpeed
3254
+ * @param drivingStyle
3255
+ * @param p10
3256
+ * @param p11
3249
3257
  */
3250
- turnToFaceClosestPed(p1, p2, p3) {
3251
- inv('0x84179419DBDD36F2', this.entity.handle, f(p1), f(p2), p3);
3258
+ boatMission(boat, p2, p3, pos, p7, maxSpeed, drivingStyle, p10, p11) {
3259
+ inv('0x15C86013127CE63F', this.entity.handle, boat.handle, p2, p3, f(pos.x), f(pos.y), f(pos.z), p7, f(maxSpeed), drivingStyle, f(p10), p11);
3252
3260
  }
3253
3261
  /**
3254
- * Fishing Research: https://pastebin.com/NmK5ZLVs
3255
- * Only used in R* Scripts fishing_core and av_fishing_river
3256
- *
3257
- * @returns p1
3262
+ * @param useLimits If `true` the ped's viewing angle will be limited to the angle range given for `minAngle` and `maxAngle`, when set to `false` the player always fully faces the player
3263
+ * @param minAngle The minimum viewing angle, requires `useLimits` to be `true`.
3264
+ * @param maxAngle The maximum viewing angle, reuqeres `useLimits` to be `true`.
3258
3265
  */
3259
- getTaskFishing() {
3260
- const result = inv('0xF3735ACD11ACD500', this.entity.handle, pvi());
3261
- return [result[0], result[1]];
3266
+ setIntimidatedFacingAngle(useLimits, minAngle, maxAngle) {
3267
+ inv('0x0FE797DD9F70DFA6', this.entity.handle, useLimits, f(minAngle), f(maxAngle));
3262
3268
  }
3263
3269
  /**
3264
- * @param p1
3270
+ * @param targetPed
3265
3271
  * @param p2
3266
3272
  */
3267
- shockingEventReact(p1, p2) {
3268
- inv('0x452419CBD838065B', this.entity.handle, p1, p2);
3269
- }
3270
- /**
3271
- * @returns
3272
- */
3273
- N_0xB520DBDA7FCF573F() {
3274
- return inv('0xB520DBDA7FCF573F', this.entity.handle, rai());
3273
+ animalFlee(targetPed, p2) {
3274
+ inv('0xA899B61C66F09134', this.entity.handle, targetPed.handle, p2);
3275
3275
  }
3276
3276
  }