@nativewrappers/redm-codegen 0.0.4 → 0.0.5

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 (317) hide show
  1. package/dist/classes/AnimScene.d.ts +96 -96
  2. package/dist/classes/AnimScene.d.ts.map +1 -1
  3. package/dist/classes/AnimScene.js +137 -137
  4. package/dist/classes/BaseModel.d.ts +19 -19
  5. package/dist/classes/BaseModel.d.ts.map +1 -1
  6. package/dist/classes/BaseModel.js +33 -33
  7. package/dist/classes/BaseTask.d.ts +33 -33
  8. package/dist/classes/BaseTask.d.ts.map +1 -1
  9. package/dist/classes/BaseTask.js +40 -40
  10. package/dist/classes/Cam.d.ts +85 -85
  11. package/dist/classes/Cam.d.ts.map +1 -1
  12. package/dist/classes/Cam.js +108 -108
  13. package/dist/classes/Entity.d.ts +288 -283
  14. package/dist/classes/Entity.d.ts.map +1 -1
  15. package/dist/classes/Entity.js +410 -401
  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/ItemSet.d.ts +2 -2
  20. package/dist/classes/ItemSet.d.ts.map +1 -1
  21. package/dist/classes/ItemSet.js +3 -3
  22. package/dist/classes/Ped.d.ts +286 -286
  23. package/dist/classes/Ped.d.ts.map +1 -1
  24. package/dist/classes/Ped.js +425 -425
  25. package/dist/classes/PedModel.d.ts +1 -1
  26. package/dist/classes/PedModel.d.ts.map +1 -1
  27. package/dist/classes/PedModel.js +2 -2
  28. package/dist/classes/PedTask.d.ts +729 -729
  29. package/dist/classes/PedTask.d.ts.map +1 -1
  30. package/dist/classes/PedTask.js +935 -935
  31. package/dist/classes/PersChar.d.ts +13 -13
  32. package/dist/classes/PersChar.d.ts.map +1 -1
  33. package/dist/classes/PersChar.js +19 -19
  34. package/dist/classes/Pickup.d.ts +6 -6
  35. package/dist/classes/Pickup.d.ts.map +1 -1
  36. package/dist/classes/Pickup.js +13 -13
  37. package/dist/classes/Player.d.ts +343 -339
  38. package/dist/classes/Player.d.ts.map +1 -1
  39. package/dist/classes/Player.js +495 -489
  40. package/dist/classes/Prop.d.ts +64 -64
  41. package/dist/classes/Prop.d.ts.map +1 -1
  42. package/dist/classes/Prop.js +94 -94
  43. package/dist/classes/PropSet.d.ts +18 -18
  44. package/dist/classes/PropSet.d.ts.map +1 -1
  45. package/dist/classes/PropSet.js +27 -27
  46. package/dist/classes/Vehicle.d.ts +122 -122
  47. package/dist/classes/Vehicle.d.ts.map +1 -1
  48. package/dist/classes/Vehicle.js +147 -147
  49. package/dist/classes/VehicleModel.d.ts +1 -1
  50. package/dist/classes/VehicleModel.d.ts.map +1 -1
  51. package/dist/classes/VehicleModel.js +2 -2
  52. package/dist/classes/VehicleTask.d.ts +24 -24
  53. package/dist/classes/VehicleTask.d.ts.map +1 -1
  54. package/dist/classes/VehicleTask.js +30 -30
  55. package/dist/classes/Volume.d.ts +44 -44
  56. package/dist/classes/Volume.d.ts.map +1 -1
  57. package/dist/classes/Volume.js +58 -58
  58. package/dist/classes/Weapon.d.ts +351 -351
  59. package/dist/classes/Weapon.d.ts.map +1 -1
  60. package/dist/classes/Weapon.js +486 -486
  61. package/dist/namespaces/Aicoverpoint.d.ts +23 -23
  62. package/dist/namespaces/Aicoverpoint.d.ts.map +1 -1
  63. package/dist/namespaces/Aicoverpoint.js +35 -35
  64. package/dist/namespaces/Aitransport.d.ts +78 -78
  65. package/dist/namespaces/Aitransport.d.ts.map +1 -1
  66. package/dist/namespaces/Aitransport.js +95 -95
  67. package/dist/namespaces/Animscene.d.ts +48 -48
  68. package/dist/namespaces/Animscene.d.ts.map +1 -1
  69. package/dist/namespaces/Animscene.js +65 -65
  70. package/dist/namespaces/Audio.d.ts +476 -476
  71. package/dist/namespaces/Audio.d.ts.map +1 -1
  72. package/dist/namespaces/Audio.js +692 -692
  73. package/dist/namespaces/Bounty.d.ts +57 -57
  74. package/dist/namespaces/Bounty.d.ts.map +1 -1
  75. package/dist/namespaces/Bounty.js +90 -90
  76. package/dist/namespaces/CamStatics.d.ts +432 -432
  77. package/dist/namespaces/CamStatics.d.ts.map +1 -1
  78. package/dist/namespaces/CamStatics.js +606 -606
  79. package/dist/namespaces/Collection.d.ts +78 -78
  80. package/dist/namespaces/Collection.d.ts.map +1 -1
  81. package/dist/namespaces/Collection.js +111 -111
  82. package/dist/namespaces/Companion.d.ts +22 -22
  83. package/dist/namespaces/Companion.d.ts.map +1 -1
  84. package/dist/namespaces/Companion.js +30 -30
  85. package/dist/namespaces/Compapp.js +1 -1
  86. package/dist/namespaces/Compendium.d.ts +58 -58
  87. package/dist/namespaces/Compendium.d.ts.map +1 -1
  88. package/dist/namespaces/Compendium.js +83 -83
  89. package/dist/namespaces/Crashlog.d.ts +10 -10
  90. package/dist/namespaces/Crashlog.d.ts.map +1 -1
  91. package/dist/namespaces/Crashlog.js +21 -21
  92. package/dist/namespaces/Crew.js +4 -4
  93. package/dist/namespaces/Databinding.d.ts +154 -154
  94. package/dist/namespaces/Databinding.d.ts.map +1 -1
  95. package/dist/namespaces/Databinding.js +222 -222
  96. package/dist/namespaces/Datafile.js +4 -4
  97. package/dist/namespaces/Decorator.d.ts +19 -19
  98. package/dist/namespaces/Decorator.d.ts.map +1 -1
  99. package/dist/namespaces/Decorator.js +34 -34
  100. package/dist/namespaces/Dlc.d.ts +5 -5
  101. package/dist/namespaces/Dlc.d.ts.map +1 -1
  102. package/dist/namespaces/Dlc.js +9 -9
  103. package/dist/namespaces/EntityStatics.d.ts +80 -80
  104. package/dist/namespaces/EntityStatics.d.ts.map +1 -1
  105. package/dist/namespaces/EntityStatics.js +113 -113
  106. package/dist/namespaces/Event.js +4 -4
  107. package/dist/namespaces/Fire.d.ts +89 -89
  108. package/dist/namespaces/Fire.d.ts.map +1 -1
  109. package/dist/namespaces/Fire.js +115 -115
  110. package/dist/namespaces/Flock.js +2 -2
  111. package/dist/namespaces/Gang.js +2 -2
  112. package/dist/namespaces/GoogleAnalytics.js +2 -2
  113. package/dist/namespaces/Graphics.d.ts +781 -781
  114. package/dist/namespaces/Graphics.d.ts.map +1 -1
  115. package/dist/namespaces/Graphics.js +1207 -1207
  116. package/dist/namespaces/Hud.d.ts +483 -483
  117. package/dist/namespaces/Hud.d.ts.map +1 -1
  118. package/dist/namespaces/Hud.js +678 -678
  119. package/dist/namespaces/Ik.js +1 -1
  120. package/dist/namespaces/Interaction.js +3 -3
  121. package/dist/namespaces/InteriorStatics.d.ts +40 -40
  122. package/dist/namespaces/InteriorStatics.d.ts.map +1 -1
  123. package/dist/namespaces/InteriorStatics.js +57 -57
  124. package/dist/namespaces/Inventory.d.ts +211 -211
  125. package/dist/namespaces/Inventory.d.ts.map +1 -1
  126. package/dist/namespaces/Inventory.js +291 -291
  127. package/dist/namespaces/Itemdatabase.js +3 -3
  128. package/dist/namespaces/Itemset.js +2 -2
  129. package/dist/namespaces/Law.d.ts +1 -1
  130. package/dist/namespaces/Law.d.ts.map +1 -1
  131. package/dist/namespaces/Law.js +19 -19
  132. package/dist/namespaces/Localization.js +1 -1
  133. package/dist/namespaces/Map.js +3 -3
  134. package/dist/namespaces/Minigame.d.ts +65 -65
  135. package/dist/namespaces/Minigame.d.ts.map +1 -1
  136. package/dist/namespaces/Minigame.js +105 -105
  137. package/dist/namespaces/Misc.d.ts +3 -3
  138. package/dist/namespaces/Misc.d.ts.map +1 -1
  139. package/dist/namespaces/Misc.js +35 -35
  140. package/dist/namespaces/Missiondata.d.ts +15 -15
  141. package/dist/namespaces/Missiondata.d.ts.map +1 -1
  142. package/dist/namespaces/Missiondata.js +24 -24
  143. package/dist/namespaces/Money.js +3 -3
  144. package/dist/namespaces/Netshopping.d.ts +58 -58
  145. package/dist/namespaces/Netshopping.d.ts.map +1 -1
  146. package/dist/namespaces/Netshopping.js +89 -89
  147. package/dist/namespaces/Network.d.ts +1067 -1067
  148. package/dist/namespaces/Network.d.ts.map +1 -1
  149. package/dist/namespaces/Network.js +1586 -1586
  150. package/dist/namespaces/Object.d.ts +231 -231
  151. package/dist/namespaces/Object.d.ts.map +1 -1
  152. package/dist/namespaces/Object.js +337 -337
  153. package/dist/namespaces/Pad.d.ts +42 -42
  154. package/dist/namespaces/Pad.d.ts.map +1 -1
  155. package/dist/namespaces/Pad.js +68 -68
  156. package/dist/namespaces/Pathfind.js +10 -10
  157. package/dist/namespaces/PedStatics.d.ts +2 -2
  158. package/dist/namespaces/PedStatics.d.ts.map +1 -1
  159. package/dist/namespaces/PedStatics.js +10 -10
  160. package/dist/namespaces/Perschar.d.ts +54 -54
  161. package/dist/namespaces/Perschar.d.ts.map +1 -1
  162. package/dist/namespaces/Perschar.js +84 -84
  163. package/dist/namespaces/Physics.d.ts +121 -121
  164. package/dist/namespaces/Physics.d.ts.map +1 -1
  165. package/dist/namespaces/Physics.js +155 -155
  166. package/dist/namespaces/PlayerStatics.d.ts +97 -97
  167. package/dist/namespaces/PlayerStatics.d.ts.map +1 -1
  168. package/dist/namespaces/PlayerStatics.js +142 -142
  169. package/dist/namespaces/Population.d.ts +11 -11
  170. package/dist/namespaces/Population.d.ts.map +1 -1
  171. package/dist/namespaces/Population.js +15 -15
  172. package/dist/namespaces/Posse.d.ts +33 -33
  173. package/dist/namespaces/Posse.d.ts.map +1 -1
  174. package/dist/namespaces/Posse.js +51 -51
  175. package/dist/namespaces/Propset.d.ts +59 -59
  176. package/dist/namespaces/Propset.d.ts.map +1 -1
  177. package/dist/namespaces/Propset.js +81 -81
  178. package/dist/namespaces/Replay.d.ts +1 -1
  179. package/dist/namespaces/Replay.d.ts.map +1 -1
  180. package/dist/namespaces/Replay.js +2 -2
  181. package/dist/namespaces/Scripts.d.ts +1 -1
  182. package/dist/namespaces/Scripts.d.ts.map +1 -1
  183. package/dist/namespaces/Scripts.js +12 -12
  184. package/dist/namespaces/Shapetest.d.ts +11 -11
  185. package/dist/namespaces/Shapetest.d.ts.map +1 -1
  186. package/dist/namespaces/Shapetest.js +13 -13
  187. package/dist/namespaces/Socialclub.js +8 -8
  188. package/dist/namespaces/Socialclubfeed.js +1 -1
  189. package/dist/namespaces/Spactionproxy.js +4 -4
  190. package/dist/namespaces/Stats.d.ts +191 -191
  191. package/dist/namespaces/Stats.d.ts.map +1 -1
  192. package/dist/namespaces/Stats.js +281 -281
  193. package/dist/namespaces/Streaming.d.ts +84 -84
  194. package/dist/namespaces/Streaming.d.ts.map +1 -1
  195. package/dist/namespaces/Streaming.js +137 -137
  196. package/dist/namespaces/Task.d.ts +347 -347
  197. package/dist/namespaces/Task.d.ts.map +1 -1
  198. package/dist/namespaces/Task.js +488 -488
  199. package/dist/namespaces/Telemetry.d.ts +151 -151
  200. package/dist/namespaces/Telemetry.d.ts.map +1 -1
  201. package/dist/namespaces/Telemetry.js +206 -206
  202. package/dist/namespaces/Txd.js +1 -1
  203. package/dist/namespaces/Uiapps.d.ts +25 -25
  204. package/dist/namespaces/Uiapps.d.ts.map +1 -1
  205. package/dist/namespaces/Uiapps.js +36 -36
  206. package/dist/namespaces/Uievents.js +1 -1
  207. package/dist/namespaces/Uifeed.d.ts +15 -15
  208. package/dist/namespaces/Uifeed.d.ts.map +1 -1
  209. package/dist/namespaces/Uifeed.js +25 -25
  210. package/dist/namespaces/Uistickyfeed.d.ts +16 -16
  211. package/dist/namespaces/Uistickyfeed.d.ts.map +1 -1
  212. package/dist/namespaces/Uistickyfeed.js +21 -21
  213. package/dist/namespaces/Unlock.js +5 -5
  214. package/dist/namespaces/VehicleStatics.js +12 -12
  215. package/dist/namespaces/Voice.d.ts +38 -38
  216. package/dist/namespaces/Voice.d.ts.map +1 -1
  217. package/dist/namespaces/Voice.js +61 -61
  218. package/dist/namespaces/VolumeStatics.d.ts +99 -99
  219. package/dist/namespaces/VolumeStatics.d.ts.map +1 -1
  220. package/dist/namespaces/VolumeStatics.js +137 -137
  221. package/dist/namespaces/WeaponStatics.d.ts +276 -276
  222. package/dist/namespaces/WeaponStatics.d.ts.map +1 -1
  223. package/dist/namespaces/WeaponStatics.js +371 -371
  224. package/dist/types/NativeAliases.d.ts +3 -1
  225. package/dist/types/NativeAliases.d.ts.map +1 -1
  226. package/dist/types/NativeAliases.js +3 -1
  227. package/package.json +1 -1
  228. package/src/classes/AnimScene.ts +159 -159
  229. package/src/classes/BaseModel.ts +37 -37
  230. package/src/classes/BaseTask.ts +41 -41
  231. package/src/classes/Cam.ts +111 -111
  232. package/src/classes/Entity.ts +422 -411
  233. package/src/classes/Interior.ts +43 -43
  234. package/src/classes/ItemSet.ts +3 -3
  235. package/src/classes/Ped.ts +432 -432
  236. package/src/classes/PedModel.ts +2 -2
  237. package/src/classes/PedTask.ts +957 -957
  238. package/src/classes/PersChar.ts +22 -22
  239. package/src/classes/Pickup.ts +14 -14
  240. package/src/classes/Player.ts +994 -987
  241. package/src/classes/Prop.ts +106 -106
  242. package/src/classes/PropSet.ts +29 -29
  243. package/src/classes/Vehicle.ts +147 -147
  244. package/src/classes/VehicleModel.ts +2 -2
  245. package/src/classes/VehicleTask.ts +31 -31
  246. package/src/classes/Volume.ts +62 -62
  247. package/src/classes/Weapon.ts +511 -511
  248. package/src/namespaces/Aicoverpoint.ts +40 -40
  249. package/src/namespaces/Aitransport.ts +104 -104
  250. package/src/namespaces/Animscene.ts +71 -71
  251. package/src/namespaces/Audio.ts +725 -725
  252. package/src/namespaces/Bounty.ts +102 -102
  253. package/src/namespaces/CamStatics.ts +700 -700
  254. package/src/namespaces/Collection.ts +113 -113
  255. package/src/namespaces/Companion.ts +34 -34
  256. package/src/namespaces/Compapp.ts +1 -1
  257. package/src/namespaces/Compendium.ts +94 -94
  258. package/src/namespaces/Crashlog.ts +23 -23
  259. package/src/namespaces/Crew.ts +4 -4
  260. package/src/namespaces/Databinding.ts +237 -237
  261. package/src/namespaces/Datafile.ts +4 -4
  262. package/src/namespaces/Decorator.ts +37 -37
  263. package/src/namespaces/Dlc.ts +9 -9
  264. package/src/namespaces/EntityStatics.ts +117 -117
  265. package/src/namespaces/Event.ts +4 -4
  266. package/src/namespaces/Fire.ts +127 -127
  267. package/src/namespaces/Flock.ts +2 -2
  268. package/src/namespaces/Gang.ts +2 -2
  269. package/src/namespaces/GoogleAnalytics.ts +2 -2
  270. package/src/namespaces/Graphics.ts +1218 -1218
  271. package/src/namespaces/Hud.ts +696 -696
  272. package/src/namespaces/Ik.ts +1 -1
  273. package/src/namespaces/Interaction.ts +3 -3
  274. package/src/namespaces/InteriorStatics.ts +65 -65
  275. package/src/namespaces/Inventory.ts +294 -294
  276. package/src/namespaces/Itemdatabase.ts +3 -3
  277. package/src/namespaces/Itemset.ts +2 -2
  278. package/src/namespaces/Law.ts +20 -20
  279. package/src/namespaces/Localization.ts +1 -1
  280. package/src/namespaces/Map.ts +3 -3
  281. package/src/namespaces/Minigame.ts +109 -109
  282. package/src/namespaces/Misc.ts +38 -38
  283. package/src/namespaces/Missiondata.ts +28 -28
  284. package/src/namespaces/Money.ts +3 -3
  285. package/src/namespaces/Netshopping.ts +99 -99
  286. package/src/namespaces/Network.ts +1616 -1616
  287. package/src/namespaces/Object.ts +344 -344
  288. package/src/namespaces/Pad.ts +76 -76
  289. package/src/namespaces/Pathfind.ts +10 -10
  290. package/src/namespaces/PedStatics.ts +12 -12
  291. package/src/namespaces/Perschar.ts +86 -86
  292. package/src/namespaces/Physics.ts +171 -171
  293. package/src/namespaces/PlayerStatics.ts +162 -162
  294. package/src/namespaces/Population.ts +17 -17
  295. package/src/namespaces/Posse.ts +54 -54
  296. package/src/namespaces/Propset.ts +92 -92
  297. package/src/namespaces/Replay.ts +3 -3
  298. package/src/namespaces/Scripts.ts +13 -13
  299. package/src/namespaces/Shapetest.ts +14 -14
  300. package/src/namespaces/Socialclub.ts +8 -8
  301. package/src/namespaces/Socialclubfeed.ts +1 -1
  302. package/src/namespaces/Spactionproxy.ts +4 -4
  303. package/src/namespaces/Stats.ts +287 -287
  304. package/src/namespaces/Streaming.ts +159 -159
  305. package/src/namespaces/Task.ts +517 -517
  306. package/src/namespaces/Telemetry.ts +224 -224
  307. package/src/namespaces/Txd.ts +1 -1
  308. package/src/namespaces/Uiapps.ts +43 -43
  309. package/src/namespaces/Uievents.ts +1 -1
  310. package/src/namespaces/Uifeed.ts +28 -28
  311. package/src/namespaces/Uistickyfeed.ts +23 -23
  312. package/src/namespaces/Unlock.ts +5 -5
  313. package/src/namespaces/VehicleStatics.ts +12 -12
  314. package/src/namespaces/Voice.ts +70 -70
  315. package/src/namespaces/VolumeStatics.ts +143 -143
  316. package/src/namespaces/WeaponStatics.ts +383 -383
  317. package/src/types/NativeAliases.ts +6 -1
