@nativewrappers/redm-codegen 0.0.5 → 0.0.6

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 (213) hide show
  1. package/dist/classes/AnimScene.d.ts +126 -126
  2. package/dist/classes/AnimScene.d.ts.map +1 -1
  3. package/dist/classes/AnimScene.js +184 -184
  4. package/dist/classes/BaseModel.d.ts +17 -17
  5. package/dist/classes/BaseModel.d.ts.map +1 -1
  6. package/dist/classes/BaseModel.js +25 -25
  7. package/dist/classes/BaseTask.d.ts +12 -12
  8. package/dist/classes/BaseTask.d.ts.map +1 -1
  9. package/dist/classes/BaseTask.js +14 -14
  10. package/dist/classes/Cam.d.ts +94 -94
  11. package/dist/classes/Cam.d.ts.map +1 -1
  12. package/dist/classes/Cam.js +126 -126
  13. package/dist/classes/Entity.d.ts +471 -471
  14. package/dist/classes/Entity.d.ts.map +1 -1
  15. package/dist/classes/Entity.js +672 -672
  16. package/dist/classes/PedTask.d.ts +155 -155
  17. package/dist/classes/PedTask.d.ts.map +1 -1
  18. package/dist/classes/PedTask.js +204 -204
  19. package/dist/classes/PersChar.d.ts +9 -9
  20. package/dist/classes/PersChar.d.ts.map +1 -1
  21. package/dist/classes/PersChar.js +21 -21
  22. package/dist/classes/Pickup.d.ts +5 -5
  23. package/dist/classes/Pickup.d.ts.map +1 -1
  24. package/dist/classes/Pickup.js +9 -9
  25. package/dist/classes/Player.d.ts +687 -687
  26. package/dist/classes/Player.d.ts.map +1 -1
  27. package/dist/classes/Player.js +1013 -1013
  28. package/dist/classes/Prop.d.ts +87 -87
  29. package/dist/classes/Prop.d.ts.map +1 -1
  30. package/dist/classes/Prop.js +121 -121
  31. package/dist/classes/PropSet.d.ts +4 -4
  32. package/dist/classes/PropSet.d.ts.map +1 -1
  33. package/dist/classes/PropSet.js +6 -6
  34. package/dist/classes/VehicleTask.d.ts +17 -17
  35. package/dist/classes/VehicleTask.d.ts.map +1 -1
  36. package/dist/classes/VehicleTask.js +21 -21
  37. package/dist/classes/Weapon.d.ts +306 -306
  38. package/dist/classes/Weapon.d.ts.map +1 -1
  39. package/dist/classes/Weapon.js +411 -411
  40. package/dist/namespaces/Animscene.d.ts +59 -59
  41. package/dist/namespaces/Animscene.d.ts.map +1 -1
  42. package/dist/namespaces/Animscene.js +77 -77
  43. package/dist/namespaces/Audio.d.ts +569 -569
  44. package/dist/namespaces/Audio.d.ts.map +1 -1
  45. package/dist/namespaces/Audio.js +728 -728
  46. package/dist/namespaces/Bounty.d.ts +70 -70
  47. package/dist/namespaces/Bounty.d.ts.map +1 -1
  48. package/dist/namespaces/Bounty.js +115 -115
  49. package/dist/namespaces/Brain.d.ts +15 -15
  50. package/dist/namespaces/Brain.d.ts.map +1 -1
  51. package/dist/namespaces/Brain.js +20 -20
  52. package/dist/namespaces/CamStatics.d.ts +399 -399
  53. package/dist/namespaces/CamStatics.d.ts.map +1 -1
  54. package/dist/namespaces/CamStatics.js +574 -574
  55. package/dist/namespaces/Clock.d.ts +51 -51
  56. package/dist/namespaces/Clock.d.ts.map +1 -1
  57. package/dist/namespaces/Clock.js +73 -73
  58. package/dist/namespaces/Collection.d.ts +76 -76
  59. package/dist/namespaces/Collection.d.ts.map +1 -1
  60. package/dist/namespaces/Collection.js +108 -108
  61. package/dist/namespaces/Companion.d.ts +22 -22
  62. package/dist/namespaces/Companion.d.ts.map +1 -1
  63. package/dist/namespaces/Companion.js +30 -30
  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/Crew.d.ts +9 -9
  71. package/dist/namespaces/Crew.d.ts.map +1 -1
  72. package/dist/namespaces/Crew.js +14 -14
  73. package/dist/namespaces/Databinding.d.ts +177 -177
  74. package/dist/namespaces/Databinding.d.ts.map +1 -1
  75. package/dist/namespaces/Databinding.js +271 -271
  76. package/dist/namespaces/Dlc.d.ts +5 -5
  77. package/dist/namespaces/Dlc.d.ts.map +1 -1
  78. package/dist/namespaces/Dlc.js +9 -9
  79. package/dist/namespaces/EntityStatics.d.ts +193 -193
  80. package/dist/namespaces/EntityStatics.d.ts.map +1 -1
  81. package/dist/namespaces/EntityStatics.js +263 -263
  82. package/dist/namespaces/Fire.d.ts +7 -7
  83. package/dist/namespaces/Fire.d.ts.map +1 -1
  84. package/dist/namespaces/Fire.js +9 -9
  85. package/dist/namespaces/Graphics.d.ts +820 -820
  86. package/dist/namespaces/Graphics.d.ts.map +1 -1
  87. package/dist/namespaces/Graphics.js +1118 -1118
  88. package/dist/namespaces/Hud.d.ts +494 -494
  89. package/dist/namespaces/Hud.d.ts.map +1 -1
  90. package/dist/namespaces/Hud.js +789 -789
  91. package/dist/namespaces/Inventory.d.ts +180 -180
  92. package/dist/namespaces/Inventory.d.ts.map +1 -1
  93. package/dist/namespaces/Inventory.js +239 -239
  94. package/dist/namespaces/Itemdatabase.d.ts +78 -78
  95. package/dist/namespaces/Itemdatabase.d.ts.map +1 -1
  96. package/dist/namespaces/Itemdatabase.js +106 -106
  97. package/dist/namespaces/Map.d.ts +156 -156
  98. package/dist/namespaces/Map.d.ts.map +1 -1
  99. package/dist/namespaces/Map.js +207 -207
  100. package/dist/namespaces/Minigame.d.ts +78 -78
  101. package/dist/namespaces/Minigame.d.ts.map +1 -1
  102. package/dist/namespaces/Minigame.js +116 -116
  103. package/dist/namespaces/Missiondata.d.ts +15 -15
  104. package/dist/namespaces/Missiondata.d.ts.map +1 -1
  105. package/dist/namespaces/Missiondata.js +23 -23
  106. package/dist/namespaces/Network.d.ts +636 -636
  107. package/dist/namespaces/Network.d.ts.map +1 -1
  108. package/dist/namespaces/Network.js +915 -915
  109. package/dist/namespaces/Object.d.ts +121 -121
  110. package/dist/namespaces/Object.d.ts.map +1 -1
  111. package/dist/namespaces/Object.js +162 -162
  112. package/dist/namespaces/Pad.d.ts +94 -94
  113. package/dist/namespaces/Pad.d.ts.map +1 -1
  114. package/dist/namespaces/Pad.js +127 -127
  115. package/dist/namespaces/Perschar.d.ts +44 -44
  116. package/dist/namespaces/Perschar.d.ts.map +1 -1
  117. package/dist/namespaces/Perschar.js +68 -68
  118. package/dist/namespaces/Physics.d.ts +158 -158
  119. package/dist/namespaces/Physics.d.ts.map +1 -1
  120. package/dist/namespaces/Physics.js +207 -207
  121. package/dist/namespaces/PlayerStatics.d.ts +127 -127
  122. package/dist/namespaces/PlayerStatics.d.ts.map +1 -1
  123. package/dist/namespaces/PlayerStatics.js +177 -177
  124. package/dist/namespaces/Population.d.ts +75 -75
  125. package/dist/namespaces/Population.d.ts.map +1 -1
  126. package/dist/namespaces/Population.js +101 -101
  127. package/dist/namespaces/Posse.d.ts +38 -38
  128. package/dist/namespaces/Posse.d.ts.map +1 -1
  129. package/dist/namespaces/Posse.js +62 -62
  130. package/dist/namespaces/Propset.d.ts +30 -30
  131. package/dist/namespaces/Propset.d.ts.map +1 -1
  132. package/dist/namespaces/Propset.js +38 -38
  133. package/dist/namespaces/Shapetest.d.ts +11 -11
  134. package/dist/namespaces/Shapetest.d.ts.map +1 -1
  135. package/dist/namespaces/Shapetest.js +13 -13
  136. package/dist/namespaces/Stats.d.ts +88 -88
  137. package/dist/namespaces/Stats.d.ts.map +1 -1
  138. package/dist/namespaces/Stats.js +123 -123
  139. package/dist/namespaces/Streaming.d.ts +58 -58
  140. package/dist/namespaces/Streaming.d.ts.map +1 -1
  141. package/dist/namespaces/Streaming.js +92 -92
  142. package/dist/namespaces/Task.d.ts +62 -62
  143. package/dist/namespaces/Task.d.ts.map +1 -1
  144. package/dist/namespaces/Task.js +90 -90
  145. package/dist/namespaces/Telemetry.d.ts +172 -172
  146. package/dist/namespaces/Telemetry.d.ts.map +1 -1
  147. package/dist/namespaces/Telemetry.js +240 -240
  148. package/dist/namespaces/Uifeed.d.ts +15 -15
  149. package/dist/namespaces/Uifeed.d.ts.map +1 -1
  150. package/dist/namespaces/Uifeed.js +24 -24
  151. package/dist/namespaces/Voice.d.ts +38 -38
  152. package/dist/namespaces/Voice.d.ts.map +1 -1
  153. package/dist/namespaces/Voice.js +56 -56
  154. package/dist/namespaces/Water.d.ts +27 -27
  155. package/dist/namespaces/Water.d.ts.map +1 -1
  156. package/dist/namespaces/Water.js +41 -41
  157. package/dist/namespaces/WeaponStatics.d.ts +250 -250
  158. package/dist/namespaces/WeaponStatics.d.ts.map +1 -1
  159. package/dist/namespaces/WeaponStatics.js +346 -346
  160. package/package.json +1 -1
  161. package/src/classes/AnimScene.ts +199 -199
  162. package/src/classes/BaseModel.ts +29 -29
  163. package/src/classes/BaseTask.ts +15 -15
  164. package/src/classes/Cam.ts +135 -135
  165. package/src/classes/Entity.ts +687 -687
  166. package/src/classes/PedTask.ts +223 -223
  167. package/src/classes/PersChar.ts +24 -24
  168. package/src/classes/Pickup.ts +10 -10
  169. package/src/classes/Player.ts +1024 -1024
  170. package/src/classes/Prop.ts +136 -136
  171. package/src/classes/PropSet.ts +7 -7
  172. package/src/classes/VehicleTask.ts +23 -23
  173. package/src/classes/Weapon.ts +429 -429
  174. package/src/namespaces/Animscene.ts +86 -86
  175. package/src/namespaces/Audio.ts +804 -804
  176. package/src/namespaces/Bounty.ts +131 -131
  177. package/src/namespaces/Brain.ts +22 -22
  178. package/src/namespaces/CamStatics.ts +599 -599
  179. package/src/namespaces/Clock.ts +82 -82
  180. package/src/namespaces/Collection.ts +109 -109
  181. package/src/namespaces/Companion.ts +34 -34
  182. package/src/namespaces/Compendium.ts +59 -59
  183. package/src/namespaces/Crashlog.ts +16 -16
  184. package/src/namespaces/Crew.ts +16 -16
  185. package/src/namespaces/Databinding.ts +286 -286
  186. package/src/namespaces/Dlc.ts +9 -9
  187. package/src/namespaces/EntityStatics.ts +279 -279
  188. package/src/namespaces/Fire.ts +10 -10
  189. package/src/namespaces/Graphics.ts +1196 -1196
  190. package/src/namespaces/Hud.ts +799 -799
  191. package/src/namespaces/Inventory.ts +245 -245
  192. package/src/namespaces/Itemdatabase.ts +118 -118
  193. package/src/namespaces/Map.ts +215 -215
  194. package/src/namespaces/Minigame.ts +132 -132
  195. package/src/namespaces/Missiondata.ts +27 -27
  196. package/src/namespaces/Network.ts +951 -951
  197. package/src/namespaces/Object.ts +171 -171
  198. package/src/namespaces/Pad.ts +127 -127
  199. package/src/namespaces/Perschar.ts +72 -72
  200. package/src/namespaces/Physics.ts +231 -231
  201. package/src/namespaces/PlayerStatics.ts +202 -202
  202. package/src/namespaces/Population.ts +114 -114
  203. package/src/namespaces/Posse.ts +62 -62
  204. package/src/namespaces/Propset.ts +42 -42
  205. package/src/namespaces/Shapetest.ts +14 -14
  206. package/src/namespaces/Stats.ts +139 -139
  207. package/src/namespaces/Streaming.ts +104 -104
  208. package/src/namespaces/Task.ts +100 -100
  209. package/src/namespaces/Telemetry.ts +265 -265
  210. package/src/namespaces/Uifeed.ts +27 -27
  211. package/src/namespaces/Voice.ts +65 -65
  212. package/src/namespaces/Water.ts +47 -47
  213. package/src/namespaces/WeaponStatics.ts +365 -365