@@ -88,7 +88,7 @@ export class Audio {
88
88
  * @returns
89
89
  */
90
90
  static N_0x580D71DFE0088E34(audioName: string | null, audioRef: string | null): boolean {
91
- return inv<boolean>('0x580D71DFE0088E34', audioName, audioRef, rai());
91
+ return !!inv<boolean>('0x580D71DFE0088E34', audioName, audioRef, rai());
92
92
  }
93
93
 
94
94
  /**
@@ -149,113 +149,245 @@ export class Audio {
149
149
  }
150
150
 
151
151
  /**
152
- * @param ped
152
+ * speechEventType: https://github.com/Halen84/RDR3-Native-Flags-And-Enums/tree/main/naSpeechEventType
153
+ * SKIP_* - START_*
154
+ *
155
+ * @param speechEventType
156
+ */
157
+ static N_0x660A8F876DF1D4F8(speechEventType: number): void {
158
+ inv<void>('0x660A8F876DF1D4F8', speechEventType);
159
+ }
160
+
161
+ /**
162
+ * @param p0
153
163
  * @param p1
154
164
  */
155
- static stopCurrentPlayingAmbientSpeech(ped: Ped, p1: any): void {
156
- inv<void>('0xB8BEC0CA6F0EDB0F', ped.handle, p1);
165
+ static N_0x139A4B9DF2D26CBF(p0: any, p1: any): void {
166
+ inv<void>('0x139A4B9DF2D26CBF', p0, p1);
167
+ }
168
+
169
+ /**
170
+ * @param pos
171
+ * @param streamId
172
+ */
173
+ static playStreamFromPosition(pos: Vector3, streamId: number): void {
174
+ inv<void>('0x21442F412E8DE56B', f(pos.x), f(pos.y), f(pos.z), streamId);
175
+ }
176
+
177
+ /**
178
+ * @param entity
179
+ * @returns
180
+ */
181
+ static getEntityAudioMixGroup(entity: Entity): number {
182
+ return (inv<number>('0x8B25A18E390F75BF', entity.handle, rai())) & 0xFFFFFFFF;
183
+ }
184
+
185
+ /**
186
+ * @param convoRoot
187
+ * @returns
188
+ */
189
+ static isScriptedConversationCreated(convoRoot: string | null): any {
190
+ return inv<number>('0xD89504D9D7D5057D', convoRoot);
191
+ }
192
+
193
+ static N_0xA2B851605748AD0E(): void {
194
+ inv<void>('0xA2B851605748AD0E');
195
+ }
196
+
197
+ /**
198
+ * @param convoRoot
199
+ * @returns
200
+ */
201
+ static N_0x0CB3D1919E8D7CBA(convoRoot: string | null): boolean {
202
+ return !!inv<boolean>('0x0CB3D1919E8D7CBA', convoRoot, rai());
203
+ }
204
+
205
+ /**
206
+ * Name: ROPE_SETTINGS_DEFAULT
207
+ *
208
+ * @param ropeId
209
+ * @param name
210
+ */
211
+ static N_0xF092B6030D6FD49C(ropeId: number, name: string | null): void {
212
+ inv<void>('0xF092B6030D6FD49C', ropeId, name);
157
213
  }
158
214
 
159
215
  /**
160
216
  * @param p0
217
+ * @param currentScriptedConvoLine
218
+ * @returns
219
+ */
220
+ static N_0x254B0241E964B450(p0: string | null, currentScriptedConvoLine: number): Ped | null {
221
+ return createFromHandle<Ped>('Ped', inv<number>('0x254B0241E964B450', p0, currentScriptedConvoLine, rai()));
222
+ }
223
+
224
+ /**
161
225
  * @param ped
226
+ * @param vocalizationName
162
227
  * @param p2
163
- * @returns
164
228
  */
165
- static isPedInCurrentConversation(p0: string | null, ped: Ped, p2: any): boolean {
166
- return inv<boolean>('0x049E937F18F4020C', p0, ped.handle, p2, rai());
229
+ static playAnimalVocalization(ped: Ped, vocalizationName: string | null, p2: boolean): void {
230
+ inv<void>('0xEE066C7006C49C0A', ped.handle, vocalizationName, p2);
167
231
  }
168
232
 
169
233
  /**
170
234
  * @param p0
171
- * @returns
235
+ * @param p1
172
236
  */
173
- static isScriptedConversionOngoing(p0: string | null): any {
174
- return inv<number>('0xF01C570E0A0A1E67', p0);
237
+ static setPedInteriorWallaDensity(p0: number, p1: number): void {
238
+ inv<void>('0x8BF907833BE275DE', f(p0), f(p1));
175
239
  }
176
240
 
177
241
  /**
178
- * @param soundsetName
242
+ * @param p0
243
+ * @param p1
179
244
  */
180
- static releaseSoundset(soundsetName: string | null): void {
181
- inv<void>('0x531A78D6BF27014B', soundsetName);
245
+ static N_0xD47D47EFBF103FB8(p0: any, p1: any): void {
246
+ inv<void>('0xD47D47EFBF103FB8', p0, p1);
182
247
  }
183
248
 
184
249
  /**
185
- * @returns
250
+ * @param p0
251
+ * @param p1
186
252
  */
187
- static getSoundId(): number {
188
- return inv<number>('0x430386FE9BF80B45', rai());
253
+ static N_0x5BC885EBD75FAA7D(p0: any, p1: any): void {
254
+ inv<void>('0x5BC885EBD75FAA7D', p0, p1);
189
255
  }
190
256
 
191
257
  /**
192
- * @param listeningToPed
258
+ * Valid pain IDs: 0..12 these names are not official, but here is a list of the IDs:
259
+ * 1 burning,
260
+ * 2 drowning,
261
+ * 3 coughing,
262
+ * 4 nothing,
263
+ * 5 nothing,
264
+ * 6 coughing_2,
265
+ * 7 nothing,
266
+ * 8 nothing,
267
+ * 9 hurtingSick?,
268
+ * 10 hurtingFall?,
269
+ * 11 nothing,
270
+ * 12 choking
271
+ *
193
272
  * @param ped
194
- * @param listenerName
273
+ * @param painId
274
+ * @param p2
275
+ * @param p3
276
+ * @param isNetwork
195
277
  */
196
- static N_0xA2323A2EAE32A290(listeningToPed: Ped, ped: Ped, listenerName: string | null): void {
197
- inv<void>('0xA2323A2EAE32A290', listeningToPed.handle, ped.handle, listenerName);
278
+ static playPain(ped: Ped, painId: number, p2: number, p3: boolean, isNetwork: boolean): void {
279
+ inv<void>('0xBC9AE166038A5CEC', ped.handle, painId, f(p2), p3, isNetwork);
198
280
  }
199
281
 
200
282
  /**
283
+ * *STOP_AUDIO**
284
+ *
201
285
  * @param p0
202
- * @returns
203
286
  */
204
- static N_0xF0EE69F500952FA5(p0: any): any {
205
- return inv<number>('0xF0EE69F500952FA5', p0);
287
+ static N_0x6AB944DF68B512D3(p0: any): void {
288
+ inv<void>('0x6AB944DF68B512D3', p0);
289
+ }
290
+
291
+ static N_0xDAD6CD07CAA4F382(): void {
292
+ inv<void>('0xDAD6CD07CAA4F382');
206
293
  }
207
294
 
208
295
  /**
209
- * Old name: AUDIO_IS_SCRIPTED_MUSIC_PLAYING
296
+ * soundId maybe be incorrect name for param p2, in the decompiles is always -2
210
297
  *
298
+ * @param soundName
299
+ * @param soundsetName
300
+ * @param soundId
211
301
  * @returns
212
302
  */
213
- static isMusicPlaying(): boolean {
214
- return inv<boolean>('0x845FFC3A4FEEFA3E', rai());
303
+ static prepareSound(soundName: string | null, soundsetName: string | null, soundId: number): any {
304
+ return inv<number>('0xE368E8422C860BA7', soundName, soundsetName, soundId);
215
305
  }
216
306
 
217
307
  /**
218
- * Used in Script Function NET_CAMP_CLIENT_UPDATE_PED_ROLE_STATE_SHOP: hash exists! Playing hash
219
- *
220
- * @param ped
308
+ * @param p0
221
309
  * @param p1
222
310
  */
223
- static N_0xB93A769B8B726950(ped: Ped, p1: string | number): void {
224
- inv<void>('0xB93A769B8B726950', ped.handle, _h(p1));
311
+ static N_0x259ACC5B52A2B2D9(p0: any, p1: any): void {
312
+ inv<void>('0x259ACC5B52A2B2D9', p0, p1);
225
313
  }
226
314
 
227
315
  /**
228
- * @param variableName
229
- * @param variableValue
230
- * @param audioName
231
- * @param audioRef
316
+ * @param audSpeechEvent
232
317
  */
233
- static setVariableOnSoundWithName(variableName: string | null, variableValue: number, audioName: string | null, audioRef: string | null): void {
234
- inv<void>('0x9821B68CD3E05F2B', variableName, f(variableValue), audioName, audioRef);
318
+ static N_0x1E6F9A9FE1A99F36(audSpeechEvent: string | null): void {
319
+ inv<void>('0x1E6F9A9FE1A99F36', audSpeechEvent);
235
320
  }
236
321
 
237
322
  /**
238
323
  * @param p0
239
324
  * @param p1
325
+ * @param p2
326
+ * @param p3
240
327
  */
241
- static N_0xD733528B6C35647A(p0: any, p1: any): void {
242
- inv<void>('0xD733528B6C35647A', p0, p1);
328
+ static N_0x017492B2201E3428(p0: any, p1: any, p2: any, p3: any): void {
329
+ inv<void>('0x017492B2201E3428', p0, p1, p2, p3);
243
330
  }
244
331
 
245
332
  /**
246
- * @param ambientZone
333
+ * @returns
334
+ */
335
+ static N_0xE600F61F54A444A6(): any {
336
+ return inv<number>('0xE600F61F54A444A6');
337
+ }
338
+
339
+ /**
340
+ * @param scene
341
+ * @param variable
342
+ * @param value
343
+ */
344
+ static setAudioSceneVariable(scene: string | null, variable: string | null, value: number): void {
345
+ inv<void>('0xEF21A9EF089A2668', scene, variable, f(value));
346
+ }
347
+
348
+ /**
349
+ * Old name: _PLAY_AMBIENT_SPEECH_AT_COORDS
350
+ *
351
+ * @param pos
352
+ * @returns params
353
+ */
354
+ static playAmbientSpeechFromPositionNative(pos: Vector3): [any, number] {
355
+ const result = inv<[number, number]>('0xED640017ED337E45', f(pos.x), f(pos.y), f(pos.z), pvi());
356
+ return [result[0], result[1]];
357
+ }
358
+
359
+ /**
360
+ * @param p0
247
361
  * @param p1
362
+ * @param p2
363
+ * @param p3
248
364
  */
249
- static clearAmbientZoneListState(ambientZone: string | null, p1: boolean): void {
250
- inv<void>('0x120C48C614909FA4', ambientZone, p1);
365
+ static N_0x5E3CCF03995388B5(p0: any, p1: any, p2: any, p3: any): void {
366
+ inv<void>('0x5E3CCF03995388B5', p0, p1, p2, p3);
367
+ }
368
+
369
+ /**
370
+ * @param entity
371
+ * @returns
372
+ */
373
+ static N_0x886657C5B3D8EDE3(entity: Entity): any {
374
+ return inv<number>('0x886657C5B3D8EDE3', entity.handle);
375
+ }
376
+
377
+ /**
378
+ * @param p0
379
+ */
380
+ static N_0x6B7A88A61B41E589(p0: any): void {
381
+ inv<void>('0x6B7A88A61B41E589', p0);
251
382
  }
252
383
 
253
384
  /**
254
385
  * @param p0
255
386
  * @param p1
387
+ * @param p2
256
388
  */
257
- static N_0xE891504B2F0E2DBA(p0: any, p1: any): void {
258
- inv<void>('0xE891504B2F0E2DBA', p0, p1);
389
+ static N_0x821C32C728B24477(p0: any, p1: any, p2: any): void {
390
+ inv<void>('0x821C32C728B24477', p0, p1, p2);
259
391
  }
260
392
 
261
393
  /**
@@ -263,23 +395,41 @@ export class Audio {
263
395
  * @param p1
264
396
  * @returns
265
397
  */
266
- static N_0xDF947FE0D551684E(ped: Ped, p1: string | null): boolean {
267
- return inv<boolean>('0xDF947FE0D551684E', ped.handle, p1, rai());
398
+ static isPedInAnyConversation(ped: Ped, p1: boolean): any {
399
+ return inv<number>('0x54B187F111D9C6F8', ped.handle, p1);
268
400
  }
269
401
 
270
402
  /**
271
- * @param entity
272
- * @param p1
403
+ * Hashes: VOFX_PLAYER_MALE01, VOFX_PLAYER_MALE02, VOFX_PLAYER_MALE03, VOFX_PLAYER_FEMALE01, VOFX_PLAYER_FEMALE02, VOFX_PLAYER_FEMALE03
404
+ *
405
+ * @param ped
406
+ * @param voice
273
407
  */
274
- static N_0xE9694B2D6CB87B06(entity: Entity, p1: any): void {
275
- inv<void>('0xE9694B2D6CB87B06', entity.handle, p1);
408
+ static setVofxPedVoice(ped: Ped, voice: string | number): void {
409
+ inv<void>('0x2703EFB583F0949A', ped.handle, _h(voice));
276
410
  }
277
411
 
278
412
  /**
279
- * @param audioBank
413
+ * @param ped
414
+ * @returns
280
415
  */
281
- static releaseNamedScriptAudioBank(audioBank: string | null): void {
282
- inv<void>('0x77ED170667F50170', audioBank);
416
+ static isAnySpeechPlaying(ped: Ped): boolean {
417
+ return !!inv<boolean>('0x729072355FA39EC9', ped.handle, rai());
418
+ }
419
+
420
+ /**
421
+ * @param convoRoot
422
+ */
423
+ static clearConversationHistoryForScriptedConversation(convoRoot: string | null): void {
424
+ inv<void>('0xEF51242E35242B47', convoRoot);
425
+ }
426
+
427
+ /**
428
+ * @param p0
429
+ * @param p1
430
+ */
431
+ static N_0x018ABE833CA64D2A(p0: any, p1: any): void {
432
+ inv<void>('0x018ABE833CA64D2A', p0, p1);
283
433
  }
284
434
 
285
435
  /**
@@ -303,7 +453,7 @@ export class Audio {
303
453
  * @returns
304
454
  */
305
455
  static N_0x5A13586A9447931F(p0: boolean): boolean {
306
- return inv<boolean>('0x5A13586A9447931F', p0, rai());
456
+ return !!inv<boolean>('0x5A13586A9447931F', p0, rai());
307
457
  }
308
458
 
309
459
  /**
@@ -344,7 +494,7 @@ export class Audio {
344
494
  * @returns
345
495
  */
346
496
  static isStreamPlaying(streamId: number): boolean {
347
- return inv<boolean>('0xD11FA52EB849D978', streamId, rai());
497
+ return !!inv<boolean>('0xD11FA52EB849D978', streamId, rai());
348
498
  }
349
499
 
350
500
  /**
@@ -416,27 +566,80 @@ export class Audio {
416
566
  }
417
567
 
418
568
  /**
419
- * Only used in R* SP Script cv_mus_shared
569
+ * nullsub, doesn't do anything
420
570
  *
421
- * @param convoRoot
422
- * @param animScene
423
- * @returns
571
+ * @param active
424
572
  */
425
- static N_0x79F9C57B8D0DFE90(convoRoot: string | null, animScene: AnimScene): boolean {
426
- return inv<boolean>('0x79F9C57B8D0DFE90', convoRoot, animScene.handle, rai());
573
+ static setGpsActive(active: boolean): void {
574
+ inv<void>('0x3BD3F52BA9B1E4E8', active);
427
575
  }
428
576
 
429
- static forcePedPanicWalla(): void {
430
- inv<void>('0x062D5EAD4DA2FA6A');
577
+ /**
578
+ * Old name: _PLAY_SOUND_FROM_POSITION
579
+ *
580
+ * @param SoundName
581
+ * @param pos
582
+ * @param SetName
583
+ * @param bOverNetwork
584
+ * @param nNetworkRange
585
+ * @param isExteriorLoc
586
+ * @param p8
587
+ */
588
+ static playSoundFromCoord(SoundName: string | null, pos: Vector3, SetName: string | null, bOverNetwork: boolean, nNetworkRange: number, isExteriorLoc: boolean, p8: number): void {
589
+ inv<void>('0xCCE219C922737BFA', SoundName, f(pos.x), f(pos.y), f(pos.z), SetName, bOverNetwork, nNetworkRange, isExteriorLoc, p8);
590
+ }
591
+
592
+ /**
593
+ * @param streamName
594
+ * @param soundSet
595
+ * @returns
596
+ */
597
+ static loadStream(streamName: string | null, soundSet: string | null): boolean {
598
+ return !!inv<boolean>('0x1F1F957154EC51DF', streamName, soundSet, rai());
431
599
  }
432
600
 
433
601
  /**
434
602
  * @param p0
435
603
  * @param p1
436
- * @param p2
437
604
  */
438
- static N_0xF64034D533CE8AAC(p0: any, p1: any, p2: any): void {
439
- inv<void>('0xF64034D533CE8AAC', p0, p1, p2);
605
+ static N_0x9EB779765E68C52E(p0: any, p1: any): void {
606
+ inv<void>('0x9EB779765E68C52E', p0, p1);
607
+ }
608
+
609
+ static N_0x43037ABFE214A851(): void {
610
+ inv<void>('0x43037ABFE214A851');
611
+ }
612
+
613
+ /**
614
+ * @returns
615
+ */
616
+ static N_0xA6A3A3F96B8B030E(): any {
617
+ return inv<number>('0xA6A3A3F96B8B030E');
618
+ }
619
+
620
+ /**
621
+ * @param p0
622
+ * @returns
623
+ */
624
+ static isScriptedConversationPlaying(p0: string | null): boolean {
625
+ return !!inv<boolean>('0x1ECC76792F661CF5', p0, rai());
626
+ }
627
+
628
+ /**
629
+ * @param p0
630
+ * @param p1
631
+ */
632
+ static setPortalSettingsOverride(p0: string | null, p1: string | null): void {
633
+ inv<void>('0x044DBAD7A7FA2BE5', p0, p1);
634
+ }
635
+
636
+ /**
637
+ * @param ped
638
+ * @param disabled
639
+ * @returns
640
+ */
641
+ static setIsScriptedSpeechDisabled(ped: Ped, disabled: boolean): any {
642
+ return inv<number>('0xB2DE3AEBE31150E2', ped.handle, disabled);
440
643
  }
441
644
 
442
645
  /**
@@ -444,127 +647,191 @@ export class Audio {
444
647
  * @param p1
445
648
  * @param p2
446
649
  * @param p3
447
- * @param p4
448
- * @param p5
650
+ * @returns
449
651
  */
450
- static N_0x6DA15746D5CC1A92(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any): void {
451
- inv<void>('0x6DA15746D5CC1A92', p0, p1, p2, p3, p4, p5);
652
+ static N_0x9D6DEC9791A4E501(p0: any, p1: any, p2: any, p3: any): any {
653
+ return inv<number>('0x9D6DEC9791A4E501', p0, p1, p2, p3);
452
654
  }
453
655
 
454
656
  /**
455
- * Params: p5 seems to be always 0
657
+ * Old Name: _STOP_SOUND_WITH_ID
456
658
  *
457
659
  * @param soundId
458
- * @param soundName
459
- * @param entity
460
- * @param soundsetName
461
- * @param p4
462
- * @param p5
463
660
  */
464
- static playSoundFromEntityWithSet(soundId: number, soundName: string | null, entity: Entity, soundsetName: string | null, p4: boolean, p5: any): void {
465
- inv<void>('0xF1C5310FEAA36B48', soundId, soundName, entity.handle, soundsetName, p4, p5);
661
+ static stopSound(soundId: number): void {
662
+ inv<void>('0x3210BCB36AF7621B', soundId);
663
+ }
664
+
665
+ /**
666
+ * @param p0
667
+ * @returns
668
+ */
669
+ static N_0xF336E9F989B3518F(p0: string | null): number {
670
+ return inv<number>('0xF336E9F989B3518F', p0, rai());
466
671
  }
467
672
 
468
673
  /**
469
674
  * @param p0
470
675
  * @param p1
471
- * @param p2
472
- * @param p3
473
- * @param p4
474
- * @param p5
475
- * @param p6
476
- * @param p7
477
676
  */
478
- static N_0x5AE0CB5F35F034FD(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any): void {
479
- inv<void>('0x5AE0CB5F35F034FD', p0, p1, p2, p3, p4, p5, p6, p7);
677
+ static N_0xFCDEC42B1C78B7F8(p0: any, p1: any): void {
678
+ inv<void>('0xFCDEC42B1C78B7F8', p0, p1);
679
+ }
680
+
681
+ /**
682
+ * @param ped
683
+ */
684
+ static N_0x8E901B65206C2D3E(ped: Ped): void {
685
+ inv<void>('0x8E901B65206C2D3E', ped.handle);
480
686
  }
481
687
 
482
688
  /**
483
689
  * @param p0
484
- * @param currentScriptedConvoLine
690
+ */
691
+ static N_0x7E176C676F8652A9(p0: any): void {
692
+ inv<void>('0x7E176C676F8652A9', p0);
693
+ }
694
+
695
+ /**
696
+ * item: FUSE, value returned from 0x2E1CDC1FF3B8473E
697
+ * soundSet: HUD_SHOP_SOUNDSET, COMPANIONS_ROBBERIES_SOUNDSET
698
+ *
699
+ * @param item
700
+ * @param soundSet
485
701
  * @returns
486
702
  */
487
- static N_0x935DBD96D4A3DA1F(p0: string | null, currentScriptedConvoLine: number): number {
488
- return inv<number>('0x935DBD96D4A3DA1F', p0, currentScriptedConvoLine, rai());
703
+ static isScriptedAudioCustom(item: string | number, soundSet: string | number): any {
704
+ return inv<number>('0x6DF942C4179BE5AB', _h(item), _h(soundSet));
489
705
  }
490
706
 
491
707
  /**
492
708
  * @param p0
709
+ * @returns
493
710
  */
494
- static N_0xDC93F0948F2C28F4(p0: any): void {
495
- inv<void>('0xDC93F0948F2C28F4', p0);
711
+ static N_0xD05A460328560477(p0: any): any {
712
+ return inv<number>('0xD05A460328560477', p0);
496
713
  }
497
714
 
498
715
  /**
499
- * p1: Entity.Relationship
500
- * p2: Player, Enemy, Teammate, Neutral
716
+ * Checks if the ped can play the speech or has the speech file, last parameter is usually false.
501
717
  *
502
718
  * @param ped
503
- * @param p1
504
- * @param p2
719
+ * @param speechName
720
+ * @param unk
721
+ * @returns
505
722
  */
506
- static setSoundRelationshipOnPed(ped: Ped, p1: string | null, p2: string | null): void {
507
- inv<void>('0x2E31ACA7477CF00F', ped.handle, p1, p2);
723
+ static doesContextExistForThisPed(ped: Ped, speechName: string | null, unk: boolean): boolean {
724
+ return !!inv<boolean>('0x49B99BF3FDA89A7A', ped.handle, speechName, unk, rai());
508
725
  }
509
726
 
510
727
  /**
511
- * @param audioName
512
- * @param audioRef
728
+ * @returns
513
729
  */
514
- static stopSoundWithName(audioName: string | null, audioRef: string | null): void {
515
- inv<void>('0x0F2A2175734926D8', audioName, audioRef);
730
+ static N_0x2B101AD9F651243A(): any {
731
+ return inv<number>('0x2B101AD9F651243A');
516
732
  }
517
733
 
518
734
  /**
519
735
  * @param p0
520
- * @param p1
521
736
  * @returns
522
737
  */
523
- static N_0xC369E2234E34A0CA(p0: any, p1: any): any {
524
- return inv<number>('0xC369E2234E34A0CA', p0, p1);
738
+ static N_0x131EC9247E7A2903(p0: any): any {
739
+ return inv<number>('0x131EC9247E7A2903', p0);
525
740
  }
526
741
 
527
742
  /**
528
- * @param p0
529
- * @param p1
743
+ * @param ped
744
+ * @param name
745
+ */
746
+ static setAmbientVoiceName(ped: Ped, name: string | null): void {
747
+ inv<void>('0x6C8065A3B780185B', ped.handle, name);
748
+ }
749
+
750
+ /**
751
+ * @param play
752
+ */
753
+ static playEndCreditsMusic(play: boolean): void {
754
+ inv<void>('0xCD536C4D33DCC900', play);
755
+ }
756
+
757
+ /**
758
+ * @param eventName
530
759
  * @returns
531
760
  */
532
- static N_0x72E4D1C4639BC465(p0: Entity, p1: any): any {
533
- return inv<number>('0x72E4D1C4639BC465', p0.handle, p1);
761
+ static cancelMusicEvent(eventName: string | null): boolean {
762
+ return !!inv<boolean>('0x5B17A90291133DA5', eventName, rai());
534
763
  }
535
764
 
536
765
  /**
537
- * @param audioName
538
- * @param soundsetName
766
+ * @param ped
539
767
  * @returns
540
768
  */
541
- static hasSoundAudioNameFinished(audioName: string | null, soundsetName: string | null): any {
542
- return inv<number>('0x714A0EA7DE1167BE', audioName, soundsetName);
769
+ static isAmbientSpeechDisabled(ped: Ped): boolean {
770
+ return !!inv<boolean>('0x932C2D096A2C3FFF', ped.handle, rai());
543
771
  }
544
772
 
545
773
  /**
546
- * *UNLOAD*[A-C]* - USE_*
774
+ * Not implemented.
547
775
  *
548
- * @param speechContext
776
+ * @param animal
777
+ * @param mood
549
778
  */
550
- static unloadSpeechContext(speechContext: string | null): void {
551
- inv<void>('0x87E6302FC61208CC', speechContext);
779
+ static setAnimalMood(animal: Ped, mood: number): void {
780
+ inv<void>('0xCC97B29285B1DC3B', animal.handle, mood);
552
781
  }
553
782
 
554
783
  /**
555
- * @param p0
784
+ * @param convoRoot
556
785
  * @param p1
786
+ * @param p2
787
+ * @param clone
557
788
  */
558
- static N_0x3A3BE6B920525237(p0: any, p1: any): void {
559
- inv<void>('0x3A3BE6B920525237', p0, p1);
789
+ static startScriptConversation(convoRoot: string | null, p1: boolean, p2: boolean, clone: boolean): void {
790
+ inv<void>('0x6B17C62C9635D2DC', convoRoot, p1, p2, clone);
560
791
  }
561
792
 
562
793
  /**
563
794
  * @param p0
795
+ */
796
+ static N_0xEB4D592620B8C209(p0: any): void {
797
+ inv<void>('0xEB4D592620B8C209', p0);
798
+ }
799
+
800
+ static releaseScriptAudioBank(): void {
801
+ inv<void>('0x7A2D8AD0A9EB9C3F');
802
+ }
803
+
804
+ static N_0x4BE3EC91C01F0FE8(): void {
805
+ inv<void>('0x4BE3EC91C01F0FE8');
806
+ }
807
+
808
+ /**
809
+ * @param zoneName
810
+ * @param isEnabled
811
+ * @param p2
812
+ */
813
+ static setAmbientZoneState(zoneName: string | null, isEnabled: boolean, p2: boolean): void {
814
+ inv<void>('0xBDA07E5950085E46', zoneName, isEnabled, p2);
815
+ }
816
+
817
+ /**
818
+ * @param audioName
819
+ * @param entity
820
+ * @param audioRef
821
+ * @param isNetwork
822
+ * @param p4
823
+ * @param p5
824
+ */
825
+ static playSoundFromEntity(audioName: string | null, entity: Entity, audioRef: string | null, isNetwork: boolean, p4: any, p5: any): void {
826
+ inv<void>('0x6FB1DA3CA9DA7D90', audioName, entity.handle, audioRef, isNetwork, p4, p5);
827
+ }
828
+
829
+ /**
830
+ * @param ped
564
831
  * @returns
565
832
  */
566
- static N_0xC68C02DE259C927C(p0: any): any {
567
- return inv<number>('0xC68C02DE259C927C', p0);
833
+ static isAmbientSpeechPlaying(ped: Ped): boolean {
834
+ return !!inv<boolean>('0x9072C8B49907BFAD', ped.handle, rai());
568
835
  }
569
836
 
570
837
  /**
@@ -650,7 +917,7 @@ export class Audio {
650
917
  * @returns
651
918
  */
652
919
  static startAudioScene(scene: string | null): boolean {
653
- return inv<boolean>('0x013A80FC08F6E4F2', scene, rai());
920
+ return !!inv<boolean>('0x013A80FC08F6E4F2', scene, rai());
654
921
  }
655
922
 
656
923
  /**
@@ -704,7 +971,7 @@ export class Audio {
704
971
  * @returns
705
972
  */
706
973
  static isHornActive(vehicle: Vehicle): boolean {
707
- return inv<boolean>('0x9D6BFC12B05C6121', vehicle.handle, rai());
974
+ return !!inv<boolean>('0x9D6BFC12B05C6121', vehicle.handle, rai());
708
975
  }
709
976
 
710
977
  /**
@@ -718,230 +985,145 @@ export class Audio {
718
985
  }
719
986
 
720
987
  /**
721
- * @param audioName
722
988
  * @param sceneset
723
- * @returns
724
989
  */
725
- static setAudioSceneset(audioName: string | null, sceneset: string | null): any {
726
- return inv<number>('0xAC84686C06184B0D', audioName, sceneset);
990
+ static stopAudioSceneset(sceneset: string | null): void {
991
+ inv<void>('0x9428447DED71FC7E', sceneset);
727
992
  }
728
993
 
729
994
  /**
730
995
  * @param p0
996
+ * @returns
731
997
  */
732
- static removePortalSettingsOverride(p0: string | null): void {
733
- inv<void>('0xB4BBFD9CD8B3922B', p0);
998
+ static getCurrentScriptedConversationLine(p0: string | null): number {
999
+ return inv<number>('0x480357EE890C295A', p0, rai());
734
1000
  }
735
1001
 
736
1002
  /**
737
1003
  * @param convoRoot
738
- * @returns
1004
+ * @param ped
1005
+ * @param characterName
739
1006
  */
740
- static isScriptedConversationLoaded(convoRoot: string | null): boolean {
741
- return inv<boolean>('0xDF0D54BE7A776737', convoRoot, rai());
1007
+ static addPedToConversation(convoRoot: string | null, ped: Ped, characterName: string | null): void {
1008
+ inv<void>('0x95D9F4BC443956E7', convoRoot, ped.handle, characterName);
742
1009
  }
743
1010
 
744
1011
  /**
745
- * @param p0
1012
+ * @param entity
746
1013
  * @param p1
747
- * @param pos
748
- * @param isSrlLoaded
749
- * @param p6
750
- * @returns
751
- */
752
- static N_0xFFE9C53DEEA3DB0B(p0: any, p1: any, pos: Vector3, isSrlLoaded: boolean, p6: any): any {
753
- return inv<number>('0xFFE9C53DEEA3DB0B', p0, p1, f(pos.x), f(pos.y), f(pos.z), isSrlLoaded, p6);
754
- }
755
-
756
- static N_0x3D0BBCCF401B5FDB(): void {
757
- inv<void>('0x3D0BBCCF401B5FDB');
758
- }
759
-
760
- /**
761
- * @param streamId
762
- */
763
- static stopStream(streamId: number): void {
764
- inv<void>('0xA4718A1419D18151', streamId);
765
- }
766
-
767
- /**
768
- * https://github.com/femga/rdr3_discoveries/tree/master/audio/frontend_soundsets
769
- *
770
- * @param audioName
771
- * @param audioRef
772
1014
  * @param p2
773
1015
  * @param p3
1016
+ * @param p4
774
1017
  */
775
- static playSoundFrontend(audioName: string | null, audioRef: string | null, p2: boolean, p3: any): void {
776
- inv<void>('0x67C540AA08E4A6F5', audioName, audioRef, p2, p3);
1018
+ static N_0xABDB4863D3D72021(entity: Entity, p1: any, p2: any, p3: number, p4: any): void {
1019
+ inv<void>('0xABDB4863D3D72021', entity.handle, p1, p2, f(p3), p4);
777
1020
  }
778
1021
 
779
1022
  /**
1023
+ * Not implemented.
1024
+ *
780
1025
  * @param ped
781
- * @param shaking
782
- */
783
- static stopPedSpeaking(ped: Ped, shaking: boolean): void {
784
- inv<void>('0x9D64D7405520E3D3', ped.handle, shaking);
785
- }
786
-
787
- /**
788
- * @param audioBank
789
- * @returns
790
- */
791
- static requestScriptAudioBank(audioBank: string | null): boolean {
792
- return inv<boolean>('0x2F844A8B08D76685', audioBank, rai());
793
- }
794
-
795
- /**
796
- * @param p0
797
- * @param p1
798
- */
799
- static N_0xC886CD666ADD42E1(p0: any, p1: any): void {
800
- inv<void>('0xC886CD666ADD42E1', p0, p1);
801
- }
802
-
803
- /**
804
- * @param p0
805
- */
806
- static N_0xEA546C31FD45F8CD(p0: any): void {
807
- inv<void>('0xEA546C31FD45F8CD', p0);
808
- }
809
-
810
- /**
811
- * @param p0
812
- */
813
- static N_0x0FAF7171BF613B80(p0: any): void {
814
- inv<void>('0x0FAF7171BF613B80', p0);
815
- }
816
-
817
- /**
818
- * nullsub, doesn't do anything
819
- */
820
- static unregisterScriptWithAudio(): void {
821
- inv<void>('0xA8638BE228D4751A');
822
- }
823
-
824
- /**
825
- * @param convoRoot
826
- * @param singleLineIndex
827
1026
  */
828
- static N_0x40CA665AB9D8D505(convoRoot: string | null, singleLineIndex: number): void {
829
- inv<void>('0x40CA665AB9D8D505', convoRoot, singleLineIndex);
830
- }
831
-
832
- static stopAllScriptedAudioSounds(): void {
833
- inv<void>('0x2E399EAFBEEA74D5');
1027
+ static N_0x864A842B86993851(ped: Ped): void {
1028
+ inv<void>('0x864A842B86993851', ped.handle);
834
1029
  }
835
1030
 
836
1031
  /**
837
1032
  * @param p0
1033
+ * @returns
838
1034
  */
839
- static N_0xF232C2C546AC16D0(p0: string | null): void {
840
- inv<void>('0xF232C2C546AC16D0', p0);
1035
+ static N_0xDC2F83A0612CA34D(p0: any): any {
1036
+ return inv<number>('0xDC2F83A0612CA34D', p0);
841
1037
  }
842
1038
 
843
1039
  /**
844
- * https://github.com/femga/rdr3_discoveries/blob/master/audio/music_events/music_events.lua
1040
+ * https://github.com/femga/rdr3_discoveries/tree/master/audio/soundsets
845
1041
  *
846
- * @param eventName
1042
+ * @param soundsetName
1043
+ * @param p1
847
1044
  * @returns
848
1045
  */
849
- static triggerMusicEvent(eventName: string | null): boolean {
850
- return inv<boolean>('0x706D57B0F50DA710', eventName, rai());
1046
+ static prepareSoundset(soundsetName: string | null, p1: boolean): any {
1047
+ return inv<number>('0xD9130842D7226045', soundsetName, p1);
851
1048
  }
852
1049
 
853
1050
  /**
854
- * @param p0
1051
+ * @param entity
1052
+ * @returns
855
1053
  */
856
- static restartScriptedConversation(p0: string | null): void {
857
- inv<void>('0x9AEB285D1818C9AC', p0);
1054
+ static N_0x62377977E4F08668(entity: Entity): AnimScene | null {
1055
+ return createFromHandle<AnimScene>('AnimScene', inv<number>('0x62377977E4F08668', entity.handle, rai()));
858
1056
  }
859
1057
 
860
1058
  /**
861
- * @param ped
1059
+ * @param audioName
1060
+ * @param sceneset
1061
+ * @returns
862
1062
  */
863
- static N_0xC4CFCE4C656EF480(ped: Ped): void {
864
- inv<void>('0xC4CFCE4C656EF480', ped.handle);
1063
+ static startAudioSceneset(audioName: string | null, sceneset: string | null): any {
1064
+ return inv<number>('0x6339C1EA3979B5F7', audioName, sceneset);
865
1065
  }
866
1066
 
867
1067
  /**
868
1068
  * @param p0
869
1069
  * @param p1
1070
+ * @param p2
1071
+ * @param p3
1072
+ * @param p4
870
1073
  */
871
- static N_0x3A00D87B20A2A5E4(p0: any, p1: any): void {
872
- inv<void>('0x3A00D87B20A2A5E4', p0, p1);
1074
+ static N_0x448F2647DD6F2E27(p0: any, p1: any, p2: any, p3: any, p4: any): void {
1075
+ inv<void>('0x448F2647DD6F2E27', p0, p1, p2, p3, p4);
873
1076
  }
874
1077
 
875
1078
  /**
876
- * @param pedHandle
1079
+ * @param p0
877
1080
  * @returns
878
1081
  */
879
- static isAnimalVocalizationPlaying(pedHandle: Ped): boolean {
880
- return inv<boolean>('0xC265DF9FB44A9FBD', pedHandle.handle, rai());
1082
+ static N_0xB18FEC133C7C6C69(p0: any): any {
1083
+ return inv<number>('0xB18FEC133C7C6C69', p0);
881
1084
  }
882
1085
 
883
1086
  /**
884
1087
  * @param p0
885
1088
  * @returns
886
1089
  */
887
- static isAnyConversationPlaying(p0: boolean): any {
888
- return inv<number>('0xA2CAC9DEF0195E6F', p0);
1090
+ static N_0x295859EB18F48D82(p0: string | null): number {
1091
+ return inv<number>('0x295859EB18F48D82', p0, rai());
889
1092
  }
890
1093
 
891
1094
  /**
892
- * @param name
893
- * @param pos
1095
+ * @param p0
894
1096
  */
895
- static triggerExplosion(name: string | null, pos: Vector3): void {
896
- inv<void>('0x374F0E716BFCDE82', name, f(pos.x), f(pos.y), f(pos.z));
1097
+ static N_0xCBF2BEBB468A34F3(p0: any): void {
1098
+ inv<void>('0xCBF2BEBB468A34F3', p0);
897
1099
  }
898
1100
 
899
1101
  /**
900
- * @param ropeId
1102
+ * @param p0
901
1103
  * @param p1
902
- */
903
- static N_0x2651DDC0EA269073(ropeId: number, p1: number): void {
904
- inv<void>('0x2651DDC0EA269073', ropeId, f(p1));
905
- }
906
-
907
- static stopAudioScenes(): void {
908
- inv<void>('0xBAC7FC81A75EC1A1');
909
- }
910
-
911
- /**
912
- * @param audioName
913
- * @param audioRef
914
1104
  * @param p2
915
- * @param p3
916
- * @param p4
917
- * @param p5
918
- */
919
- static playSound(audioName: string | null, audioRef: string | null, p2: boolean, p3: any, p4: boolean, p5: any): void {
920
- inv<void>('0x7FF4944CC209192D', audioName, audioRef, p2, p3, p4, p5);
921
- }
922
-
923
- /**
924
- * @param scene
925
1105
  * @returns
926
1106
  */
927
- static isAudioSceneActive(scene: string | null): boolean {
928
- return inv<boolean>('0xB65B60556E2A9225', scene, rai());
1107
+ static stopScriptedConversation(p0: string | null, p1: boolean, p2: boolean): number {
1108
+ return inv<number>('0xD79DEEFB53455EBA', p0, p1, p2, rai());
929
1109
  }
930
1110
 
931
1111
  /**
932
- * @param context
933
- * @param block
1112
+ * @param p0
1113
+ * @param p1
934
1114
  */
935
- static blockSpeechContext(context: string | null, block: boolean): void {
936
- inv<void>('0x6378A235374B852F', context, block);
1115
+ static N_0xFD461D0ABA5559B1(p0: any, p1: any): void {
1116
+ inv<void>('0xFD461D0ABA5559B1', p0, p1);
937
1117
  }
938
1118
 
939
1119
  /**
940
- * @param p0
1120
+ * *IS_SCRIPTED_CONVERSATION**
1121
+ *
1122
+ * @param convoRoot
941
1123
  * @returns
942
1124
  */
943
- static N_0x847748AE5D7B1071(p0: boolean): boolean {
944
- return inv<boolean>('0x847748AE5D7B1071', p0, rai());
1125
+ static N_0xD0730C1FA40348D9(convoRoot: string | null): boolean {
1126
+ return !!inv<boolean>('0xD0730C1FA40348D9', convoRoot, rai());
945
1127
  }
946
1128
 
947
1129
  /**
@@ -968,7 +1150,7 @@ export class Audio {
968
1150
  * @returns
969
1151
  */
970
1152
  static prepareMusicEvent(eventName: string | null): boolean {
971
- return inv<boolean>('0x1E5185B72EF5158A', eventName, rai());
1153
+ return !!inv<boolean>('0x1E5185B72EF5158A', eventName, rai());
972
1154
  }
973
1155
 
974
1156
  /**
@@ -1032,7 +1214,7 @@ export class Audio {
1032
1214
  * @returns
1033
1215
  */
1034
1216
  static isScriptedSpeechPlaying(p0: any): boolean {
1035
- return inv<boolean>('0xCC9AA18DCC7084F4', p0, rai());
1217
+ return !!inv<boolean>('0xCC9AA18DCC7084F4', p0, rai());
1036
1218
  }
1037
1219
 
1038
1220
  /**
@@ -1085,364 +1267,161 @@ export class Audio {
1085
1267
  }
1086
1268
 
1087
1269
  /**
1088
- * speechEventType: https://github.com/Halen84/RDR3-Native-Flags-And-Enums/tree/main/naSpeechEventType
1089
- * SKIP_* - START_*
1090
- *
1091
- * @param speechEventType
1270
+ * @param ped
1271
+ * @param p1
1092
1272
  */
1093
- static N_0x660A8F876DF1D4F8(speechEventType: number): void {
1094
- inv<void>('0x660A8F876DF1D4F8', speechEventType);
1273
+ static stopCurrentPlayingAmbientSpeech(ped: Ped, p1: any): void {
1274
+ inv<void>('0xB8BEC0CA6F0EDB0F', ped.handle, p1);
1095
1275
  }
1096
1276
 
1097
1277
  /**
1098
1278
  * @param p0
1099
- * @param p1
1279
+ * @param ped
1280
+ * @param p2
1281
+ * @returns
1100
1282
  */
1101
- static N_0x139A4B9DF2D26CBF(p0: any, p1: any): void {
1102
- inv<void>('0x139A4B9DF2D26CBF', p0, p1);
1283
+ static isPedInCurrentConversation(p0: string | null, ped: Ped, p2: any): boolean {
1284
+ return !!inv<boolean>('0x049E937F18F4020C', p0, ped.handle, p2, rai());
1103
1285
  }
1104
1286
 
1105
1287
  /**
1106
- * @param pos
1107
- * @param streamId
1288
+ * @param p0
1289
+ * @returns
1108
1290
  */
1109
- static playStreamFromPosition(pos: Vector3, streamId: number): void {
1110
- inv<void>('0x21442F412E8DE56B', f(pos.x), f(pos.y), f(pos.z), streamId);
1291
+ static isScriptedConversionOngoing(p0: string | null): any {
1292
+ return inv<number>('0xF01C570E0A0A1E67', p0);
1111
1293
  }
1112
1294
 
1113
1295
  /**
1114
- * @param entity
1115
- * @returns
1296
+ * @param soundsetName
1116
1297
  */
1117
- static getEntityAudioMixGroup(entity: Entity): number {
1118
- return (inv<number>('0x8B25A18E390F75BF', entity.handle, rai())) & 0xFFFFFFFF;
1298
+ static releaseSoundset(soundsetName: string | null): void {
1299
+ inv<void>('0x531A78D6BF27014B', soundsetName);
1119
1300
  }
1120
1301
 
1121
1302
  /**
1122
- * @param convoRoot
1123
1303
  * @returns
1124
1304
  */
1125
- static isScriptedConversationCreated(convoRoot: string | null): any {
1126
- return inv<number>('0xD89504D9D7D5057D', convoRoot);
1305
+ static getSoundId(): number {
1306
+ return inv<number>('0x430386FE9BF80B45', rai());
1127
1307
  }
1128
1308
 
1129
- static N_0xA2B851605748AD0E(): void {
1130
- inv<void>('0xA2B851605748AD0E');
1309
+ /**
1310
+ * @param listeningToPed
1311
+ * @param ped
1312
+ * @param listenerName
1313
+ */
1314
+ static N_0xA2323A2EAE32A290(listeningToPed: Ped, ped: Ped, listenerName: string | null): void {
1315
+ inv<void>('0xA2323A2EAE32A290', listeningToPed.handle, ped.handle, listenerName);
1131
1316
  }
1132
1317
 
1133
1318
  /**
1134
- * @param convoRoot
1319
+ * @param p0
1135
1320
  * @returns
1136
1321
  */
1137
- static N_0x0CB3D1919E8D7CBA(convoRoot: string | null): boolean {
1138
- return inv<boolean>('0x0CB3D1919E8D7CBA', convoRoot, rai());
1322
+ static N_0xF0EE69F500952FA5(p0: any): any {
1323
+ return inv<number>('0xF0EE69F500952FA5', p0);
1139
1324
  }
1140
1325
 
1141
1326
  /**
1142
- * Name: ROPE_SETTINGS_DEFAULT
1327
+ * Old name: AUDIO_IS_SCRIPTED_MUSIC_PLAYING
1143
1328
  *
1144
- * @param ropeId
1145
- * @param name
1329
+ * @returns
1146
1330
  */
1147
- static N_0xF092B6030D6FD49C(ropeId: number, name: string | null): void {
1148
- inv<void>('0xF092B6030D6FD49C', ropeId, name);
1331
+ static isMusicPlaying(): boolean {
1332
+ return !!inv<boolean>('0x845FFC3A4FEEFA3E', rai());
1149
1333
  }
1150
1334
 
1151
1335
  /**
1152
- * @param p0
1153
- * @param currentScriptedConvoLine
1154
- * @returns
1336
+ * Used in Script Function NET_CAMP_CLIENT_UPDATE_PED_ROLE_STATE_SHOP: hash exists! Playing hash
1337
+ *
1338
+ * @param ped
1339
+ * @param p1
1155
1340
  */
1156
- static N_0x254B0241E964B450(p0: string | null, currentScriptedConvoLine: number): Ped | null {
1157
- return createFromHandle<Ped>('Ped', inv<number>('0x254B0241E964B450', p0, currentScriptedConvoLine, rai()));
1341
+ static N_0xB93A769B8B726950(ped: Ped, p1: string | number): void {
1342
+ inv<void>('0xB93A769B8B726950', ped.handle, _h(p1));
1158
1343
  }
1159
1344
 
1160
1345
  /**
1161
- * @param ped
1162
- * @param vocalizationName
1163
- * @param p2
1346
+ * @param variableName
1347
+ * @param variableValue
1348
+ * @param audioName
1349
+ * @param audioRef
1164
1350
  */
1165
- static playAnimalVocalization(ped: Ped, vocalizationName: string | null, p2: boolean): void {
1166
- inv<void>('0xEE066C7006C49C0A', ped.handle, vocalizationName, p2);
1351
+ static setVariableOnSoundWithName(variableName: string | null, variableValue: number, audioName: string | null, audioRef: string | null): void {
1352
+ inv<void>('0x9821B68CD3E05F2B', variableName, f(variableValue), audioName, audioRef);
1167
1353
  }
1168
1354
 
1169
1355
  /**
1170
1356
  * @param p0
1171
1357
  * @param p1
1172
1358
  */
1173
- static setPedInteriorWallaDensity(p0: number, p1: number): void {
1174
- inv<void>('0x8BF907833BE275DE', f(p0), f(p1));
1359
+ static N_0xD733528B6C35647A(p0: any, p1: any): void {
1360
+ inv<void>('0xD733528B6C35647A', p0, p1);
1175
1361
  }
1176
1362
 
1177
1363
  /**
1178
- * @param p0
1364
+ * @param ambientZone
1179
1365
  * @param p1
1180
1366
  */
1181
- static N_0xD47D47EFBF103FB8(p0: any, p1: any): void {
1182
- inv<void>('0xD47D47EFBF103FB8', p0, p1);
1367
+ static clearAmbientZoneListState(ambientZone: string | null, p1: boolean): void {
1368
+ inv<void>('0x120C48C614909FA4', ambientZone, p1);
1183
1369
  }
1184
1370
 
1185
1371
  /**
1186
1372
  * @param p0
1187
1373
  * @param p1
1188
1374
  */
1189
- static N_0x5BC885EBD75FAA7D(p0: any, p1: any): void {
1190
- inv<void>('0x5BC885EBD75FAA7D', p0, p1);
1375
+ static N_0xE891504B2F0E2DBA(p0: any, p1: any): void {
1376
+ inv<void>('0xE891504B2F0E2DBA', p0, p1);
1191
1377
  }
1192
1378
 
1193
1379
  /**
1194
- * Valid pain IDs: 0..12 these names are not official, but here is a list of the IDs:
1195
- * 1 burning,
1196
- * 2 drowning,
1197
- * 3 coughing,
1198
- * 4 nothing,
1199
- * 5 nothing,
1200
- * 6 coughing_2,
1201
- * 7 nothing,
1202
- * 8 nothing,
1203
- * 9 hurtingSick?,
1204
- * 10 hurtingFall?,
1205
- * 11 nothing,
1206
- * 12 choking
1207
- *
1208
1380
  * @param ped
1209
- * @param painId
1210
- * @param p2
1211
- * @param p3
1212
- * @param isNetwork
1213
- */
1214
- static playPain(ped: Ped, painId: number, p2: number, p3: boolean, isNetwork: boolean): void {
1215
- inv<void>('0xBC9AE166038A5CEC', ped.handle, painId, f(p2), p3, isNetwork);
1216
- }
1217
-
1218
- /**
1219
- * *STOP_AUDIO**
1220
- *
1221
- * @param p0
1222
- */
1223
- static N_0x6AB944DF68B512D3(p0: any): void {
1224
- inv<void>('0x6AB944DF68B512D3', p0);
1225
- }
1226
-
1227
- static N_0xDAD6CD07CAA4F382(): void {
1228
- inv<void>('0xDAD6CD07CAA4F382');
1229
- }
1230
-
1231
- /**
1232
- * soundId maybe be incorrect name for param p2, in the decompiles is always -2
1233
- *
1234
- * @param soundName
1235
- * @param soundsetName
1236
- * @param soundId
1237
- * @returns
1238
- */
1239
- static prepareSound(soundName: string | null, soundsetName: string | null, soundId: number): any {
1240
- return inv<number>('0xE368E8422C860BA7', soundName, soundsetName, soundId);
1241
- }
1242
-
1243
- /**
1244
- * @param p0
1245
- * @param p1
1246
- */
1247
- static N_0x259ACC5B52A2B2D9(p0: any, p1: any): void {
1248
- inv<void>('0x259ACC5B52A2B2D9', p0, p1);
1249
- }
1250
-
1251
- /**
1252
- * @param audSpeechEvent
1253
- */
1254
- static N_0x1E6F9A9FE1A99F36(audSpeechEvent: string | null): void {
1255
- inv<void>('0x1E6F9A9FE1A99F36', audSpeechEvent);
1256
- }
1257
-
1258
- /**
1259
- * @param p0
1260
1381
  * @param p1
1261
- * @param p2
1262
- * @param p3
1263
- */
1264
- static N_0x017492B2201E3428(p0: any, p1: any, p2: any, p3: any): void {
1265
- inv<void>('0x017492B2201E3428', p0, p1, p2, p3);
1266
- }
1267
-
1268
- /**
1269
1382
  * @returns
1270
1383
  */
1271
- static N_0xE600F61F54A444A6(): any {
1272
- return inv<number>('0xE600F61F54A444A6');
1273
- }
1274
-
1275
- /**
1276
- * @param scene
1277
- * @param variable
1278
- * @param value
1279
- */
1280
- static setAudioSceneVariable(scene: string | null, variable: string | null, value: number): void {
1281
- inv<void>('0xEF21A9EF089A2668', scene, variable, f(value));
1282
- }
1283
-
1284
- /**
1285
- * Old name: _PLAY_AMBIENT_SPEECH_AT_COORDS
1286
- *
1287
- * @param pos
1288
- * @returns params
1289
- */
1290
- static playAmbientSpeechFromPositionNative(pos: Vector3): [any, number] {
1291
- const result = inv<[number, number]>('0xED640017ED337E45', f(pos.x), f(pos.y), f(pos.z), pvi());
1292
- return [result[0], result[1]];
1293
- }
1294
-
1295
- /**
1296
- * @param p0
1297
- * @param p1
1298
- * @param p2
1299
- * @param p3
1300
- */
1301
- static N_0x5E3CCF03995388B5(p0: any, p1: any, p2: any, p3: any): void {
1302
- inv<void>('0x5E3CCF03995388B5', p0, p1, p2, p3);
1384
+ static N_0xDF947FE0D551684E(ped: Ped, p1: string | null): boolean {
1385
+ return !!inv<boolean>('0xDF947FE0D551684E', ped.handle, p1, rai());
1303
1386
  }
1304
1387
 
1305
1388
  /**
1306
1389
  * @param entity
1307
- * @returns
1308
- */
1309
- static N_0x886657C5B3D8EDE3(entity: Entity): any {
1310
- return inv<number>('0x886657C5B3D8EDE3', entity.handle);
1311
- }
1312
-
1313
- /**
1314
- * @param p0
1315
- */
1316
- static N_0x6B7A88A61B41E589(p0: any): void {
1317
- inv<void>('0x6B7A88A61B41E589', p0);
1318
- }
1319
-
1320
- /**
1321
- * @param p0
1322
1390
  * @param p1
1323
- * @param p2
1324
1391
  */
1325
- static N_0x821C32C728B24477(p0: any, p1: any, p2: any): void {
1326
- inv<void>('0x821C32C728B24477', p0, p1, p2);
1392
+ static N_0xE9694B2D6CB87B06(entity: Entity, p1: any): void {
1393
+ inv<void>('0xE9694B2D6CB87B06', entity.handle, p1);
1327
1394
  }
1328
1395
 
1329
1396
  /**
1330
- * @param ped
1331
- * @param p1
1332
- * @returns
1397
+ * @param audioBank
1333
1398
  */
1334
- static isPedInAnyConversation(ped: Ped, p1: boolean): any {
1335
- return inv<number>('0x54B187F111D9C6F8', ped.handle, p1);
1399
+ static releaseNamedScriptAudioBank(audioBank: string | null): void {
1400
+ inv<void>('0x77ED170667F50170', audioBank);
1336
1401
  }
1337
1402
 
1338
1403
  /**
1339
- * Hashes: VOFX_PLAYER_MALE01, VOFX_PLAYER_MALE02, VOFX_PLAYER_MALE03, VOFX_PLAYER_FEMALE01, VOFX_PLAYER_FEMALE02, VOFX_PLAYER_FEMALE03
1404
+ * Only used in R* SP Script cv_mus_shared
1340
1405
  *
1341
- * @param ped
1342
- * @param voice
1343
- */
1344
- static setVofxPedVoice(ped: Ped, voice: string | number): void {
1345
- inv<void>('0x2703EFB583F0949A', ped.handle, _h(voice));
1346
- }
1347
-
1348
- /**
1349
- * @param ped
1350
- * @returns
1351
- */
1352
- static isAnySpeechPlaying(ped: Ped): boolean {
1353
- return inv<boolean>('0x729072355FA39EC9', ped.handle, rai());
1354
- }
1355
-
1356
- /**
1357
1406
  * @param convoRoot
1358
- */
1359
- static clearConversationHistoryForScriptedConversation(convoRoot: string | null): void {
1360
- inv<void>('0xEF51242E35242B47', convoRoot);
1361
- }
1362
-
1363
- /**
1364
- * @param p0
1365
- * @param p1
1366
- */
1367
- static N_0x018ABE833CA64D2A(p0: any, p1: any): void {
1368
- inv<void>('0x018ABE833CA64D2A', p0, p1);
1369
- }
1370
-
1371
- /**
1372
- * nullsub, doesn't do anything
1373
- *
1374
- * @param active
1375
- */
1376
- static setGpsActive(active: boolean): void {
1377
- inv<void>('0x3BD3F52BA9B1E4E8', active);
1378
- }
1379
-
1380
- /**
1381
- * Old name: _PLAY_SOUND_FROM_POSITION
1382
- *
1383
- * @param SoundName
1384
- * @param pos
1385
- * @param SetName
1386
- * @param bOverNetwork
1387
- * @param nNetworkRange
1388
- * @param isExteriorLoc
1389
- * @param p8
1390
- */
1391
- static playSoundFromCoord(SoundName: string | null, pos: Vector3, SetName: string | null, bOverNetwork: boolean, nNetworkRange: number, isExteriorLoc: boolean, p8: number): void {
1392
- inv<void>('0xCCE219C922737BFA', SoundName, f(pos.x), f(pos.y), f(pos.z), SetName, bOverNetwork, nNetworkRange, isExteriorLoc, p8);
1393
- }
1394
-
1395
- /**
1396
- * @param streamName
1397
- * @param soundSet
1398
- * @returns
1399
- */
1400
- static loadStream(streamName: string | null, soundSet: string | null): boolean {
1401
- return inv<boolean>('0x1F1F957154EC51DF', streamName, soundSet, rai());
1402
- }
1403
-
1404
- /**
1405
- * @param p0
1406
- * @param p1
1407
- */
1408
- static N_0x9EB779765E68C52E(p0: any, p1: any): void {
1409
- inv<void>('0x9EB779765E68C52E', p0, p1);
1410
- }
1411
-
1412
- static N_0x43037ABFE214A851(): void {
1413
- inv<void>('0x43037ABFE214A851');
1414
- }
1415
-
1416
- /**
1407
+ * @param animScene
1417
1408
  * @returns
1418
1409
  */
1419
- static N_0xA6A3A3F96B8B030E(): any {
1420
- return inv<number>('0xA6A3A3F96B8B030E');
1410
+ static N_0x79F9C57B8D0DFE90(convoRoot: string | null, animScene: AnimScene): boolean {
1411
+ return !!inv<boolean>('0x79F9C57B8D0DFE90', convoRoot, animScene.handle, rai());
1421
1412
  }
1422
1413
 
1423
- /**
1424
- * @param p0
1425
- * @returns
1426
- */
1427
- static isScriptedConversationPlaying(p0: string | null): any {
1428
- return inv<number>('0x1ECC76792F661CF5', p0);
1414
+ static forcePedPanicWalla(): void {
1415
+ inv<void>('0x062D5EAD4DA2FA6A');
1429
1416
  }
1430
1417
 
1431
1418
  /**
1432
1419
  * @param p0
1433
1420
  * @param p1
1421
+ * @param p2
1434
1422
  */
1435
- static setPortalSettingsOverride(p0: string | null, p1: string | null): void {
1436
- inv<void>('0x044DBAD7A7FA2BE5', p0, p1);
1437
- }
1438
-
1439
- /**
1440
- * @param ped
1441
- * @param disabled
1442
- * @returns
1443
- */
1444
- static setIsScriptedSpeechDisabled(ped: Ped, disabled: boolean): any {
1445
- return inv<number>('0xB2DE3AEBE31150E2', ped.handle, disabled);
1423
+ static N_0xF64034D533CE8AAC(p0: any, p1: any, p2: any): void {
1424
+ inv<void>('0xF64034D533CE8AAC', p0, p1, p2);
1446
1425
  }
1447
1426
 
1448
1427
  /**
@@ -1450,191 +1429,127 @@ export class Audio {
1450
1429
  * @param p1
1451
1430
  * @param p2
1452
1431
  * @param p3
1453
- * @returns
1432
+ * @param p4
1433
+ * @param p5
1454
1434
  */
1455
- static N_0x9D6DEC9791A4E501(p0: any, p1: any, p2: any, p3: any): any {
1456
- return inv<number>('0x9D6DEC9791A4E501', p0, p1, p2, p3);
1435
+ static N_0x6DA15746D5CC1A92(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any): void {
1436
+ inv<void>('0x6DA15746D5CC1A92', p0, p1, p2, p3, p4, p5);
1457
1437
  }
1458
1438
 
1459
1439
  /**
1460
- * Old Name: _STOP_SOUND_WITH_ID
1440
+ * Params: p5 seems to be always 0
1461
1441
  *
1462
1442
  * @param soundId
1443
+ * @param soundName
1444
+ * @param entity
1445
+ * @param soundsetName
1446
+ * @param p4
1447
+ * @param p5
1463
1448
  */
1464
- static stopSound(soundId: number): void {
1465
- inv<void>('0x3210BCB36AF7621B', soundId);
1466
- }
1467
-
1468
- /**
1469
- * @param p0
1470
- * @returns
1471
- */
1472
- static N_0xF336E9F989B3518F(p0: string | null): number {
1473
- return inv<number>('0xF336E9F989B3518F', p0, rai());
1449
+ static playSoundFromEntityWithSet(soundId: number, soundName: string | null, entity: Entity, soundsetName: string | null, p4: boolean, p5: any): void {
1450
+ inv<void>('0xF1C5310FEAA36B48', soundId, soundName, entity.handle, soundsetName, p4, p5);
1474
1451
  }
1475
1452
 
1476
1453
  /**
1477
1454
  * @param p0
1478
1455
  * @param p1
1456
+ * @param p2
1457
+ * @param p3
1458
+ * @param p4
1459
+ * @param p5
1460
+ * @param p6
1461
+ * @param p7
1479
1462
  */
1480
- static N_0xFCDEC42B1C78B7F8(p0: any, p1: any): void {
1481
- inv<void>('0xFCDEC42B1C78B7F8', p0, p1);
1482
- }
1483
-
1484
- /**
1485
- * @param ped
1486
- */
1487
- static N_0x8E901B65206C2D3E(ped: Ped): void {
1488
- inv<void>('0x8E901B65206C2D3E', ped.handle);
1463
+ static N_0x5AE0CB5F35F034FD(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any): void {
1464
+ inv<void>('0x5AE0CB5F35F034FD', p0, p1, p2, p3, p4, p5, p6, p7);
1489
1465
  }
1490
1466
 
1491
1467
  /**
1492
1468
  * @param p0
1493
- */
1494
- static N_0x7E176C676F8652A9(p0: any): void {
1495
- inv<void>('0x7E176C676F8652A9', p0);
1496
- }
1497
-
1498
- /**
1499
- * item: FUSE, value returned from 0x2E1CDC1FF3B8473E
1500
- * soundSet: HUD_SHOP_SOUNDSET, COMPANIONS_ROBBERIES_SOUNDSET
1501
- *
1502
- * @param item
1503
- * @param soundSet
1469
+ * @param currentScriptedConvoLine
1504
1470
  * @returns
1505
1471
  */
1506
- static isScriptedAudioCustom(item: string | number, soundSet: string | number): any {
1507
- return inv<number>('0x6DF942C4179BE5AB', _h(item), _h(soundSet));
1472
+ static N_0x935DBD96D4A3DA1F(p0: string | null, currentScriptedConvoLine: number): number {
1473
+ return inv<number>('0x935DBD96D4A3DA1F', p0, currentScriptedConvoLine, rai());
1508
1474
  }
1509
1475
 
1510
1476
  /**
1511
1477
  * @param p0
1512
- * @returns
1513
1478
  */
1514
- static N_0xD05A460328560477(p0: any): any {
1515
- return inv<number>('0xD05A460328560477', p0);
1479
+ static N_0xDC93F0948F2C28F4(p0: any): void {
1480
+ inv<void>('0xDC93F0948F2C28F4', p0);
1516
1481
  }
1517
1482
 
1518
1483
  /**
1519
- * Checks if the ped can play the speech or has the speech file, last parameter is usually false.
1484
+ * p1: Entity.Relationship
1485
+ * p2: Player, Enemy, Teammate, Neutral
1520
1486
  *
1521
1487
  * @param ped
1522
- * @param speechName
1523
- * @param unk
1524
- * @returns
1525
- */
1526
- static doesContextExistForThisPed(ped: Ped, speechName: string | null, unk: boolean): boolean {
1527
- return inv<boolean>('0x49B99BF3FDA89A7A', ped.handle, speechName, unk, rai());
1528
- }
1529
-
1530
- /**
1531
- * @returns
1532
- */
1533
- static N_0x2B101AD9F651243A(): any {
1534
- return inv<number>('0x2B101AD9F651243A');
1535
- }
1536
-
1537
- /**
1538
- * @param p0
1539
- * @returns
1540
- */
1541
- static N_0x131EC9247E7A2903(p0: any): any {
1542
- return inv<number>('0x131EC9247E7A2903', p0);
1543
- }
1544
-
1545
- /**
1546
- * @param ped
1547
- * @param name
1548
- */
1549
- static setAmbientVoiceName(ped: Ped, name: string | null): void {
1550
- inv<void>('0x6C8065A3B780185B', ped.handle, name);
1551
- }
1552
-
1553
- /**
1554
- * @param play
1555
- */
1556
- static playEndCreditsMusic(play: boolean): void {
1557
- inv<void>('0xCD536C4D33DCC900', play);
1558
- }
1559
-
1560
- /**
1561
- * @param eventName
1562
- * @returns
1563
- */
1564
- static cancelMusicEvent(eventName: string | null): boolean {
1565
- return inv<boolean>('0x5B17A90291133DA5', eventName, rai());
1566
- }
1567
-
1568
- /**
1569
- * @param ped
1570
- * @returns
1488
+ * @param p1
1489
+ * @param p2
1571
1490
  */
1572
- static isAmbientSpeechDisabled(ped: Ped): boolean {
1573
- return inv<boolean>('0x932C2D096A2C3FFF', ped.handle, rai());
1491
+ static setSoundRelationshipOnPed(ped: Ped, p1: string | null, p2: string | null): void {
1492
+ inv<void>('0x2E31ACA7477CF00F', ped.handle, p1, p2);
1574
1493
  }
1575
1494
 
1576
1495
  /**
1577
- * Not implemented.
1578
- *
1579
- * @param animal
1580
- * @param mood
1496
+ * @param audioName
1497
+ * @param audioRef
1581
1498
  */
1582
- static setAnimalMood(animal: Ped, mood: number): void {
1583
- inv<void>('0xCC97B29285B1DC3B', animal.handle, mood);
1499
+ static stopSoundWithName(audioName: string | null, audioRef: string | null): void {
1500
+ inv<void>('0x0F2A2175734926D8', audioName, audioRef);
1584
1501
  }
1585
1502
 
1586
1503
  /**
1587
- * @param convoRoot
1504
+ * @param p0
1588
1505
  * @param p1
1589
- * @param p2
1590
- * @param clone
1506
+ * @returns
1591
1507
  */
1592
- static startScriptConversation(convoRoot: string | null, p1: boolean, p2: boolean, clone: boolean): void {
1593
- inv<void>('0x6B17C62C9635D2DC', convoRoot, p1, p2, clone);
1508
+ static N_0xC369E2234E34A0CA(p0: any, p1: any): any {
1509
+ return inv<number>('0xC369E2234E34A0CA', p0, p1);
1594
1510
  }
1595
1511
 
1596
1512
  /**
1597
1513
  * @param p0
1514
+ * @param p1
1515
+ * @returns
1598
1516
  */
1599
- static N_0xEB4D592620B8C209(p0: any): void {
1600
- inv<void>('0xEB4D592620B8C209', p0);
1601
- }
1602
-
1603
- static releaseScriptAudioBank(): void {
1604
- inv<void>('0x7A2D8AD0A9EB9C3F');
1517
+ static N_0x72E4D1C4639BC465(p0: Entity, p1: any): any {
1518
+ return inv<number>('0x72E4D1C4639BC465', p0.handle, p1);
1605
1519
  }
1606
1520
 
1607
- static N_0x4BE3EC91C01F0FE8(): void {
1608
- inv<void>('0x4BE3EC91C01F0FE8');
1521
+ /**
1522
+ * @param audioName
1523
+ * @param soundsetName
1524
+ * @returns
1525
+ */
1526
+ static hasSoundAudioNameFinished(audioName: string | null, soundsetName: string | null): any {
1527
+ return inv<number>('0x714A0EA7DE1167BE', audioName, soundsetName);
1609
1528
  }
1610
1529
 
1611
1530
  /**
1612
- * @param zoneName
1613
- * @param isEnabled
1614
- * @param p2
1531
+ * *UNLOAD*[A-C]* - USE_*
1532
+ *
1533
+ * @param speechContext
1615
1534
  */
1616
- static setAmbientZoneState(zoneName: string | null, isEnabled: boolean, p2: boolean): void {
1617
- inv<void>('0xBDA07E5950085E46', zoneName, isEnabled, p2);
1535
+ static unloadSpeechContext(speechContext: string | null): void {
1536
+ inv<void>('0x87E6302FC61208CC', speechContext);
1618
1537
  }
1619
1538
 
1620
1539
  /**
1621
- * @param audioName
1622
- * @param entity
1623
- * @param audioRef
1624
- * @param isNetwork
1625
- * @param p4
1626
- * @param p5
1540
+ * @param p0
1541
+ * @param p1
1627
1542
  */
1628
- static playSoundFromEntity(audioName: string | null, entity: Entity, audioRef: string | null, isNetwork: boolean, p4: any, p5: any): void {
1629
- inv<void>('0x6FB1DA3CA9DA7D90', audioName, entity.handle, audioRef, isNetwork, p4, p5);
1543
+ static N_0x3A3BE6B920525237(p0: any, p1: any): void {
1544
+ inv<void>('0x3A3BE6B920525237', p0, p1);
1630
1545
  }
1631
1546
 
1632
1547
  /**
1633
- * @param ped
1548
+ * @param p0
1634
1549
  * @returns
1635
1550
  */
1636
- static isAmbientSpeechPlaying(ped: Ped): boolean {
1637
- return inv<boolean>('0x9072C8B49907BFAD', ped.handle, rai());
1551
+ static N_0xC68C02DE259C927C(p0: any): any {
1552
+ return inv<number>('0xC68C02DE259C927C', p0);
1638
1553
  }
1639
1554
 
1640
1555
  /**
@@ -1723,7 +1638,7 @@ export class Audio {
1723
1638
  * @returns
1724
1639
  */
1725
1640
  static N_0xFE5C6177064BD390(p0: boolean): boolean {
1726
- return inv<boolean>('0xFE5C6177064BD390', p0, rai());
1641
+ return !!inv<boolean>('0xFE5C6177064BD390', p0, rai());
1727
1642
  }
1728
1643
 
1729
1644
  /**
@@ -1781,145 +1696,230 @@ export class Audio {
1781
1696
  }
1782
1697
 
1783
1698
  /**
1699
+ * @param audioName
1784
1700
  * @param sceneset
1701
+ * @returns
1785
1702
  */
1786
- static stopAudioSceneset(sceneset: string | null): void {
1787
- inv<void>('0x9428447DED71FC7E', sceneset);
1703
+ static setAudioSceneset(audioName: string | null, sceneset: string | null): any {
1704
+ return inv<number>('0xAC84686C06184B0D', audioName, sceneset);
1788
1705
  }
1789
1706
 
1790
1707
  /**
1791
1708
  * @param p0
1792
- * @returns
1793
1709
  */
1794
- static getCurrentScriptedConversationLine(p0: string | null): number {
1795
- return inv<number>('0x480357EE890C295A', p0, rai());
1710
+ static removePortalSettingsOverride(p0: string | null): void {
1711
+ inv<void>('0xB4BBFD9CD8B3922B', p0);
1796
1712
  }
1797
1713
 
1798
1714
  /**
1799
1715
  * @param convoRoot
1800
- * @param ped
1801
- * @param characterName
1716
+ * @returns
1802
1717
  */
1803
- static addPedToConversation(convoRoot: string | null, ped: Ped, characterName: string | null): void {
1804
- inv<void>('0x95D9F4BC443956E7', convoRoot, ped.handle, characterName);
1718
+ static isScriptedConversationLoaded(convoRoot: string | null): boolean {
1719
+ return !!inv<boolean>('0xDF0D54BE7A776737', convoRoot, rai());
1805
1720
  }
1806
1721
 
1807
1722
  /**
1808
- * @param entity
1723
+ * @param p0
1809
1724
  * @param p1
1725
+ * @param pos
1726
+ * @param isSrlLoaded
1727
+ * @param p6
1728
+ * @returns
1729
+ */
1730
+ static N_0xFFE9C53DEEA3DB0B(p0: any, p1: any, pos: Vector3, isSrlLoaded: boolean, p6: any): any {
1731
+ return inv<number>('0xFFE9C53DEEA3DB0B', p0, p1, f(pos.x), f(pos.y), f(pos.z), isSrlLoaded, p6);
1732
+ }
1733
+
1734
+ static N_0x3D0BBCCF401B5FDB(): void {
1735
+ inv<void>('0x3D0BBCCF401B5FDB');
1736
+ }
1737
+
1738
+ /**
1739
+ * @param streamId
1740
+ */
1741
+ static stopStream(streamId: number): void {
1742
+ inv<void>('0xA4718A1419D18151', streamId);
1743
+ }
1744
+
1745
+ /**
1746
+ * https://github.com/femga/rdr3_discoveries/tree/master/audio/frontend_soundsets
1747
+ *
1748
+ * @param audioName
1749
+ * @param audioRef
1810
1750
  * @param p2
1811
1751
  * @param p3
1812
- * @param p4
1813
1752
  */
1814
- static N_0xABDB4863D3D72021(entity: Entity, p1: any, p2: any, p3: number, p4: any): void {
1815
- inv<void>('0xABDB4863D3D72021', entity.handle, p1, p2, f(p3), p4);
1753
+ static playSoundFrontend(audioName: string | null, audioRef: string | null, p2: boolean, p3: any): void {
1754
+ inv<void>('0x67C540AA08E4A6F5', audioName, audioRef, p2, p3);
1816
1755
  }
1817
1756
 
1818
1757
  /**
1819
- * Not implemented.
1820
- *
1821
1758
  * @param ped
1759
+ * @param shaking
1822
1760
  */
1823
- static N_0x864A842B86993851(ped: Ped): void {
1824
- inv<void>('0x864A842B86993851', ped.handle);
1761
+ static stopPedSpeaking(ped: Ped, shaking: boolean): void {
1762
+ inv<void>('0x9D64D7405520E3D3', ped.handle, shaking);
1825
1763
  }
1826
1764
 
1827
1765
  /**
1828
- * @param p0
1766
+ * @param audioBank
1829
1767
  * @returns
1830
1768
  */
1831
- static N_0xDC2F83A0612CA34D(p0: any): any {
1832
- return inv<number>('0xDC2F83A0612CA34D', p0);
1769
+ static requestScriptAudioBank(audioBank: string | null): boolean {
1770
+ return !!inv<boolean>('0x2F844A8B08D76685', audioBank, rai());
1833
1771
  }
1834
1772
 
1835
1773
  /**
1836
- * https://github.com/femga/rdr3_discoveries/tree/master/audio/soundsets
1837
- *
1838
- * @param soundsetName
1774
+ * @param p0
1839
1775
  * @param p1
1840
- * @returns
1841
1776
  */
1842
- static prepareSoundset(soundsetName: string | null, p1: boolean): any {
1843
- return inv<number>('0xD9130842D7226045', soundsetName, p1);
1777
+ static N_0xC886CD666ADD42E1(p0: any, p1: any): void {
1778
+ inv<void>('0xC886CD666ADD42E1', p0, p1);
1844
1779
  }
1845
1780
 
1846
1781
  /**
1847
- * @param entity
1848
- * @returns
1782
+ * @param p0
1849
1783
  */
1850
- static N_0x62377977E4F08668(entity: Entity): AnimScene | null {
1851
- return createFromHandle<AnimScene>('AnimScene', inv<number>('0x62377977E4F08668', entity.handle, rai()));
1784
+ static N_0xEA546C31FD45F8CD(p0: any): void {
1785
+ inv<void>('0xEA546C31FD45F8CD', p0);
1852
1786
  }
1853
1787
 
1854
1788
  /**
1855
- * @param audioName
1856
- * @param sceneset
1789
+ * @param p0
1790
+ */
1791
+ static N_0x0FAF7171BF613B80(p0: any): void {
1792
+ inv<void>('0x0FAF7171BF613B80', p0);
1793
+ }
1794
+
1795
+ /**
1796
+ * nullsub, doesn't do anything
1797
+ */
1798
+ static unregisterScriptWithAudio(): void {
1799
+ inv<void>('0xA8638BE228D4751A');
1800
+ }
1801
+
1802
+ /**
1803
+ * @param convoRoot
1804
+ * @param singleLineIndex
1805
+ */
1806
+ static N_0x40CA665AB9D8D505(convoRoot: string | null, singleLineIndex: number): void {
1807
+ inv<void>('0x40CA665AB9D8D505', convoRoot, singleLineIndex);
1808
+ }
1809
+
1810
+ static stopAllScriptedAudioSounds(): void {
1811
+ inv<void>('0x2E399EAFBEEA74D5');
1812
+ }
1813
+
1814
+ /**
1815
+ * @param p0
1816
+ */
1817
+ static N_0xF232C2C546AC16D0(p0: string | null): void {
1818
+ inv<void>('0xF232C2C546AC16D0', p0);
1819
+ }
1820
+
1821
+ /**
1822
+ * https://github.com/femga/rdr3_discoveries/blob/master/audio/music_events/music_events.lua
1823
+ *
1824
+ * @param eventName
1857
1825
  * @returns
1858
1826
  */
1859
- static startAudioSceneset(audioName: string | null, sceneset: string | null): any {
1860
- return inv<number>('0x6339C1EA3979B5F7', audioName, sceneset);
1827
+ static triggerMusicEvent(eventName: string | null): boolean {
1828
+ return !!inv<boolean>('0x706D57B0F50DA710', eventName, rai());
1861
1829
  }
1862
1830
 
1863
1831
  /**
1864
1832
  * @param p0
1865
- * @param p1
1866
- * @param p2
1867
- * @param p3
1868
- * @param p4
1869
1833
  */
1870
- static N_0x448F2647DD6F2E27(p0: any, p1: any, p2: any, p3: any, p4: any): void {
1871
- inv<void>('0x448F2647DD6F2E27', p0, p1, p2, p3, p4);
1834
+ static restartScriptedConversation(p0: string | null): void {
1835
+ inv<void>('0x9AEB285D1818C9AC', p0);
1836
+ }
1837
+
1838
+ /**
1839
+ * @param ped
1840
+ */
1841
+ static N_0xC4CFCE4C656EF480(ped: Ped): void {
1842
+ inv<void>('0xC4CFCE4C656EF480', ped.handle);
1872
1843
  }
1873
1844
 
1874
1845
  /**
1875
1846
  * @param p0
1847
+ * @param p1
1848
+ */
1849
+ static N_0x3A00D87B20A2A5E4(p0: any, p1: any): void {
1850
+ inv<void>('0x3A00D87B20A2A5E4', p0, p1);
1851
+ }
1852
+
1853
+ /**
1854
+ * @param pedHandle
1876
1855
  * @returns
1877
1856
  */
1878
- static N_0xB18FEC133C7C6C69(p0: any): any {
1879
- return inv<number>('0xB18FEC133C7C6C69', p0);
1857
+ static isAnimalVocalizationPlaying(pedHandle: Ped): boolean {
1858
+ return !!inv<boolean>('0xC265DF9FB44A9FBD', pedHandle.handle, rai());
1880
1859
  }
1881
1860
 
1882
1861
  /**
1883
1862
  * @param p0
1884
1863
  * @returns
1885
1864
  */
1886
- static N_0x295859EB18F48D82(p0: string | null): number {
1887
- return inv<number>('0x295859EB18F48D82', p0, rai());
1865
+ static isAnyConversationPlaying(p0: boolean): any {
1866
+ return inv<number>('0xA2CAC9DEF0195E6F', p0);
1888
1867
  }
1889
1868
 
1890
1869
  /**
1891
- * @param p0
1870
+ * @param name
1871
+ * @param pos
1892
1872
  */
1893
- static N_0xCBF2BEBB468A34F3(p0: any): void {
1894
- inv<void>('0xCBF2BEBB468A34F3', p0);
1873
+ static triggerExplosion(name: string | null, pos: Vector3): void {
1874
+ inv<void>('0x374F0E716BFCDE82', name, f(pos.x), f(pos.y), f(pos.z));
1895
1875
  }
1896
1876
 
1897
1877
  /**
1898
- * @param p0
1878
+ * @param ropeId
1899
1879
  * @param p1
1880
+ */
1881
+ static N_0x2651DDC0EA269073(ropeId: number, p1: number): void {
1882
+ inv<void>('0x2651DDC0EA269073', ropeId, f(p1));
1883
+ }
1884
+
1885
+ static stopAudioScenes(): void {
1886
+ inv<void>('0xBAC7FC81A75EC1A1');
1887
+ }
1888
+
1889
+ /**
1890
+ * @param audioName
1891
+ * @param audioRef
1900
1892
  * @param p2
1893
+ * @param p3
1894
+ * @param p4
1895
+ * @param p5
1896
+ */
1897
+ static playSound(audioName: string | null, audioRef: string | null, p2: boolean, p3: any, p4: boolean, p5: any): void {
1898
+ inv<void>('0x7FF4944CC209192D', audioName, audioRef, p2, p3, p4, p5);
1899
+ }
1900
+
1901
+ /**
1902
+ * @param scene
1901
1903
  * @returns
1902
1904
  */
1903
- static stopScriptedConversation(p0: string | null, p1: boolean, p2: boolean): number {
1904
- return inv<number>('0xD79DEEFB53455EBA', p0, p1, p2, rai());
1905
+ static isAudioSceneActive(scene: string | null): boolean {
1906
+ return !!inv<boolean>('0xB65B60556E2A9225', scene, rai());
1905
1907
  }
1906
1908
 
1907
1909
  /**
1908
- * @param p0
1909
- * @param p1
1910
+ * @param context
1911
+ * @param block
1910
1912
  */
1911
- static N_0xFD461D0ABA5559B1(p0: any, p1: any): void {
1912
- inv<void>('0xFD461D0ABA5559B1', p0, p1);
1913
+ static blockSpeechContext(context: string | null, block: boolean): void {
1914
+ inv<void>('0x6378A235374B852F', context, block);
1913
1915
  }
1914
1916
 
1915
1917
  /**
1916
- * *IS_SCRIPTED_CONVERSATION**
1917
- *
1918
- * @param convoRoot
1918
+ * @param p0
1919
1919
  * @returns
1920
1920
  */
1921
- static N_0xD0730C1FA40348D9(convoRoot: string | null): boolean {
1922
- return inv<boolean>('0xD0730C1FA40348D9', convoRoot, rai());
1921
+ static N_0x847748AE5D7B1071(p0: boolean): boolean {
1922
+ return !!inv<boolean>('0x847748AE5D7B1071', p0, rai());
1923
1923
  }
1924
1924
 
1925
1925
  }