@@ -2,495 +2,246 @@ import { createFromHandle } from '../types/HandleRegistry';
2
2
  import { inv, rai, pvi, _h, f } from '../types/NativeAliases';
3
3
  export class Audio {
4
4
  /**
5
- * https://github.com/femga/rdr3_discoveries/tree/master/audio/audio_flags
6
- *
7
- * @param flagName
8
- * @param toggle
5
+ * @param p0
9
6
  */
10
- static setAudioFlag(flagName, toggle) {
11
- inv('0xB9EFD5C25018725A', flagName, toggle);
7
+ static skipToNextScriptedConversationLine(p0) {
8
+ inv('0x9663FE6B7A61EB00', p0);
12
9
  }
13
10
  /**
14
- * @param vehicle
15
- * @param toggle
11
+ * @param ped
12
+ * @param p1
16
13
  */
17
- static setHornEnabled(vehicle, toggle) {
18
- inv('0x76D683C108594D0E', vehicle.handle, toggle);
14
+ static stopCurrentPlayingSpeech(ped, p1) {
15
+ inv('0x79D2F0E66F81D90D', ped.handle, p1);
16
+ }
17
+ static clearConversationHistory() {
18
+ inv('0x33D51F801CB16E4F');
19
19
  }
20
20
  /**
21
- * p1 is possibly naSpeechAudibility, naSpeechType, or naSpeechEventTypeRequestPriority
22
- * SKIP_* - START_*
21
+ * @param eventName
22
+ * @returns
23
+ */
24
+ static prepareMusicEvent(eventName) {
25
+ return !!inv('0x1E5185B72EF5158A', eventName, rai());
26
+ }
27
+ /**
28
+ * Starts Audio Loop
29
+ * _PLAY_SOUND_FROM_ENTITY* - _PLAY_SOUND_FRONTEND*
23
30
  *
24
- * @param speechEventType Refer to [enum: naSpeechEventType]
25
- * @param p1
26
- * @param p2
31
+ * @param soundId
32
+ * @param soundName
33
+ * @param pos
34
+ * @param soundsetName
35
+ * @param p6
36
+ * @param p7
37
+ * @param p8
27
38
  */
28
- static N_0x0D7FD6A55FD63AEF(speechEventType, p1, p2) {
29
- inv('0x0D7FD6A55FD63AEF', speechEventType, p1, p2);
39
+ static playSoundFromPositionWithId(soundId, soundName, pos, soundsetName, p6, p7, p8) {
40
+ inv('0xDCF5BA95BBF0FABA', soundId, soundName, f(pos.x), f(pos.y), f(pos.z), soundsetName, p6, p7, p8);
30
41
  }
31
42
  /**
32
43
  * @param p0
33
44
  * @param p1
34
45
  * @param p2
35
- * @param p3
36
- * @param p4
37
46
  */
38
- static N_0x06C5DF5EE444BC6B(p0, p1, p2, p3, p4) {
39
- inv('0x06C5DF5EE444BC6B', p0, p1, p2, p3, p4);
47
+ static N_0x8D29FDF565DED9AE(p0, p1, p2) {
48
+ inv('0x8D29FDF565DED9AE', p0, p1, p2);
40
49
  }
41
50
  /**
42
- * @param p0
51
+ * @param eventName
43
52
  * @returns
44
53
  */
45
- static N_0x2B9C37C01BF25EDB(p0) {
46
- return inv('0x2B9C37C01BF25EDB', p0);
54
+ static triggerMusicEventWithHash(eventName) {
55
+ return inv('0x05D6195FB4D428F4', _h(eventName));
47
56
  }
48
57
  /**
49
- * @param p0
58
+ * @param soundId
59
+ * @returns
50
60
  */
51
- static N_0x64B956F4E761DF5C(p0) {
52
- inv('0x64B956F4E761DF5C', p0);
61
+ static hasSoundIdFinished(soundId) {
62
+ return inv('0x84848E1C0FC67DBB', soundId);
53
63
  }
54
64
  /**
55
- * @param p0
65
+ * @param scene
56
66
  */
57
- static setAudioOnlineTransitionStage(p0) {
58
- inv('0x9B1FC259187C97C0', p0);
67
+ static stopAudioScene(scene) {
68
+ inv('0xDFE8422B3B94E688', scene);
59
69
  }
60
70
  /**
61
- * @param streamId
71
+ * @param p0
72
+ * @param p1
62
73
  */
63
- static playStreamFrontend(streamId) {
64
- inv('0x58FCE43488F9F5F4', streamId);
74
+ static N_0xA6847BBA4FCDD13F(p0, p1) {
75
+ inv('0xA6847BBA4FCDD13F', p0, p1);
65
76
  }
66
77
  /**
67
- * _IS_SOUND_RUNNING(?)
68
- *
69
- * @param audioName
70
- * @param audioRef
78
+ * @param p0
71
79
  * @returns
72
80
  */
73
- static N_0x580D71DFE0088E34(audioName, audioRef) {
74
- return !!inv('0x580D71DFE0088E34', audioName, audioRef, rai());
81
+ static isScriptedSpeechPlaying(p0) {
82
+ return !!inv('0xCC9AA18DCC7084F4', p0, rai());
75
83
  }
76
84
  /**
77
- * nullsub, doesn't do anything
78
- *
79
- * @param p0
85
+ * @param ped
86
+ * @param p1
87
+ * @param hash
80
88
  */
81
- static registerScriptWithAudio(p0) {
82
- inv('0xC6ED9D5092438D91', p0);
89
+ static useFootstepScriptSweeteners(ped, p1, hash) {
90
+ inv('0xBF4DC1784BE94DFA', ped.handle, p1, _h(hash));
83
91
  }
84
92
  /**
85
- * @param p0
86
- * @param p1
93
+ * whistleConfig: Ped.WhistlePitch (0.0 - 1.0), Ped.WhistleClarity (0.0 - 1.0), Ped.WhistleShape (0.0 - 10.0)
94
+ *
95
+ * @param ped
96
+ * @param whistleConfig
97
+ * @param value
87
98
  */
88
- static N_0x35B8C070E0C16E2F(p0, p1) {
89
- inv('0x35B8C070E0C16E2F', p0, p1);
90
- }
91
- static N_0x138ADB94F8B90616() {
92
- inv('0x138ADB94F8B90616');
99
+ static setWhistleConfigForPed(ped, whistleConfig, value) {
100
+ inv('0x9963681A8BC69BF3', ped.handle, whistleConfig, f(value));
93
101
  }
94
102
  /**
95
- * @param p0
103
+ * @param ped
96
104
  * @param p1
97
105
  * @param p2
98
106
  */
99
- static N_0x380A2E353AD30917(p0, p1, p2) {
100
- inv('0x380A2E353AD30917', p0, p1, p2);
107
+ static playAnimalVocalizationPheromoneVialResponse(ped, p1, p2) {
108
+ inv('0x0E53530D9B2DB01D', ped.handle, _h(p1), p2);
101
109
  }
102
110
  /**
103
- * @param convoRoot
104
- * @returns
111
+ * Only used in R* SP Scripts
112
+ * Old Name: _UPDATE_SOUND_POSITION
113
+ *
114
+ * @param soundId
115
+ * @param pos
105
116
  */
106
- static createNewScriptedConversation(convoRoot) {
107
- return inv('0xD2C91A0B572AAE56', convoRoot);
117
+ static updateSoundCoord(soundId, pos) {
118
+ inv('0x0286617C8FC50A53', soundId, f(pos.x), f(pos.y), f(pos.z));
108
119
  }
109
120
  /**
110
- * @param p0
121
+ * @param ambientZone
111
122
  * @param p1
112
123
  * @param p2
113
- * @returns
114
124
  */
115
- static N_0x7678FE0455ED1145(p0, p1, p2) {
116
- return inv('0x7678FE0455ED1145', p0, p1, p2);
125
+ static setAmbientZoneStatePersistent(ambientZone, p1, p2) {
126
+ inv('0x1D6650420CEC9D3B', ambientZone, p1, p2);
117
127
  }
118
128
  /**
119
- * @param entity
120
- * @param groupName
121
- * @param p2
129
+ * @param ped
130
+ * @param p1
122
131
  */
123
- static addEntityToAudioMixGroup(entity, groupName, p2) {
124
- inv('0x153973AB99FE8980', entity.handle, groupName, f(p2));
132
+ static stopCurrentPlayingAmbientSpeech(ped, p1) {
133
+ inv('0xB8BEC0CA6F0EDB0F', ped.handle, p1);
125
134
  }
126
135
  /**
127
- * speechEventType: https://github.com/Halen84/RDR3-Native-Flags-And-Enums/tree/main/naSpeechEventType
128
- * SKIP_* - START_*
129
- *
130
- * @param speechEventType
136
+ * @param p0
137
+ * @param ped
138
+ * @param p2
139
+ * @returns
131
140
  */
132
- static N_0x660A8F876DF1D4F8(speechEventType) {
133
- inv('0x660A8F876DF1D4F8', speechEventType);
141
+ static isPedInCurrentConversation(p0, ped, p2) {
142
+ return !!inv('0x049E937F18F4020C', p0, ped.handle, p2, rai());
134
143
  }
135
144
  /**
136
145
  * @param p0
137
- * @param p1
146
+ * @returns
138
147
  */
139
- static N_0x139A4B9DF2D26CBF(p0, p1) {
140
- inv('0x139A4B9DF2D26CBF', p0, p1);
148
+ static isScriptedConversionOngoing(p0) {
149
+ return inv('0xF01C570E0A0A1E67', p0);
141
150
  }
142
151
  /**
143
- * @param pos
144
- * @param streamId
152
+ * @param soundsetName
145
153
  */
146
- static playStreamFromPosition(pos, streamId) {
147
- inv('0x21442F412E8DE56B', f(pos.x), f(pos.y), f(pos.z), streamId);
154
+ static releaseSoundset(soundsetName) {
155
+ inv('0x531A78D6BF27014B', soundsetName);
148
156
  }
149
157
  /**
150
- * @param entity
151
158
  * @returns
152
159
  */
153
- static getEntityAudioMixGroup(entity) {
154
- return (inv('0x8B25A18E390F75BF', entity.handle, rai())) & 0xFFFFFFFF;
160
+ static getSoundId() {
161
+ return inv('0x430386FE9BF80B45', rai());
155
162
  }
156
163
  /**
157
- * @param convoRoot
158
- * @returns
164
+ * @param listeningToPed
165
+ * @param ped
166
+ * @param listenerName
159
167
  */
160
- static isScriptedConversationCreated(convoRoot) {
161
- return inv('0xD89504D9D7D5057D', convoRoot);
162
- }
163
- static N_0xA2B851605748AD0E() {
164
- inv('0xA2B851605748AD0E');
168
+ static N_0xA2323A2EAE32A290(listeningToPed, ped, listenerName) {
169
+ inv('0xA2323A2EAE32A290', listeningToPed.handle, ped.handle, listenerName);
165
170
  }
166
171
  /**
167
- * @param convoRoot
172
+ * @param p0
168
173
  * @returns
169
174
  */
170
- static N_0x0CB3D1919E8D7CBA(convoRoot) {
171
- return !!inv('0x0CB3D1919E8D7CBA', convoRoot, rai());
175
+ static N_0xF0EE69F500952FA5(p0) {
176
+ return inv('0xF0EE69F500952FA5', p0);
172
177
  }
173
178
  /**
174
- * Name: ROPE_SETTINGS_DEFAULT
179
+ * Old name: AUDIO_IS_SCRIPTED_MUSIC_PLAYING
175
180
  *
176
- * @param ropeId
177
- * @param name
181
+ * @returns
178
182
  */
179
- static N_0xF092B6030D6FD49C(ropeId, name) {
180
- inv('0xF092B6030D6FD49C', ropeId, name);
183
+ static isMusicPlaying() {
184
+ return !!inv('0x845FFC3A4FEEFA3E', rai());
181
185
  }
182
186
  /**
183
- * @param p0
184
- * @param currentScriptedConvoLine
185
- * @returns
187
+ * Used in Script Function NET_CAMP_CLIENT_UPDATE_PED_ROLE_STATE_SHOP: hash exists! Playing hash
188
+ *
189
+ * @param ped
190
+ * @param p1
186
191
  */
187
- static N_0x254B0241E964B450(p0, currentScriptedConvoLine) {
188
- return createFromHandle('Ped', inv('0x254B0241E964B450', p0, currentScriptedConvoLine, rai()));
192
+ static N_0xB93A769B8B726950(ped, p1) {
193
+ inv('0xB93A769B8B726950', ped.handle, _h(p1));
189
194
  }
190
195
  /**
191
- * @param ped
192
- * @param vocalizationName
193
- * @param p2
196
+ * @param variableName
197
+ * @param variableValue
198
+ * @param audioName
199
+ * @param audioRef
194
200
  */
195
- static playAnimalVocalization(ped, vocalizationName, p2) {
196
- inv('0xEE066C7006C49C0A', ped.handle, vocalizationName, p2);
201
+ static setVariableOnSoundWithName(variableName, variableValue, audioName, audioRef) {
202
+ inv('0x9821B68CD3E05F2B', variableName, f(variableValue), audioName, audioRef);
197
203
  }
198
204
  /**
199
205
  * @param p0
200
206
  * @param p1
201
207
  */
202
- static setPedInteriorWallaDensity(p0, p1) {
203
- inv('0x8BF907833BE275DE', f(p0), f(p1));
208
+ static N_0xD733528B6C35647A(p0, p1) {
209
+ inv('0xD733528B6C35647A', p0, p1);
204
210
  }
205
211
  /**
206
- * @param p0
212
+ * @param ambientZone
207
213
  * @param p1
208
214
  */
209
- static N_0xD47D47EFBF103FB8(p0, p1) {
210
- inv('0xD47D47EFBF103FB8', p0, p1);
215
+ static clearAmbientZoneListState(ambientZone, p1) {
216
+ inv('0x120C48C614909FA4', ambientZone, p1);
211
217
  }
212
218
  /**
213
219
  * @param p0
214
220
  * @param p1
215
221
  */
216
- static N_0x5BC885EBD75FAA7D(p0, p1) {
217
- inv('0x5BC885EBD75FAA7D', p0, p1);
222
+ static N_0xE891504B2F0E2DBA(p0, p1) {
223
+ inv('0xE891504B2F0E2DBA', p0, p1);
218
224
  }
219
225
  /**
220
- * Valid pain IDs: 0..12 these names are not official, but here is a list of the IDs:
221
- * 1 burning,
222
- * 2 drowning,
223
- * 3 coughing,
224
- * 4 nothing,
225
- * 5 nothing,
226
- * 6 coughing_2,
227
- * 7 nothing,
228
- * 8 nothing,
229
- * 9 hurtingSick?,
230
- * 10 hurtingFall?,
231
- * 11 nothing,
232
- * 12 choking
233
- *
234
226
  * @param ped
235
- * @param painId
236
- * @param p2
237
- * @param p3
238
- * @param isNetwork
227
+ * @param p1
228
+ * @returns
239
229
  */
240
- static playPain(ped, painId, p2, p3, isNetwork) {
241
- inv('0xBC9AE166038A5CEC', ped.handle, painId, f(p2), p3, isNetwork);
242
- }
243
- /**
244
- * *STOP_AUDIO**
245
- *
246
- * @param p0
247
- */
248
- static N_0x6AB944DF68B512D3(p0) {
249
- inv('0x6AB944DF68B512D3', p0);
250
- }
251
- static N_0xDAD6CD07CAA4F382() {
252
- inv('0xDAD6CD07CAA4F382');
253
- }
254
- /**
255
- * soundId maybe be incorrect name for param p2, in the decompiles is always -2
256
- *
257
- * @param soundName
258
- * @param soundsetName
259
- * @param soundId
260
- * @returns
261
- */
262
- static prepareSound(soundName, soundsetName, soundId) {
263
- return inv('0xE368E8422C860BA7', soundName, soundsetName, soundId);
264
- }
265
- /**
266
- * @param p0
267
- * @param p1
268
- */
269
- static N_0x259ACC5B52A2B2D9(p0, p1) {
270
- inv('0x259ACC5B52A2B2D9', p0, p1);
271
- }
272
- /**
273
- * @param audSpeechEvent
274
- */
275
- static N_0x1E6F9A9FE1A99F36(audSpeechEvent) {
276
- inv('0x1E6F9A9FE1A99F36', audSpeechEvent);
277
- }
278
- /**
279
- * @param p0
280
- * @param p1
281
- * @param p2
282
- * @param p3
283
- */
284
- static N_0x017492B2201E3428(p0, p1, p2, p3) {
285
- inv('0x017492B2201E3428', p0, p1, p2, p3);
286
- }
287
- /**
288
- * @returns
289
- */
290
- static N_0xE600F61F54A444A6() {
291
- return inv('0xE600F61F54A444A6');
292
- }
293
- /**
294
- * @param scene
295
- * @param variable
296
- * @param value
297
- */
298
- static setAudioSceneVariable(scene, variable, value) {
299
- inv('0xEF21A9EF089A2668', scene, variable, f(value));
300
- }
301
- /**
302
- * Old name: _PLAY_AMBIENT_SPEECH_AT_COORDS
303
- *
304
- * @param pos
305
- * @returns params
306
- */
307
- static playAmbientSpeechFromPositionNative(pos) {
308
- const result = inv('0xED640017ED337E45', f(pos.x), f(pos.y), f(pos.z), pvi());
309
- return [result[0], result[1]];
310
- }
311
- /**
312
- * @param p0
313
- * @param p1
314
- * @param p2
315
- * @param p3
316
- */
317
- static N_0x5E3CCF03995388B5(p0, p1, p2, p3) {
318
- inv('0x5E3CCF03995388B5', p0, p1, p2, p3);
230
+ static N_0xDF947FE0D551684E(ped, p1) {
231
+ return !!inv('0xDF947FE0D551684E', ped.handle, p1, rai());
319
232
  }
320
233
  /**
321
234
  * @param entity
322
- * @returns
323
- */
324
- static N_0x886657C5B3D8EDE3(entity) {
325
- return inv('0x886657C5B3D8EDE3', entity.handle);
326
- }
327
- /**
328
- * @param p0
329
- */
330
- static N_0x6B7A88A61B41E589(p0) {
331
- inv('0x6B7A88A61B41E589', p0);
332
- }
333
- /**
334
- * @param p0
335
- * @param p1
336
- * @param p2
337
- */
338
- static N_0x821C32C728B24477(p0, p1, p2) {
339
- inv('0x821C32C728B24477', p0, p1, p2);
340
- }
341
- /**
342
- * @param ped
343
- * @param p1
344
- * @returns
345
- */
346
- static isPedInAnyConversation(ped, p1) {
347
- return inv('0x54B187F111D9C6F8', ped.handle, p1);
348
- }
349
- /**
350
- * Hashes: VOFX_PLAYER_MALE01, VOFX_PLAYER_MALE02, VOFX_PLAYER_MALE03, VOFX_PLAYER_FEMALE01, VOFX_PLAYER_FEMALE02, VOFX_PLAYER_FEMALE03
351
- *
352
- * @param ped
353
- * @param voice
354
- */
355
- static setVofxPedVoice(ped, voice) {
356
- inv('0x2703EFB583F0949A', ped.handle, _h(voice));
357
- }
358
- /**
359
- * @param ped
360
- * @returns
361
- */
362
- static isAnySpeechPlaying(ped) {
363
- return !!inv('0x729072355FA39EC9', ped.handle, rai());
364
- }
365
- /**
366
- * @param convoRoot
367
- */
368
- static clearConversationHistoryForScriptedConversation(convoRoot) {
369
- inv('0xEF51242E35242B47', convoRoot);
370
- }
371
- /**
372
- * @param p0
373
- * @param p1
374
- */
375
- static N_0x018ABE833CA64D2A(p0, p1) {
376
- inv('0x018ABE833CA64D2A', p0, p1);
377
- }
378
- /**
379
- * @param zoneName
380
- * @param p1
381
- */
382
- static clearAmbientZoneState(zoneName, p1) {
383
- inv('0x218DD44AAAC964FF', zoneName, p1);
384
- }
385
- /**
386
- * @param p0
387
- * @param p1
388
- */
389
- static N_0x3E93DDDCBB6111E4(p0, p1) {
390
- inv('0x3E93DDDCBB6111E4', p0, f(p1));
391
- }
392
- /**
393
- * @param p0
394
- * @returns
395
- */
396
- static N_0x5A13586A9447931F(p0) {
397
- return !!inv('0x5A13586A9447931F', p0, rai());
398
- }
399
- /**
400
- * @param p0
401
- * @param p1
402
- */
403
- static N_0xBC07CA8FD710E7FD(p0, p1) {
404
- inv('0xBC07CA8FD710E7FD', p0, p1);
405
- }
406
- /**
407
- * @param p0
408
- * @param p1
409
- */
410
- static N_0x078F77FD1A43EAB3(p0, p1) {
411
- inv('0x078F77FD1A43EAB3', p0, p1);
412
- }
413
- /**
414
- * @param p0
415
- * @param p1
416
- */
417
- static N_0x341CDD17EFC2472E(p0, p1) {
418
- inv('0x341CDD17EFC2472E', p0, p1);
419
- }
420
- /**
421
- * @param ambientZone
422
- * @param p1
423
- * @param p2
424
- */
425
- static setAmbientZoneListState(ambientZone, p1, p2) {
426
- inv('0x9748FA4DE50CCE3E', ambientZone, p1, p2);
427
- }
428
- /**
429
- * @param streamId
430
- * @returns
431
- */
432
- static isStreamPlaying(streamId) {
433
- return !!inv('0xD11FA52EB849D978', streamId, rai());
434
- }
435
- /**
436
- * @param convoRoot
437
- * @param p1
438
- * @param p2
439
- * @param clone
440
- */
441
- static preloadScriptConversation(convoRoot, p1, p2, clone) {
442
- inv('0x3B3CAD6166916D87', convoRoot, p1, p2, clone);
443
- }
444
- /**
445
- * Creates stream and returns streamId handle to be used with PLAY_STREAM_* natives
446
- * https://github.com/femga/rdr3_discoveries/tree/master/audio/create_stream
447
- *
448
- * @param streamName
449
- * @param soundSet
450
- * @returns
451
- */
452
- static getLoadedStreamIdFromCreation(streamName, soundSet) {
453
- return inv('0x0556C784FA056628', streamName, soundSet, rai());
454
- }
455
- /**
456
- * @param vehicle
457
235
  * @param p1
458
236
  */
459
- static setAudioVehiclePriority(vehicle, p1) {
460
- inv('0xE5564483E407F914', vehicle.handle, p1);
461
- }
462
- /**
463
- * @param soundName
464
- * @param soundsetName
465
- */
466
- static releaseShardSounds(soundName, soundsetName) {
467
- inv('0x9D746964E0CF2C5F', soundName, soundsetName);
468
- }
469
- /**
470
- * Gets the hash for the last played speech line.
471
- *
472
- * @param ped
473
- * @returns
474
- */
475
- static getLastPlayedSpeechForPed(ped) {
476
- return inv('0x6BFFB7C276866996', ped.handle);
477
- }
478
- static N_0xE7E6CB8B713ED190() {
479
- inv('0xE7E6CB8B713ED190');
480
- }
481
- /**
482
- * @param p0
483
- * @returns
484
- */
485
- static N_0x44A5EEF54F62E823(p0) {
486
- return inv('0x44A5EEF54F62E823', p0);
237
+ static N_0xE9694B2D6CB87B06(entity, p1) {
238
+ inv('0xE9694B2D6CB87B06', entity.handle, p1);
487
239
  }
488
240
  /**
489
- * @param ped
490
- * @param streamId
241
+ * @param audioBank
491
242
  */
492
- static playStreamFromPed(ped, streamId) {
493
- inv('0x89049DD63C08B5D1', ped.handle, streamId);
243
+ static releaseNamedScriptAudioBank(audioBank) {
244
+ inv('0x77ED170667F50170', audioBank);
494
245
  }
495
246
  /**
496
247
  * nullsub, doesn't do anything
@@ -615,120 +366,6 @@ export class Audio {
615
366
  static isScriptedAudioCustom(item, soundSet) {
616
367
  return inv('0x6DF942C4179BE5AB', _h(item), _h(soundSet));
617
368
  }
618
- /**
619
- * @param p0
620
- * @returns
621
- */
622
- static N_0xD05A460328560477(p0) {
623
- return inv('0xD05A460328560477', p0);
624
- }
625
- /**
626
- * Checks if the ped can play the speech or has the speech file, last parameter is usually false.
627
- *
628
- * @param ped
629
- * @param speechName
630
- * @param unk
631
- * @returns
632
- */
633
- static doesContextExistForThisPed(ped, speechName, unk) {
634
- return !!inv('0x49B99BF3FDA89A7A', ped.handle, speechName, unk, rai());
635
- }
636
- /**
637
- * @returns
638
- */
639
- static N_0x2B101AD9F651243A() {
640
- return inv('0x2B101AD9F651243A');
641
- }
642
- /**
643
- * @param p0
644
- * @returns
645
- */
646
- static N_0x131EC9247E7A2903(p0) {
647
- return inv('0x131EC9247E7A2903', p0);
648
- }
649
- /**
650
- * @param ped
651
- * @param name
652
- */
653
- static setAmbientVoiceName(ped, name) {
654
- inv('0x6C8065A3B780185B', ped.handle, name);
655
- }
656
- /**
657
- * @param play
658
- */
659
- static playEndCreditsMusic(play) {
660
- inv('0xCD536C4D33DCC900', play);
661
- }
662
- /**
663
- * @param eventName
664
- * @returns
665
- */
666
- static cancelMusicEvent(eventName) {
667
- return !!inv('0x5B17A90291133DA5', eventName, rai());
668
- }
669
- /**
670
- * @param ped
671
- * @returns
672
- */
673
- static isAmbientSpeechDisabled(ped) {
674
- return !!inv('0x932C2D096A2C3FFF', ped.handle, rai());
675
- }
676
- /**
677
- * Not implemented.
678
- *
679
- * @param animal
680
- * @param mood
681
- */
682
- static setAnimalMood(animal, mood) {
683
- inv('0xCC97B29285B1DC3B', animal.handle, mood);
684
- }
685
- /**
686
- * @param convoRoot
687
- * @param p1
688
- * @param p2
689
- * @param clone
690
- */
691
- static startScriptConversation(convoRoot, p1, p2, clone) {
692
- inv('0x6B17C62C9635D2DC', convoRoot, p1, p2, clone);
693
- }
694
- /**
695
- * @param p0
696
- */
697
- static N_0xEB4D592620B8C209(p0) {
698
- inv('0xEB4D592620B8C209', p0);
699
- }
700
- static releaseScriptAudioBank() {
701
- inv('0x7A2D8AD0A9EB9C3F');
702
- }
703
- static N_0x4BE3EC91C01F0FE8() {
704
- inv('0x4BE3EC91C01F0FE8');
705
- }
706
- /**
707
- * @param zoneName
708
- * @param isEnabled
709
- * @param p2
710
- */
711
- static setAmbientZoneState(zoneName, isEnabled, p2) {
712
- inv('0xBDA07E5950085E46', zoneName, isEnabled, p2);
713
- }
714
- /**
715
- * @param audioName
716
- * @param entity
717
- * @param audioRef
718
- * @param isNetwork
719
- * @param p4
720
- * @param p5
721
- */
722
- static playSoundFromEntity(audioName, entity, audioRef, isNetwork, p4, p5) {
723
- inv('0x6FB1DA3CA9DA7D90', audioName, entity.handle, audioRef, isNetwork, p4, p5);
724
- }
725
- /**
726
- * @param ped
727
- * @returns
728
- */
729
- static isAmbientSpeechPlaying(ped) {
730
- return !!inv('0x9072C8B49907BFAD', ped.handle, rai());
731
- }
732
369
  /**
733
370
  * @param ped
734
371
  * @param toggle
@@ -961,275 +598,615 @@ export class Audio {
961
598
  /**
962
599
  * @param p0
963
600
  */
964
- static N_0xCBF2BEBB468A34F3(p0) {
965
- inv('0xCBF2BEBB468A34F3', p0);
601
+ static N_0xCBF2BEBB468A34F3(p0) {
602
+ inv('0xCBF2BEBB468A34F3', p0);
603
+ }
604
+ /**
605
+ * @param p0
606
+ * @param p1
607
+ * @param p2
608
+ * @returns
609
+ */
610
+ static stopScriptedConversation(p0, p1, p2) {
611
+ return inv('0xD79DEEFB53455EBA', p0, p1, p2, rai());
612
+ }
613
+ /**
614
+ * @param p0
615
+ * @param p1
616
+ */
617
+ static N_0xFD461D0ABA5559B1(p0, p1) {
618
+ inv('0xFD461D0ABA5559B1', p0, p1);
619
+ }
620
+ /**
621
+ * *IS_SCRIPTED_CONVERSATION**
622
+ *
623
+ * @param convoRoot
624
+ * @returns
625
+ */
626
+ static N_0xD0730C1FA40348D9(convoRoot) {
627
+ return !!inv('0xD0730C1FA40348D9', convoRoot, rai());
628
+ }
629
+ /**
630
+ * https://github.com/femga/rdr3_discoveries/blob/master/audio/music_events/music_events.lua
631
+ *
632
+ * @param eventName
633
+ * @returns
634
+ */
635
+ static triggerMusicEvent(eventName) {
636
+ return !!inv('0x706D57B0F50DA710', eventName, rai());
637
+ }
638
+ /**
639
+ * @param p0
640
+ */
641
+ static restartScriptedConversation(p0) {
642
+ inv('0x9AEB285D1818C9AC', p0);
643
+ }
644
+ /**
645
+ * @param ped
646
+ */
647
+ static N_0xC4CFCE4C656EF480(ped) {
648
+ inv('0xC4CFCE4C656EF480', ped.handle);
649
+ }
650
+ /**
651
+ * @param p0
652
+ * @param p1
653
+ */
654
+ static N_0x3A00D87B20A2A5E4(p0, p1) {
655
+ inv('0x3A00D87B20A2A5E4', p0, p1);
656
+ }
657
+ /**
658
+ * @param pedHandle
659
+ * @returns
660
+ */
661
+ static isAnimalVocalizationPlaying(pedHandle) {
662
+ return !!inv('0xC265DF9FB44A9FBD', pedHandle.handle, rai());
663
+ }
664
+ /**
665
+ * @param p0
666
+ * @returns
667
+ */
668
+ static isAnyConversationPlaying(p0) {
669
+ return inv('0xA2CAC9DEF0195E6F', p0);
670
+ }
671
+ /**
672
+ * @param name
673
+ * @param pos
674
+ */
675
+ static triggerExplosion(name, pos) {
676
+ inv('0x374F0E716BFCDE82', name, f(pos.x), f(pos.y), f(pos.z));
677
+ }
678
+ /**
679
+ * @param ropeId
680
+ * @param p1
681
+ */
682
+ static N_0x2651DDC0EA269073(ropeId, p1) {
683
+ inv('0x2651DDC0EA269073', ropeId, f(p1));
684
+ }
685
+ static stopAudioScenes() {
686
+ inv('0xBAC7FC81A75EC1A1');
687
+ }
688
+ /**
689
+ * @param audioName
690
+ * @param audioRef
691
+ * @param p2
692
+ * @param p3
693
+ * @param p4
694
+ * @param p5
695
+ */
696
+ static playSound(audioName, audioRef, p2, p3, p4, p5) {
697
+ inv('0x7FF4944CC209192D', audioName, audioRef, p2, p3, p4, p5);
698
+ }
699
+ /**
700
+ * @param scene
701
+ * @returns
702
+ */
703
+ static isAudioSceneActive(scene) {
704
+ return !!inv('0xB65B60556E2A9225', scene, rai());
705
+ }
706
+ /**
707
+ * @param context
708
+ * @param block
709
+ */
710
+ static blockSpeechContext(context, block) {
711
+ inv('0x6378A235374B852F', context, block);
712
+ }
713
+ /**
714
+ * @param p0
715
+ * @returns
716
+ */
717
+ static N_0x847748AE5D7B1071(p0) {
718
+ return !!inv('0x847748AE5D7B1071', p0, rai());
719
+ }
720
+ /**
721
+ * https://github.com/femga/rdr3_discoveries/tree/master/audio/audio_flags
722
+ *
723
+ * @param flagName
724
+ * @param toggle
725
+ */
726
+ static setAudioFlag(flagName, toggle) {
727
+ inv('0xB9EFD5C25018725A', flagName, toggle);
728
+ }
729
+ /**
730
+ * @param vehicle
731
+ * @param toggle
732
+ */
733
+ static setHornEnabled(vehicle, toggle) {
734
+ inv('0x76D683C108594D0E', vehicle.handle, toggle);
735
+ }
736
+ /**
737
+ * p1 is possibly naSpeechAudibility, naSpeechType, or naSpeechEventTypeRequestPriority
738
+ * SKIP_* - START_*
739
+ *
740
+ * @param speechEventType Refer to [enum: naSpeechEventType]
741
+ * @param p1
742
+ * @param p2
743
+ */
744
+ static N_0x0D7FD6A55FD63AEF(speechEventType, p1, p2) {
745
+ inv('0x0D7FD6A55FD63AEF', speechEventType, p1, p2);
746
+ }
747
+ /**
748
+ * @param p0
749
+ * @param p1
750
+ * @param p2
751
+ * @param p3
752
+ * @param p4
753
+ */
754
+ static N_0x06C5DF5EE444BC6B(p0, p1, p2, p3, p4) {
755
+ inv('0x06C5DF5EE444BC6B', p0, p1, p2, p3, p4);
756
+ }
757
+ /**
758
+ * @param p0
759
+ * @returns
760
+ */
761
+ static N_0x2B9C37C01BF25EDB(p0) {
762
+ return inv('0x2B9C37C01BF25EDB', p0);
763
+ }
764
+ /**
765
+ * @param p0
766
+ */
767
+ static N_0x64B956F4E761DF5C(p0) {
768
+ inv('0x64B956F4E761DF5C', p0);
769
+ }
770
+ /**
771
+ * @param p0
772
+ */
773
+ static setAudioOnlineTransitionStage(p0) {
774
+ inv('0x9B1FC259187C97C0', p0);
775
+ }
776
+ /**
777
+ * @param streamId
778
+ */
779
+ static playStreamFrontend(streamId) {
780
+ inv('0x58FCE43488F9F5F4', streamId);
781
+ }
782
+ /**
783
+ * _IS_SOUND_RUNNING(?)
784
+ *
785
+ * @param audioName
786
+ * @param audioRef
787
+ * @returns
788
+ */
789
+ static N_0x580D71DFE0088E34(audioName, audioRef) {
790
+ return !!inv('0x580D71DFE0088E34', audioName, audioRef, rai());
791
+ }
792
+ /**
793
+ * nullsub, doesn't do anything
794
+ *
795
+ * @param p0
796
+ */
797
+ static registerScriptWithAudio(p0) {
798
+ inv('0xC6ED9D5092438D91', p0);
799
+ }
800
+ /**
801
+ * @param p0
802
+ * @param p1
803
+ */
804
+ static N_0x35B8C070E0C16E2F(p0, p1) {
805
+ inv('0x35B8C070E0C16E2F', p0, p1);
806
+ }
807
+ static N_0x138ADB94F8B90616() {
808
+ inv('0x138ADB94F8B90616');
809
+ }
810
+ /**
811
+ * @param p0
812
+ * @param p1
813
+ * @param p2
814
+ */
815
+ static N_0x380A2E353AD30917(p0, p1, p2) {
816
+ inv('0x380A2E353AD30917', p0, p1, p2);
817
+ }
818
+ /**
819
+ * @param convoRoot
820
+ * @returns
821
+ */
822
+ static createNewScriptedConversation(convoRoot) {
823
+ return inv('0xD2C91A0B572AAE56', convoRoot);
824
+ }
825
+ /**
826
+ * @param p0
827
+ * @param p1
828
+ * @param p2
829
+ * @returns
830
+ */
831
+ static N_0x7678FE0455ED1145(p0, p1, p2) {
832
+ return inv('0x7678FE0455ED1145', p0, p1, p2);
833
+ }
834
+ /**
835
+ * @param entity
836
+ * @param groupName
837
+ * @param p2
838
+ */
839
+ static addEntityToAudioMixGroup(entity, groupName, p2) {
840
+ inv('0x153973AB99FE8980', entity.handle, groupName, f(p2));
841
+ }
842
+ /**
843
+ * speechEventType: https://github.com/Halen84/RDR3-Native-Flags-And-Enums/tree/main/naSpeechEventType
844
+ * SKIP_* - START_*
845
+ *
846
+ * @param speechEventType
847
+ */
848
+ static N_0x660A8F876DF1D4F8(speechEventType) {
849
+ inv('0x660A8F876DF1D4F8', speechEventType);
850
+ }
851
+ /**
852
+ * @param p0
853
+ * @param p1
854
+ */
855
+ static N_0x139A4B9DF2D26CBF(p0, p1) {
856
+ inv('0x139A4B9DF2D26CBF', p0, p1);
857
+ }
858
+ /**
859
+ * @param pos
860
+ * @param streamId
861
+ */
862
+ static playStreamFromPosition(pos, streamId) {
863
+ inv('0x21442F412E8DE56B', f(pos.x), f(pos.y), f(pos.z), streamId);
864
+ }
865
+ /**
866
+ * @param entity
867
+ * @returns
868
+ */
869
+ static getEntityAudioMixGroup(entity) {
870
+ return (inv('0x8B25A18E390F75BF', entity.handle, rai())) & 0xFFFFFFFF;
871
+ }
872
+ /**
873
+ * @param convoRoot
874
+ * @returns
875
+ */
876
+ static isScriptedConversationCreated(convoRoot) {
877
+ return inv('0xD89504D9D7D5057D', convoRoot);
878
+ }
879
+ static N_0xA2B851605748AD0E() {
880
+ inv('0xA2B851605748AD0E');
881
+ }
882
+ /**
883
+ * @param convoRoot
884
+ * @returns
885
+ */
886
+ static N_0x0CB3D1919E8D7CBA(convoRoot) {
887
+ return !!inv('0x0CB3D1919E8D7CBA', convoRoot, rai());
888
+ }
889
+ /**
890
+ * Name: ROPE_SETTINGS_DEFAULT
891
+ *
892
+ * @param ropeId
893
+ * @param name
894
+ */
895
+ static N_0xF092B6030D6FD49C(ropeId, name) {
896
+ inv('0xF092B6030D6FD49C', ropeId, name);
897
+ }
898
+ /**
899
+ * @param p0
900
+ * @param currentScriptedConvoLine
901
+ * @returns
902
+ */
903
+ static N_0x254B0241E964B450(p0, currentScriptedConvoLine) {
904
+ return createFromHandle('Ped', inv('0x254B0241E964B450', p0, currentScriptedConvoLine, rai()));
905
+ }
906
+ /**
907
+ * @param ped
908
+ * @param vocalizationName
909
+ * @param p2
910
+ */
911
+ static playAnimalVocalization(ped, vocalizationName, p2) {
912
+ inv('0xEE066C7006C49C0A', ped.handle, vocalizationName, p2);
913
+ }
914
+ /**
915
+ * @param p0
916
+ * @param p1
917
+ */
918
+ static setPedInteriorWallaDensity(p0, p1) {
919
+ inv('0x8BF907833BE275DE', f(p0), f(p1));
920
+ }
921
+ /**
922
+ * @param p0
923
+ * @param p1
924
+ */
925
+ static N_0xD47D47EFBF103FB8(p0, p1) {
926
+ inv('0xD47D47EFBF103FB8', p0, p1);
966
927
  }
967
928
  /**
968
929
  * @param p0
969
930
  * @param p1
931
+ */
932
+ static N_0x5BC885EBD75FAA7D(p0, p1) {
933
+ inv('0x5BC885EBD75FAA7D', p0, p1);
934
+ }
935
+ /**
936
+ * Valid pain IDs: 0..12 these names are not official, but here is a list of the IDs:
937
+ * 1 burning,
938
+ * 2 drowning,
939
+ * 3 coughing,
940
+ * 4 nothing,
941
+ * 5 nothing,
942
+ * 6 coughing_2,
943
+ * 7 nothing,
944
+ * 8 nothing,
945
+ * 9 hurtingSick?,
946
+ * 10 hurtingFall?,
947
+ * 11 nothing,
948
+ * 12 choking
949
+ *
950
+ * @param ped
951
+ * @param painId
970
952
  * @param p2
971
- * @returns
953
+ * @param p3
954
+ * @param isNetwork
972
955
  */
973
- static stopScriptedConversation(p0, p1, p2) {
974
- return inv('0xD79DEEFB53455EBA', p0, p1, p2, rai());
956
+ static playPain(ped, painId, p2, p3, isNetwork) {
957
+ inv('0xBC9AE166038A5CEC', ped.handle, painId, f(p2), p3, isNetwork);
975
958
  }
976
959
  /**
960
+ * *STOP_AUDIO**
961
+ *
977
962
  * @param p0
978
- * @param p1
979
963
  */
980
- static N_0xFD461D0ABA5559B1(p0, p1) {
981
- inv('0xFD461D0ABA5559B1', p0, p1);
964
+ static N_0x6AB944DF68B512D3(p0) {
965
+ inv('0x6AB944DF68B512D3', p0);
966
+ }
967
+ static N_0xDAD6CD07CAA4F382() {
968
+ inv('0xDAD6CD07CAA4F382');
982
969
  }
983
970
  /**
984
- * *IS_SCRIPTED_CONVERSATION**
971
+ * soundId maybe be incorrect name for param p2, in the decompiles is always -2
985
972
  *
986
- * @param convoRoot
973
+ * @param soundName
974
+ * @param soundsetName
975
+ * @param soundId
987
976
  * @returns
988
977
  */
989
- static N_0xD0730C1FA40348D9(convoRoot) {
990
- return !!inv('0xD0730C1FA40348D9', convoRoot, rai());
978
+ static prepareSound(soundName, soundsetName, soundId) {
979
+ return inv('0xE368E8422C860BA7', soundName, soundsetName, soundId);
991
980
  }
992
981
  /**
993
982
  * @param p0
983
+ * @param p1
994
984
  */
995
- static skipToNextScriptedConversationLine(p0) {
996
- inv('0x9663FE6B7A61EB00', p0);
985
+ static N_0x259ACC5B52A2B2D9(p0, p1) {
986
+ inv('0x259ACC5B52A2B2D9', p0, p1);
997
987
  }
998
988
  /**
999
- * @param ped
1000
- * @param p1
989
+ * @param audSpeechEvent
1001
990
  */
1002
- static stopCurrentPlayingSpeech(ped, p1) {
1003
- inv('0x79D2F0E66F81D90D', ped.handle, p1);
991
+ static N_0x1E6F9A9FE1A99F36(audSpeechEvent) {
992
+ inv('0x1E6F9A9FE1A99F36', audSpeechEvent);
1004
993
  }
1005
- static clearConversationHistory() {
1006
- inv('0x33D51F801CB16E4F');
994
+ /**
995
+ * @param p0
996
+ * @param p1
997
+ * @param p2
998
+ * @param p3
999
+ */
1000
+ static N_0x017492B2201E3428(p0, p1, p2, p3) {
1001
+ inv('0x017492B2201E3428', p0, p1, p2, p3);
1007
1002
  }
1008
1003
  /**
1009
- * @param eventName
1010
1004
  * @returns
1011
1005
  */
1012
- static prepareMusicEvent(eventName) {
1013
- return !!inv('0x1E5185B72EF5158A', eventName, rai());
1006
+ static N_0xE600F61F54A444A6() {
1007
+ return inv('0xE600F61F54A444A6');
1014
1008
  }
1015
1009
  /**
1016
- * Starts Audio Loop
1017
- * _PLAY_SOUND_FROM_ENTITY* - _PLAY_SOUND_FRONTEND*
1010
+ * @param scene
1011
+ * @param variable
1012
+ * @param value
1013
+ */
1014
+ static setAudioSceneVariable(scene, variable, value) {
1015
+ inv('0xEF21A9EF089A2668', scene, variable, f(value));
1016
+ }
1017
+ /**
1018
+ * Old name: _PLAY_AMBIENT_SPEECH_AT_COORDS
1018
1019
  *
1019
- * @param soundId
1020
- * @param soundName
1021
1020
  * @param pos
1022
- * @param soundsetName
1023
- * @param p6
1024
- * @param p7
1025
- * @param p8
1021
+ * @returns params
1026
1022
  */
1027
- static playSoundFromPositionWithId(soundId, soundName, pos, soundsetName, p6, p7, p8) {
1028
- inv('0xDCF5BA95BBF0FABA', soundId, soundName, f(pos.x), f(pos.y), f(pos.z), soundsetName, p6, p7, p8);
1023
+ static playAmbientSpeechFromPositionNative(pos) {
1024
+ const result = inv('0xED640017ED337E45', f(pos.x), f(pos.y), f(pos.z), pvi());
1025
+ return [result[0], result[1]];
1029
1026
  }
1030
1027
  /**
1031
1028
  * @param p0
1032
1029
  * @param p1
1033
1030
  * @param p2
1031
+ * @param p3
1034
1032
  */
1035
- static N_0x8D29FDF565DED9AE(p0, p1, p2) {
1036
- inv('0x8D29FDF565DED9AE', p0, p1, p2);
1037
- }
1038
- /**
1039
- * @param eventName
1040
- * @returns
1041
- */
1042
- static triggerMusicEventWithHash(eventName) {
1043
- return inv('0x05D6195FB4D428F4', _h(eventName));
1033
+ static N_0x5E3CCF03995388B5(p0, p1, p2, p3) {
1034
+ inv('0x5E3CCF03995388B5', p0, p1, p2, p3);
1044
1035
  }
1045
1036
  /**
1046
- * @param soundId
1037
+ * @param entity
1047
1038
  * @returns
1048
1039
  */
1049
- static hasSoundIdFinished(soundId) {
1050
- return inv('0x84848E1C0FC67DBB', soundId);
1051
- }
1052
- /**
1053
- * @param scene
1054
- */
1055
- static stopAudioScene(scene) {
1056
- inv('0xDFE8422B3B94E688', scene);
1040
+ static N_0x886657C5B3D8EDE3(entity) {
1041
+ return inv('0x886657C5B3D8EDE3', entity.handle);
1057
1042
  }
1058
1043
  /**
1059
1044
  * @param p0
1060
- * @param p1
1061
1045
  */
1062
- static N_0xA6847BBA4FCDD13F(p0, p1) {
1063
- inv('0xA6847BBA4FCDD13F', p0, p1);
1046
+ static N_0x6B7A88A61B41E589(p0) {
1047
+ inv('0x6B7A88A61B41E589', p0);
1064
1048
  }
1065
1049
  /**
1066
1050
  * @param p0
1067
- * @returns
1051
+ * @param p1
1052
+ * @param p2
1068
1053
  */
1069
- static isScriptedSpeechPlaying(p0) {
1070
- return !!inv('0xCC9AA18DCC7084F4', p0, rai());
1054
+ static N_0x821C32C728B24477(p0, p1, p2) {
1055
+ inv('0x821C32C728B24477', p0, p1, p2);
1071
1056
  }
1072
1057
  /**
1073
1058
  * @param ped
1074
1059
  * @param p1
1075
- * @param hash
1060
+ * @returns
1076
1061
  */
1077
- static useFootstepScriptSweeteners(ped, p1, hash) {
1078
- inv('0xBF4DC1784BE94DFA', ped.handle, p1, _h(hash));
1062
+ static isPedInAnyConversation(ped, p1) {
1063
+ return inv('0x54B187F111D9C6F8', ped.handle, p1);
1079
1064
  }
1080
1065
  /**
1081
- * whistleConfig: Ped.WhistlePitch (0.0 - 1.0), Ped.WhistleClarity (0.0 - 1.0), Ped.WhistleShape (0.0 - 10.0)
1066
+ * Hashes: VOFX_PLAYER_MALE01, VOFX_PLAYER_MALE02, VOFX_PLAYER_MALE03, VOFX_PLAYER_FEMALE01, VOFX_PLAYER_FEMALE02, VOFX_PLAYER_FEMALE03
1082
1067
  *
1083
1068
  * @param ped
1084
- * @param whistleConfig
1085
- * @param value
1069
+ * @param voice
1086
1070
  */
1087
- static setWhistleConfigForPed(ped, whistleConfig, value) {
1088
- inv('0x9963681A8BC69BF3', ped.handle, whistleConfig, f(value));
1071
+ static setVofxPedVoice(ped, voice) {
1072
+ inv('0x2703EFB583F0949A', ped.handle, _h(voice));
1089
1073
  }
1090
1074
  /**
1091
1075
  * @param ped
1092
- * @param p1
1093
- * @param p2
1076
+ * @returns
1094
1077
  */
1095
- static playAnimalVocalizationPheromoneVialResponse(ped, p1, p2) {
1096
- inv('0x0E53530D9B2DB01D', ped.handle, _h(p1), p2);
1078
+ static isAnySpeechPlaying(ped) {
1079
+ return !!inv('0x729072355FA39EC9', ped.handle, rai());
1097
1080
  }
1098
1081
  /**
1099
- * Only used in R* SP Scripts
1100
- * Old Name: _UPDATE_SOUND_POSITION
1101
- *
1102
- * @param soundId
1103
- * @param pos
1082
+ * @param convoRoot
1104
1083
  */
1105
- static updateSoundCoord(soundId, pos) {
1106
- inv('0x0286617C8FC50A53', soundId, f(pos.x), f(pos.y), f(pos.z));
1084
+ static clearConversationHistoryForScriptedConversation(convoRoot) {
1085
+ inv('0xEF51242E35242B47', convoRoot);
1107
1086
  }
1108
1087
  /**
1109
- * @param ambientZone
1088
+ * @param p0
1110
1089
  * @param p1
1111
- * @param p2
1112
1090
  */
1113
- static setAmbientZoneStatePersistent(ambientZone, p1, p2) {
1114
- inv('0x1D6650420CEC9D3B', ambientZone, p1, p2);
1091
+ static N_0x018ABE833CA64D2A(p0, p1) {
1092
+ inv('0x018ABE833CA64D2A', p0, p1);
1115
1093
  }
1116
1094
  /**
1117
- * @param ped
1095
+ * @param zoneName
1118
1096
  * @param p1
1119
1097
  */
1120
- static stopCurrentPlayingAmbientSpeech(ped, p1) {
1121
- inv('0xB8BEC0CA6F0EDB0F', ped.handle, p1);
1098
+ static clearAmbientZoneState(zoneName, p1) {
1099
+ inv('0x218DD44AAAC964FF', zoneName, p1);
1122
1100
  }
1123
1101
  /**
1124
1102
  * @param p0
1125
- * @param ped
1126
- * @param p2
1127
- * @returns
1103
+ * @param p1
1128
1104
  */
1129
- static isPedInCurrentConversation(p0, ped, p2) {
1130
- return !!inv('0x049E937F18F4020C', p0, ped.handle, p2, rai());
1105
+ static N_0x3E93DDDCBB6111E4(p0, p1) {
1106
+ inv('0x3E93DDDCBB6111E4', p0, f(p1));
1131
1107
  }
1132
1108
  /**
1133
1109
  * @param p0
1134
1110
  * @returns
1135
1111
  */
1136
- static isScriptedConversionOngoing(p0) {
1137
- return inv('0xF01C570E0A0A1E67', p0);
1112
+ static N_0x5A13586A9447931F(p0) {
1113
+ return !!inv('0x5A13586A9447931F', p0, rai());
1138
1114
  }
1139
1115
  /**
1140
- * @param soundsetName
1116
+ * @param p0
1117
+ * @param p1
1141
1118
  */
1142
- static releaseSoundset(soundsetName) {
1143
- inv('0x531A78D6BF27014B', soundsetName);
1119
+ static N_0xBC07CA8FD710E7FD(p0, p1) {
1120
+ inv('0xBC07CA8FD710E7FD', p0, p1);
1144
1121
  }
1145
1122
  /**
1146
- * @returns
1123
+ * @param p0
1124
+ * @param p1
1147
1125
  */
1148
- static getSoundId() {
1149
- return inv('0x430386FE9BF80B45', rai());
1126
+ static N_0x078F77FD1A43EAB3(p0, p1) {
1127
+ inv('0x078F77FD1A43EAB3', p0, p1);
1150
1128
  }
1151
1129
  /**
1152
- * @param listeningToPed
1153
- * @param ped
1154
- * @param listenerName
1130
+ * @param p0
1131
+ * @param p1
1155
1132
  */
1156
- static N_0xA2323A2EAE32A290(listeningToPed, ped, listenerName) {
1157
- inv('0xA2323A2EAE32A290', listeningToPed.handle, ped.handle, listenerName);
1133
+ static N_0x341CDD17EFC2472E(p0, p1) {
1134
+ inv('0x341CDD17EFC2472E', p0, p1);
1158
1135
  }
1159
1136
  /**
1160
- * @param p0
1161
- * @returns
1137
+ * @param ambientZone
1138
+ * @param p1
1139
+ * @param p2
1162
1140
  */
1163
- static N_0xF0EE69F500952FA5(p0) {
1164
- return inv('0xF0EE69F500952FA5', p0);
1141
+ static setAmbientZoneListState(ambientZone, p1, p2) {
1142
+ inv('0x9748FA4DE50CCE3E', ambientZone, p1, p2);
1165
1143
  }
1166
1144
  /**
1167
- * Old name: AUDIO_IS_SCRIPTED_MUSIC_PLAYING
1168
- *
1145
+ * @param streamId
1169
1146
  * @returns
1170
1147
  */
1171
- static isMusicPlaying() {
1172
- return !!inv('0x845FFC3A4FEEFA3E', rai());
1148
+ static isStreamPlaying(streamId) {
1149
+ return !!inv('0xD11FA52EB849D978', streamId, rai());
1173
1150
  }
1174
1151
  /**
1175
- * Used in Script Function NET_CAMP_CLIENT_UPDATE_PED_ROLE_STATE_SHOP: hash exists! Playing hash
1176
- *
1177
- * @param ped
1152
+ * @param convoRoot
1178
1153
  * @param p1
1154
+ * @param p2
1155
+ * @param clone
1179
1156
  */
1180
- static N_0xB93A769B8B726950(ped, p1) {
1181
- inv('0xB93A769B8B726950', ped.handle, _h(p1));
1182
- }
1183
- /**
1184
- * @param variableName
1185
- * @param variableValue
1186
- * @param audioName
1187
- * @param audioRef
1188
- */
1189
- static setVariableOnSoundWithName(variableName, variableValue, audioName, audioRef) {
1190
- inv('0x9821B68CD3E05F2B', variableName, f(variableValue), audioName, audioRef);
1157
+ static preloadScriptConversation(convoRoot, p1, p2, clone) {
1158
+ inv('0x3B3CAD6166916D87', convoRoot, p1, p2, clone);
1191
1159
  }
1192
1160
  /**
1193
- * @param p0
1194
- * @param p1
1161
+ * Creates stream and returns streamId handle to be used with PLAY_STREAM_* natives
1162
+ * https://github.com/femga/rdr3_discoveries/tree/master/audio/create_stream
1163
+ *
1164
+ * @param streamName
1165
+ * @param soundSet
1166
+ * @returns
1195
1167
  */
1196
- static N_0xD733528B6C35647A(p0, p1) {
1197
- inv('0xD733528B6C35647A', p0, p1);
1168
+ static getLoadedStreamIdFromCreation(streamName, soundSet) {
1169
+ return inv('0x0556C784FA056628', streamName, soundSet, rai());
1198
1170
  }
1199
1171
  /**
1200
- * @param ambientZone
1172
+ * @param vehicle
1201
1173
  * @param p1
1202
1174
  */
1203
- static clearAmbientZoneListState(ambientZone, p1) {
1204
- inv('0x120C48C614909FA4', ambientZone, p1);
1175
+ static setAudioVehiclePriority(vehicle, p1) {
1176
+ inv('0xE5564483E407F914', vehicle.handle, p1);
1205
1177
  }
1206
1178
  /**
1207
- * @param p0
1208
- * @param p1
1179
+ * @param soundName
1180
+ * @param soundsetName
1209
1181
  */
1210
- static N_0xE891504B2F0E2DBA(p0, p1) {
1211
- inv('0xE891504B2F0E2DBA', p0, p1);
1182
+ static releaseShardSounds(soundName, soundsetName) {
1183
+ inv('0x9D746964E0CF2C5F', soundName, soundsetName);
1212
1184
  }
1213
1185
  /**
1186
+ * Gets the hash for the last played speech line.
1187
+ *
1214
1188
  * @param ped
1215
- * @param p1
1216
1189
  * @returns
1217
1190
  */
1218
- static N_0xDF947FE0D551684E(ped, p1) {
1219
- return !!inv('0xDF947FE0D551684E', ped.handle, p1, rai());
1191
+ static getLastPlayedSpeechForPed(ped) {
1192
+ return inv('0x6BFFB7C276866996', ped.handle);
1193
+ }
1194
+ static N_0xE7E6CB8B713ED190() {
1195
+ inv('0xE7E6CB8B713ED190');
1220
1196
  }
1221
1197
  /**
1222
- * @param entity
1223
- * @param p1
1198
+ * @param p0
1199
+ * @returns
1224
1200
  */
1225
- static N_0xE9694B2D6CB87B06(entity, p1) {
1226
- inv('0xE9694B2D6CB87B06', entity.handle, p1);
1201
+ static N_0x44A5EEF54F62E823(p0) {
1202
+ return inv('0x44A5EEF54F62E823', p0);
1227
1203
  }
1228
1204
  /**
1229
- * @param audioBank
1205
+ * @param ped
1206
+ * @param streamId
1230
1207
  */
1231
- static releaseNamedScriptAudioBank(audioBank) {
1232
- inv('0x77ED170667F50170', audioBank);
1208
+ static playStreamFromPed(ped, streamId) {
1209
+ inv('0x89049DD63C08B5D1', ped.handle, streamId);
1233
1210
  }
1234
1211
  /**
1235
1212
  * Only used in R* SP Script cv_mus_shared
@@ -1367,6 +1344,120 @@ export class Audio {
1367
1344
  static N_0xC68C02DE259C927C(p0) {
1368
1345
  return inv('0xC68C02DE259C927C', p0);
1369
1346
  }
1347
+ /**
1348
+ * @param p0
1349
+ * @returns
1350
+ */
1351
+ static N_0xD05A460328560477(p0) {
1352
+ return inv('0xD05A460328560477', p0);
1353
+ }
1354
+ /**
1355
+ * Checks if the ped can play the speech or has the speech file, last parameter is usually false.
1356
+ *
1357
+ * @param ped
1358
+ * @param speechName
1359
+ * @param unk
1360
+ * @returns
1361
+ */
1362
+ static doesContextExistForThisPed(ped, speechName, unk) {
1363
+ return !!inv('0x49B99BF3FDA89A7A', ped.handle, speechName, unk, rai());
1364
+ }
1365
+ /**
1366
+ * @returns
1367
+ */
1368
+ static N_0x2B101AD9F651243A() {
1369
+ return inv('0x2B101AD9F651243A');
1370
+ }
1371
+ /**
1372
+ * @param p0
1373
+ * @returns
1374
+ */
1375
+ static N_0x131EC9247E7A2903(p0) {
1376
+ return inv('0x131EC9247E7A2903', p0);
1377
+ }
1378
+ /**
1379
+ * @param ped
1380
+ * @param name
1381
+ */
1382
+ static setAmbientVoiceName(ped, name) {
1383
+ inv('0x6C8065A3B780185B', ped.handle, name);
1384
+ }
1385
+ /**
1386
+ * @param play
1387
+ */
1388
+ static playEndCreditsMusic(play) {
1389
+ inv('0xCD536C4D33DCC900', play);
1390
+ }
1391
+ /**
1392
+ * @param eventName
1393
+ * @returns
1394
+ */
1395
+ static cancelMusicEvent(eventName) {
1396
+ return !!inv('0x5B17A90291133DA5', eventName, rai());
1397
+ }
1398
+ /**
1399
+ * @param ped
1400
+ * @returns
1401
+ */
1402
+ static isAmbientSpeechDisabled(ped) {
1403
+ return !!inv('0x932C2D096A2C3FFF', ped.handle, rai());
1404
+ }
1405
+ /**
1406
+ * Not implemented.
1407
+ *
1408
+ * @param animal
1409
+ * @param mood
1410
+ */
1411
+ static setAnimalMood(animal, mood) {
1412
+ inv('0xCC97B29285B1DC3B', animal.handle, mood);
1413
+ }
1414
+ /**
1415
+ * @param convoRoot
1416
+ * @param p1
1417
+ * @param p2
1418
+ * @param clone
1419
+ */
1420
+ static startScriptConversation(convoRoot, p1, p2, clone) {
1421
+ inv('0x6B17C62C9635D2DC', convoRoot, p1, p2, clone);
1422
+ }
1423
+ /**
1424
+ * @param p0
1425
+ */
1426
+ static N_0xEB4D592620B8C209(p0) {
1427
+ inv('0xEB4D592620B8C209', p0);
1428
+ }
1429
+ static releaseScriptAudioBank() {
1430
+ inv('0x7A2D8AD0A9EB9C3F');
1431
+ }
1432
+ static N_0x4BE3EC91C01F0FE8() {
1433
+ inv('0x4BE3EC91C01F0FE8');
1434
+ }
1435
+ /**
1436
+ * @param zoneName
1437
+ * @param isEnabled
1438
+ * @param p2
1439
+ */
1440
+ static setAmbientZoneState(zoneName, isEnabled, p2) {
1441
+ inv('0xBDA07E5950085E46', zoneName, isEnabled, p2);
1442
+ }
1443
+ /**
1444
+ * @param audioName
1445
+ * @param entity
1446
+ * @param audioRef
1447
+ * @param isNetwork
1448
+ * @param p4
1449
+ * @param p5
1450
+ */
1451
+ static playSoundFromEntity(audioName, entity, audioRef, isNetwork, p4, p5) {
1452
+ inv('0x6FB1DA3CA9DA7D90', audioName, entity.handle, audioRef, isNetwork, p4, p5);
1453
+ }
1454
+ /**
1455
+ * @param ped
1456
+ * @returns
1457
+ */
1458
+ static isAmbientSpeechPlaying(ped) {
1459
+ return !!inv('0x9072C8B49907BFAD', ped.handle, rai());
1460
+ }
1370
1461
  /**
1371
1462
  * @param ambientZone
1372
1463
  * @param pos
@@ -1601,95 +1692,4 @@ export class Audio {
1601
1692
  static N_0xF232C2C546AC16D0(p0) {
1602
1693
  inv('0xF232C2C546AC16D0', p0);
1603
1694
  }
1604
- /**
1605
- * https://github.com/femga/rdr3_discoveries/blob/master/audio/music_events/music_events.lua
1606
- *
1607
- * @param eventName
1608
- * @returns
1609
- */
1610
- static triggerMusicEvent(eventName) {
1611
- return !!inv('0x706D57B0F50DA710', eventName, rai());
1612
- }
1613
- /**
1614
- * @param p0
1615
- */
1616
- static restartScriptedConversation(p0) {
1617
- inv('0x9AEB285D1818C9AC', p0);
1618
- }
1619
- /**
1620
- * @param ped
1621
- */
1622
- static N_0xC4CFCE4C656EF480(ped) {
1623
- inv('0xC4CFCE4C656EF480', ped.handle);
1624
- }
1625
- /**
1626
- * @param p0
1627
- * @param p1
1628
- */
1629
- static N_0x3A00D87B20A2A5E4(p0, p1) {
1630
- inv('0x3A00D87B20A2A5E4', p0, p1);
1631
- }
1632
- /**
1633
- * @param pedHandle
1634
- * @returns
1635
- */
1636
- static isAnimalVocalizationPlaying(pedHandle) {
1637
- return !!inv('0xC265DF9FB44A9FBD', pedHandle.handle, rai());
1638
- }
1639
- /**
1640
- * @param p0
1641
- * @returns
1642
- */
1643
- static isAnyConversationPlaying(p0) {
1644
- return inv('0xA2CAC9DEF0195E6F', p0);
1645
- }
1646
- /**
1647
- * @param name
1648
- * @param pos
1649
- */
1650
- static triggerExplosion(name, pos) {
1651
- inv('0x374F0E716BFCDE82', name, f(pos.x), f(pos.y), f(pos.z));
1652
- }
1653
- /**
1654
- * @param ropeId
1655
- * @param p1
1656
- */
1657
- static N_0x2651DDC0EA269073(ropeId, p1) {
1658
- inv('0x2651DDC0EA269073', ropeId, f(p1));
1659
- }
1660
- static stopAudioScenes() {
1661
- inv('0xBAC7FC81A75EC1A1');
1662
- }
1663
- /**
1664
- * @param audioName
1665
- * @param audioRef
1666
- * @param p2
1667
- * @param p3
1668
- * @param p4
1669
- * @param p5
1670
- */
1671
- static playSound(audioName, audioRef, p2, p3, p4, p5) {
1672
- inv('0x7FF4944CC209192D', audioName, audioRef, p2, p3, p4, p5);
1673
- }
1674
- /**
1675
- * @param scene
1676
- * @returns
1677
- */
1678
- static isAudioSceneActive(scene) {
1679
- return !!inv('0xB65B60556E2A9225', scene, rai());
1680
- }
1681
- /**
1682
- * @param context
1683
- * @param block
1684
- */
1685
- static blockSpeechContext(context, block) {
1686
- inv('0x6378A235374B852F', context, block);
1687
- }
1688
- /**
1689
- * @param p0
1690
- * @returns
1691
- */
1692
- static N_0x847748AE5D7B1071(p0) {
1693
- return !!inv('0x847748AE5D7B1071', p0, rai());
1694
- }
1695
1695
  }