@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
@@ -14,124 +14,168 @@ import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f } from '../ty
14
14
 
15
15
  export class Graphics {
16
16
  /**
17
- * Health Core Effect Filter Potency: p1 = 1
18
- * Stamina Core Effect Filter Potency: p1 = 2
19
- * Multiple Core Effect Filter Potency: p1 = 3
17
+ * When this is set to ON, shadows only draw as you get nearer. When OFF, they draw from a further distance.
20
18
  *
21
- * @param effectName
22
- * @param p1
23
- * @param potency
19
+ * @param toggle
24
20
  */
25
- static animpostfxSetPotency(effectName: string | null, p1: number, potency: number): void {
26
- inv<void>('0xF972F0AB16DC5260', effectName, p1, f(potency));
21
+ static cascadeShadowsEnableEntityTracker(toggle: boolean): void {
22
+ inv<void>('0x8FBFD2AEB196B369', toggle);
27
23
  }
28
24
 
29
25
  /**
30
- * @returns
26
+ * Only used in R* Script nb_stalking_hunter
27
+ *
28
+ * @param p0
31
29
  */
32
- static pedshotIsAvailable(): any {
33
- return inv<number>('0xAF6E67D073D2DCE2');
30
+ static N_0xD1472AFF30C103D6(p0: number): void {
31
+ inv<void>('0xD1472AFF30C103D6', f(p0));
34
32
  }
35
33
 
36
34
  /**
37
- * @param p0
35
+ * @param worldX
36
+ * @param worldY
37
+ * @param worldZ
38
+ * @returns screenX; screenY
38
39
  */
39
- static N_0xD9BC98B55BCFAA9B(p0: any): void {
40
- inv<void>('0xD9BC98B55BCFAA9B', p0);
40
+ static getScreenCoordFromWorldCoord(worldX: number, worldY: number, worldZ: number): [boolean, number, number] {
41
+ const result = inv<[boolean, number, number]>('0xCB50D7AFCC8B0EC6', f(worldX), f(worldY), f(worldZ), pvf(), pvf(), rai());
42
+ return [!!result[0], result[1], result[2]];
41
43
  }
42
44
 
43
45
  /**
46
+ * @param point
44
47
  * @param pos
45
- * @param xScale
46
- * @param yScale
47
- * @param rotation
48
+ * @param radius
49
+ */
50
+ static setTrackedPointInfo(point: number, pos: Vector3, radius: number): void {
51
+ inv<void>('0xF6FDA3D4404D4F2C', point, f(pos.x), f(pos.y), f(pos.z), f(radius));
52
+ }
53
+
54
+ /**
55
+ * Draws a 2D sprite on the screen. Parameters:
56
+ * textureDict - Name of texture dictionary to load texture from textureName - Name of texture to load from texture dictionary screenX/Y - Screen offset (0.5 = center)
57
+ * scaleX/Y - Texture scaling. Negative values can be used to flip the texture on that axis. (0.5 = half) heading - Texture rotation in degrees (default = 0.0) positive is clockwise, measured in degrees red,green,blue - Sprite color (default = 255/255/255) alpha - opacity level https://github.com/femga/rdr3_discoveries/tree/master/useful_info_from_rpfs/textures
58
+ *
59
+ * @param textureDict
60
+ * @param textureName
61
+ * @param screenX
62
+ * @param screenY
63
+ * @param width
64
+ * @param height
65
+ * @param heading
48
66
  * @param color
49
67
  * @param alpha
68
+ * @param p11
50
69
  */
51
- static drawTvChannel(pos: Vector2, xScale: number, yScale: number, rotation: number, color: Color, alpha: number): void {
52
- inv<void>('0xC0A145540254A840', f(pos.x), f(pos.y), f(xScale), f(yScale), f(rotation), color.r, color.g, color.b, color.a, alpha);
70
+ static drawSprite(textureDict: string | null, textureName: string | null, screenX: number, screenY: number, width: number, height: number, heading: number, color: Color, alpha: number, p11: boolean): void {
71
+ inv<void>('0xC9884ECADE94CB34', textureDict, textureName, f(screenX), f(screenY), f(width), f(height), f(heading), color.r, color.g, color.b, color.a, alpha, p11);
53
72
  }
54
73
 
55
74
  /**
56
- * @param handle
75
+ * @returns
57
76
  */
58
- static removeGrassCullSphere(handle: number): void {
59
- inv<void>('0xAE7BF7CA9E4BA48D', handle);
77
+ static getCurrentNumberOfLocalPhotos(): number {
78
+ return inv<number>('0x78C56B8A7B1D000C', rai());
60
79
  }
61
80
 
62
81
  /**
63
- * @param slots
64
- * @returns
82
+ * @param ptfxHandle
83
+ * @param p1
65
84
  */
66
- static createSwatchTextureDict(slots: number): any {
67
- return inv<number>('0x3D084D5568FB4028', slots);
85
+ static removeParticleFx(ptfxHandle: number, p1: boolean): void {
86
+ inv<void>('0x459598F579C98929', ptfxHandle, p1);
68
87
  }
69
88
 
70
89
  /**
71
- * _GET_C* - _GET_E*
90
+ * Removes all decals in range from a position, it includes the bullet holes, blood pools, petrol...
72
91
  *
73
- * @returns
92
+ * @param pos
93
+ * @param range
74
94
  */
75
- static getModifiedVisibilityDistance(): number {
76
- return inv<number>('0x25CA89B2A39DCC69', raf());
95
+ static removeDecalsInRange(pos: Vector3, range: number): void {
96
+ inv<void>('0x86DE59FA02902B40', f(pos.x), f(pos.y), f(pos.z), f(range));
77
97
  }
78
98
 
79
99
  /**
80
- * nullsub, doesn't do anything
81
- *
82
100
  * @param p0
83
101
  */
84
- static N_0x94B261F1F35293E1(p0: any): void {
85
- inv<void>('0x94B261F1F35293E1', p0);
102
+ static setPhotoOverlayEffectStat(p0: number): void {
103
+ inv<void>('0x8B3296278328B5EB', p0);
86
104
  }
87
105
 
88
106
  /**
89
- * Probably changes tvs from being a 3d audio to being "global" audio
90
- *
91
- * @param toggle
107
+ * @param ptfxHandle
108
+ * @param r
109
+ * @param g
110
+ * @param b
111
+ * @param p4
92
112
  */
93
- static setTvAudioFrontend(toggle: boolean): void {
94
- inv<void>('0x64437C98FCC5F291', toggle);
113
+ static setParticleFxLoopedColour(ptfxHandle: number, r: number, g: number, b: number, p4: boolean): void {
114
+ inv<void>('0x239879FC61C610CC', ptfxHandle, f(r), f(g), f(b), p4);
95
115
  }
96
116
 
97
117
  /**
98
- * @returns
118
+ * @param effectNameHash
99
119
  */
100
- static getTimecycleTransitionModifierIndex(): number {
101
- return inv<number>('0x2DA67BA3C8A6755D', rai());
120
+ static animpostfxStopStackhashPostfx(effectNameHash: string | number): void {
121
+ inv<void>('0xEDA5CBECF56E1386', _h(effectNameHash));
122
+ }
123
+
124
+ /**
125
+ * @param value
126
+ */
127
+ static changePhotoModeContrast(value: number): void {
128
+ inv<void>('0x62B9F9A1272AED80', f(value));
102
129
  }
103
130
 
104
131
  /**
105
132
  * @param ptfxHandle
106
- * @param propertyName
107
- * @param amount
108
- * @param noNetwork
133
+ * @param alpha
109
134
  */
110
- static setParticleFxLoopedEvolution(ptfxHandle: number, propertyName: string | null, amount: number, noNetwork: boolean): void {
111
- inv<void>('0x3674F389B0FACD80', ptfxHandle, propertyName, f(amount), noNetwork);
135
+ static setParticleFxLoopedAlpha(ptfxHandle: number, alpha: number): void {
136
+ inv<void>('0x88786E76234F7054', ptfxHandle, f(alpha));
112
137
  }
113
138
 
114
139
  /**
115
- * @param effectName
140
+ * @param p0
141
+ * @param p1
142
+ * @param p2
143
+ * @param p3
116
144
  * @returns
117
145
  */
118
- static animpostfxHasLoaded(effectName: string | null): any {
119
- return inv<number>('0xBF2DD155B2ADCD0A', effectName);
146
+ static N_0xA15CCAB8AD038291(p0: any, p1: any, p2: any, p3: any): any {
147
+ return inv<number>('0xA15CCAB8AD038291', p0, p1, p2, p3);
120
148
  }
121
149
 
122
150
  /**
123
- * @param decal
151
+ * @param entity
152
+ */
153
+ static removeEntityFromEntityMask(entity: Entity): void {
154
+ inv<void>('0x56A786E87FF53478', entity.handle);
155
+ }
156
+
157
+ /**
158
+ * @param p0
159
+ * @param p1
160
+ * @param p2
161
+ */
162
+ static setParticleFxNonLoopedEmitterScale(p0: number, p1: number, p2: number): void {
163
+ inv<void>('0x56C392C2BD78B024', f(p0), f(p1), f(p2));
164
+ }
165
+
166
+ /**
167
+ * @param effectNameHash
124
168
  * @returns
125
169
  */
126
- static isDecalAlive(decal: number): boolean {
127
- return !!inv<boolean>('0x3E4B4E5CF5D3EEB5', decal, rai());
170
+ static animpostfxIsStackhashPlaying(effectNameHash: string | number): any {
171
+ return inv<number>('0xEEF83A759AE06A27', _h(effectNameHash));
128
172
  }
129
173
 
130
174
  /**
131
175
  * @param p0
132
176
  */
133
- static N_0x453D16D41FC51D3E(p0: boolean): void {
134
- inv<void>('0x453D16D41FC51D3E', p0);
177
+ static N_0x503941F65DBA24EC(p0: any): void {
178
+ inv<void>('0x503941F65DBA24EC', p0);
135
179
  }
136
180
 
137
181
  /**
@@ -142,360 +186,741 @@ export class Graphics {
142
186
  * @param p4
143
187
  * @param p5
144
188
  * @param p6
145
- * @returns
146
189
  */
147
- static N_0xE63D68F455CA0B47(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any): any {
148
- return inv<number>('0xE63D68F455CA0B47', p0, p1, p2, p3, p4, p5, p6);
190
+ static N_0x48FE0DB54045B975(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any): void {
191
+ inv<void>('0x48FE0DB54045B975', p0, p1, p2, p3, p4, p5, p6);
192
+ }
193
+
194
+ static cascadeShadowsClearShadowSampleType(): void {
195
+ inv<void>('0xF7C29D7C12C36F03');
149
196
  }
150
197
 
151
198
  /**
152
- * @param pos
153
- * @param colorR
154
- * @param colorG
155
- * @param colorB
156
- * @param range
157
- * @param intensity
199
+ * Draws a rectangle on the screen. -x: The relative X point of the center of the rectangle. (0.0-1.0, 0.0 is the left edge of the screen, 1.0 is the right edge of the screen) -y: The relative Y point of the center of the rectangle. (0.0-1.0, 0.0 is the top edge of the screen, 1.0 is the bottom edge of the screen) -width: The relative width of the rectangle. (0.0-1.0, 1.0 means the whole screen width) -height: The relative height of the rectangle. (0.0-1.0, 1.0 means the whole screen height) -R: Red part of the color. (0-255) -G: Green part of the color. (0-255) -B: Blue part of the color. (0-255) -A: Alpha part of the color. (0-255, 0 means totally transparent, 255 means totally opaque)
200
+ *
201
+ * @param x
202
+ * @param y
203
+ * @param width
204
+ * @param height
205
+ * @param color
206
+ * @param alpha
207
+ * @param p8
208
+ * @param p9
158
209
  */
159
- static drawLightWithRange(pos: Vector3, colorR: number, colorG: number, colorB: number, range: number, intensity: number): void {
160
- inv<void>('0xD2D9E04C0DF927F4', f(pos.x), f(pos.y), f(pos.z), colorR, colorG, colorB, f(range), f(intensity));
210
+ static drawRect(x: number, y: number, width: number, height: number, color: Color, alpha: number, p8: boolean, p9: boolean): void {
211
+ inv<void>('0x405224591DF02025', f(x), f(y), f(width), f(height), color.r, color.g, color.b, color.a, alpha, p8, p9);
161
212
  }
162
213
 
163
214
  /**
164
- * Sets the draw order for script draw commands.
165
- *
166
- * @param drawOrder
215
+ * @param tvChannel
216
+ * @param playlistName
217
+ * @param restart
167
218
  */
168
- static setScriptGfxDrawOrder(drawOrder: number): void {
169
- inv<void>('0xCFCC78391C8B3814', drawOrder);
219
+ static setTvChannelPlaylist(tvChannel: number, playlistName: string | null, restart: boolean): void {
220
+ inv<void>('0xDEC6B25F5DC8925B', tvChannel, playlistName, restart);
170
221
  }
171
222
 
172
223
  /**
173
- * @param p0
224
+ * @param checkpoint
174
225
  */
175
- static enableStaticVegModifier(p0: string | number): void {
176
- inv<void>('0xDFEA23EC90113657', _h(p0));
226
+ static deleteCheckpoint(checkpoint: number): void {
227
+ inv<void>('0x0DED5B0C8EBAAE12', checkpoint);
177
228
  }
178
229
 
179
230
  /**
180
- * @returns
231
+ * *DISABLE**
232
+ *
233
+ * @param p0
181
234
  */
182
- static getTvChannel(): number {
183
- return inv<number>('0xF90FBFD68F3C59AE', rai());
235
+ static N_0xFB680A9B33D0EDBE(p0: boolean): void {
236
+ inv<void>('0xFB680A9B33D0EDBE', p0);
184
237
  }
185
238
 
186
- static N_0x9D1B0B5066205692(): void {
187
- inv<void>('0x9D1B0B5066205692');
239
+ /**
240
+ * @returns
241
+ */
242
+ static N_0xC28F62AC9774FC1B(): any {
243
+ return inv<number>('0xC28F62AC9774FC1B');
188
244
  }
189
245
 
190
246
  /**
191
- * @param alpha
247
+ * @param p1
248
+ * @param p2
249
+ * @param p3
250
+ * @returns p0
192
251
  */
193
- static setParticleFxNonLoopedAlpha(alpha: number): void {
194
- inv<void>('0xE8A35938A7026CEA', f(alpha));
252
+ static loadMissionCreatorPhoto(p1: any, p2: any, p3: any): [boolean, number] {
253
+ const result = inv<[boolean, number]>('0x84F0BA7462FF8D58', pvi(), p1, p2, p3, rai());
254
+ return [!!result[0], result[1]];
195
255
  }
196
256
 
197
257
  /**
198
- * @param point
258
+ * @param entity
259
+ * @returns layer0; layer1; layer2; layer3
199
260
  */
200
- static destroyTrackedPoint(point: number): void {
201
- inv<void>('0x37A59922109F8F1C', point);
261
+ static getEntityMaskLayers(entity: Entity): [boolean, number, number, number, number] {
262
+ const result = inv<[boolean, number, number, number, number]>('0xE8A8378BF651079C', entity.handle, pvf(), pvf(), pvf(), pvf(), rai());
263
+ return [!!result[0], result[1], result[2], result[3], result[4]];
202
264
  }
203
265
 
204
266
  /**
205
- * @param p0
267
+ * @param ped
268
+ * @param p1
269
+ * @param size
270
+ * @param p3
206
271
  */
207
- static N_0x67B0778C62E74423(p0: any): void {
208
- inv<void>('0x67B0778C62E74423', p0);
272
+ static addBloodPoolsForPedWithParams(ped: Ped, p1: number, size: number, p3: number): void {
273
+ inv<void>('0xC349EE1E6EFA494B', ped.handle, f(p1), f(size), f(p3));
209
274
  }
210
275
 
211
276
  /**
212
- * ANIMPOSTFX_*
277
+ * Returns proxyInteriorIndex
213
278
  *
214
- * @param effectNameHash
279
+ * @param interiorId
280
+ * @returns
215
281
  */
216
- static N_0x71845905BCCDE781(effectNameHash: string | number): void {
217
- inv<void>('0x71845905BCCDE781', _h(effectNameHash));
282
+ static getProxyInteriorIndex(interiorId: number): number {
283
+ return inv<number>('0x5D1C5D8E62E8EE1C', interiorId, rai());
218
284
  }
219
285
 
220
- static N_0xF2F543D48F319A3A(): void {
221
- inv<void>('0xF2F543D48F319A3A');
286
+ static endPetrolTrailDecals(): void {
287
+ inv<void>('0x0E126AAE933F3B56');
222
288
  }
223
289
 
224
290
  /**
225
291
  * ANIMPOSTFX_*
226
292
  *
227
- * @returns
228
- */
229
- static N_0x3DA7A10583A4BEC0(): boolean {
230
- return !!inv<boolean>('0x3DA7A10583A4BEC0', rai());
293
+ * @param effectName
294
+ * @param p1
295
+ * @param p2
296
+ * @returns p3
297
+ */
298
+ static N_0xFBF161FCFEC8589E(effectName: string | null, p1: number, p2: boolean): [boolean, boolean] {
299
+ const result = inv<[boolean, number]>('0xFBF161FCFEC8589E', effectName, p1, p2, pvi(), rai());
300
+ return [!!result[0], !!result[1]];
231
301
  }
232
302
 
233
303
  /**
234
- * Does not affect weapons, particles, fire/explosions, flashlights or the sun.
235
- * When set to true, all emissive textures (including ped components that have light effects), street lights, building lights, vehicle lights, etc will all be turned off. state: True turns off all artificial light sources in the map: buildings, street lights, car lights, etc. False turns them back on.
304
+ * 0 = succeeded
305
+ * 1 = getting status
306
+ * 2 = failed
236
307
  *
237
- * @param state
308
+ * @returns
238
309
  */
239
- static setArtificialLightsState(state: boolean): void {
240
- inv<void>('0xB2797619A7C7747B', state);
310
+ static getStatusOfSaveHighQualityPhoto(): number {
311
+ return inv<number>('0xD6663EC374092383', rai());
241
312
  }
242
313
 
243
314
  /**
244
- * Possible values:
245
- * "CSM_ST_POINT"
246
- * "CSM_ST_LINEAR"
247
- * "CSM_ST_BOX3x3"
248
- * "CSM_ST_BOX4x4"
249
- * "CSM_ST_DITHER2_LINEAR"
250
- * "CSM_ST_CUBIC"
251
- * "CSM_ST_POISSON16"
252
- * "CSM_ST_SOFT8"
253
- * "CSM_ST_SOFT16"
254
- * "CSM_ST_SOFT32"
255
- * "CSM_ST_DITHER16_RPDB"
256
- * "CSM_ST_POISSON16_RPDB_GNORM"
257
- * "CSM_ST_HIGHRES_BOX4x4"
258
- * "CSM_ST_ESM"
259
- *
260
- * @param type
315
+ * @returns
261
316
  */
262
- static cascadeShadowsSetShadowSampleType(type: string | null): void {
263
- inv<void>('0xCE4774E0F9AD48D1', type);
317
+ static isPhotoFrame(): boolean {
318
+ return !!inv<boolean>('0x86076AE35CBBE55F', rai());
264
319
  }
265
320
 
266
321
  /**
267
322
  * @param p0
323
+ * @param p1
324
+ * @param p2
325
+ * @param p3
326
+ * @param p4
327
+ * @param p5
328
+ * @param p6
329
+ * @param p7
330
+ * @param p8
331
+ * @param p9
332
+ * @param p10
268
333
  */
269
- static N_0x519928DF02EB5101(p0: any): void {
270
- inv<void>('0x519928DF02EB5101', p0);
334
+ static N_0x4D14AF567FC02885(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any, p8: any, p9: any, p10: any): void {
335
+ inv<void>('0x4D14AF567FC02885', p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
271
336
  }
272
337
 
273
338
  /**
274
- * Gets set to 1 when GET_STATUS_OF_TAKE_HIGH_QUALITY_PHOTO = PHOTO_OPERATION_SUCCEEDED
339
+ * @param effectName
340
+ * @returns
341
+ */
342
+ static animpostfxIsRunning(effectName: string | null): boolean {
343
+ return !!inv<boolean>('0x4A123E85D7C4CA0B', effectName, rai());
344
+ }
345
+
346
+ /**
347
+ * Used for script function RPG_GLOBAL_STATS__PRIVATE__ACTIVATE_STAT_FLAG - Quite and Inspiration Aura equip
348
+ * Params: 0f, 2f, 2f
275
349
  *
276
350
  * @param p0
351
+ * @param p1
352
+ * @param p2
277
353
  */
278
- static N_0x0D5B19C34068FEE7(p0: any): void {
279
- inv<void>('0x0D5B19C34068FEE7', p0);
354
+ static setEntityAura(p0: number, p1: number, p2: number): void {
355
+ inv<void>('0x249CD6B7285536F2', f(p0), f(p1), f(p2));
280
356
  }
281
357
 
282
358
  /**
283
- * type must be less than or equal to 20
359
+ * ANIMPOSTFX_*
284
360
  *
285
- * @param entity
286
- * @param type
361
+ * @param effectNameHash
362
+ * @returns
287
363
  */
288
- static setLightsTypeForEntity(entity: Entity, type: number): void {
289
- inv<void>('0xAB72C67163DC4DB4', entity.handle, type);
364
+ static N_0xE75CDDEBF618C8FF(effectNameHash: string | number): boolean {
365
+ return !!inv<boolean>('0xE75CDDEBF618C8FF', _h(effectNameHash), rai());
290
366
  }
291
367
 
292
368
  /**
293
- * @param p0
294
- * @param p1
295
- * @param p2
296
- * @param p3
369
+ * @param pos
297
370
  */
298
- static N_0xD543487A1F12828F(p0: any, p1: any, p2: any, p3: any): void {
299
- inv<void>('0xD543487A1F12828F', p0, p1, p2, p3);
371
+ static addBloodTrailSplat(pos: Vector3): void {
372
+ inv<void>('0xF5E45CB1CF965D2D', f(pos.x), f(pos.y), f(pos.z));
300
373
  }
301
374
 
302
- static N_0xEC3F7F24EEEB3BA3(): void {
303
- inv<void>('0xEC3F7F24EEEB3BA3');
375
+ /**
376
+ * https://i.imgur.com/ULQU9US.jpg
377
+ * More rounded and small puddle
378
+ *
379
+ * @param pos
380
+ * @param unused
381
+ */
382
+ static addBloodPool(pos: Vector3, unused: boolean): void {
383
+ inv<void>('0xFA2ECC78A6014D4F', f(pos.x), f(pos.y), f(pos.z), unused);
304
384
  }
305
385
 
306
386
  /**
307
- * Used in CREATE_BEZIER_BLOOD_TRAIL_OF_TYPE
387
+ * Only used in finale2, smuggler2, winter4
388
+ * _SET_CLOUD_A* - _SET_CLOUD_H*
308
389
  *
309
- * @param p0
390
+ * @param pos
310
391
  */
311
- static N_0x41F88A85A579A61D(p0: number): void {
312
- inv<void>('0x41F88A85A579A61D', f(p0));
392
+ static setCloudPosition(pos: Vector3): void {
393
+ inv<void>('0x10C1767B93257480', f(pos.x), f(pos.y), f(pos.z));
313
394
  }
314
395
 
315
- static freeMemoryForLowQualityPhoto(): void {
316
- inv<void>('0x614682E715ADBAAC');
396
+ /**
397
+ * @param p0
398
+ * @param p1
399
+ */
400
+ static N_0xA04EF43030593ABC(p0: any, p1: any): void {
401
+ inv<void>('0xA04EF43030593ABC', p0, p1);
317
402
  }
318
403
 
319
- static freeMemoryForHighQualityPhoto(): void {
320
- inv<void>('0xD45547D8396F002A');
404
+ /**
405
+ * Called together with FREE_MEMORY_FOR_LOW_QUALITY_PHOTO
406
+ *
407
+ * @param p0
408
+ * @returns
409
+ */
410
+ static beginCreateLowQualityCopyOfPhoto(p0: number): boolean {
411
+ return !!inv<boolean>('0x494A9874F17A7D50', p0, rai());
321
412
  }
322
413
 
323
- static N_0x32DE2BFFDA43E62A(): void {
324
- inv<void>('0x32DE2BFFDA43E62A');
414
+ /**
415
+ * @param player
416
+ */
417
+ static setPlayerAppearInPhoto(player: Player): void {
418
+ inv<void>('0x75D568607909333E', player.handle);
325
419
  }
326
420
 
327
421
  /**
328
- * Resets the exposure to the value when exposure lock was enabled
422
+ * @param checkpoint
423
+ * @returns
329
424
  */
330
- static updatePhotoModeExposure(): void {
331
- inv<void>('0x9229ED770975BD9E');
425
+ static doesCheckpointHaveFx(checkpoint: number): any {
426
+ return inv<number>('0x4C11CCACB7C02B6E', checkpoint);
332
427
  }
333
428
 
334
429
  /**
335
- * @param effectName
430
+ * https://github.com/femga/rdr3_discoveries/blob/master/graphics/timecycles
431
+ *
432
+ * @param modifierName
336
433
  */
337
- static animpostfxPreloadPostfx(effectName: string | null): void {
338
- inv<void>('0x5199405EABFBD7F0', effectName);
434
+ static setTimecycleModifier(modifierName: string | null): void {
435
+ inv<void>('0xFA08722A5EA82DA7', modifierName);
339
436
  }
340
437
 
341
438
  /**
342
439
  * @param strength
343
440
  */
344
- static setTransitionOutOfTimecycleModifier(strength: number): void {
345
- inv<void>('0xBB6C707F20D955D4', f(strength));
441
+ static setTimecycleModifierStrength(strength: number): void {
442
+ inv<void>('0xFDB74C9CC54C3F37', f(strength));
346
443
  }
347
444
 
348
445
  /**
349
- * @param effectName
350
- * @param p1
351
- * @param color
352
- * @param alpha
446
+ * @param toggle
353
447
  */
354
- static animpostfxSetPostfxColor(effectName: string | null, p1: number, color: Color, alpha: number): void {
355
- inv<void>('0x63011D0C7C6519E0', effectName, p1, color.r, color.g, color.b, color.a, alpha);
448
+ static togglePausedRenderphases(toggle: boolean): void {
449
+ inv<void>('0xEF9E1C45732F55FA', toggle);
356
450
  }
357
451
 
358
452
  /**
453
+ * R* Script spd_agnesdow1: p0 = SPD_AGNES_DOWD_01
454
+ *
359
455
  * @param p0
360
- * @param p1
456
+ * @returns
361
457
  */
362
- static startPetrolTrailDecals(p0: any, p1: any): void {
363
- inv<void>('0x46F246D6504F0031', p0, p1);
458
+ static N_0xFD05B1DDE83749FA(p0: string | null): boolean {
459
+ return !!inv<boolean>('0xFD05B1DDE83749FA', p0, rai());
364
460
  }
365
461
 
366
462
  /**
367
- * @param pickupObject
368
- * @param allow
463
+ * @param p0
369
464
  */
370
- static allowPickupLightSync(pickupObject: Prop, allow: boolean): void {
371
- inv<void>('0x7C348310A6E2FB91', pickupObject.handle, allow);
465
+ static setParticleFxFootLodrangeScale(p0: number): void {
466
+ inv<void>('0x2A1625858887D4E6', f(p0));
372
467
  }
373
468
 
374
- static freeMemoryForMissionCreatorPhoto(): void {
375
- inv<void>('0x7DFF8F94937D2659');
469
+ /**
470
+ * @param ptfxHandle
471
+ * @returns
472
+ */
473
+ static doesParticleFxLoopedExist(ptfxHandle: number): boolean {
474
+ return !!inv<boolean>('0x9DD5AFF561E88F2A', ptfxHandle, rai());
376
475
  }
377
476
 
378
477
  /**
379
- * Returns veg modifier handle
380
- *
381
- * @param pos
382
- * @param radius
383
- * @param modType
384
- * @param flags
385
- * @param p6
478
+ * @param effectName
479
+ * @param entity
480
+ * @param offset
481
+ * @param rot
482
+ * @param scale
483
+ * @param axisX
484
+ * @param axisY
485
+ * @param axisZ
386
486
  * @returns
387
487
  */
388
- static addVegModifierSphere(pos: Vector3, radius: number, modType: number, flags: number, p6: number): number {
389
- return inv<number>('0xFA50F79257745E74', f(pos.x), f(pos.y), f(pos.z), f(radius), modType, flags, p6, rai());
488
+ static startParticleFxNonLoopedOnEntity(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, scale: number, axisX: boolean, axisY: boolean, axisZ: boolean): boolean {
489
+ return !!inv<boolean>('0xFF4C64C513388C12', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), f(scale), axisX, axisY, axisZ, rai());
490
+ }
491
+
492
+ /**
493
+ * @returns
494
+ */
495
+ static getTogglePausedRenderphasesStatus(): boolean {
496
+ return !!inv<boolean>('0x86ED21BDB2791CE8', rai());
390
497
  }
391
498
 
392
499
  /**
393
500
  * Only used in R* SP Script spd_agnesdown1
394
501
  *
395
502
  * @param p0
396
- * @param pos
397
- * @param p4
398
- * @param p5
399
- * @param heading
400
503
  * @returns
401
504
  */
402
- static N_0x402E1A61D2587FCD(p0: any, pos: Vector3, p4: number, p5: number, heading: number): boolean {
403
- return !!inv<boolean>('0x402E1A61D2587FCD', p0, f(pos.x), f(pos.y), f(pos.z), f(p4), f(p5), f(heading), rai());
505
+ static N_0x5C9C3A466B3296A8(p0: any): any {
506
+ return inv<number>('0x5C9C3A466B3296A8', p0);
404
507
  }
405
508
 
406
509
  /**
407
- * @returns
510
+ * @param entity
511
+ * @param mask
408
512
  */
409
- static N_0xFC9B53C072F418E0(): any {
410
- return inv<number>('0xFC9B53C072F418E0');
513
+ static addEntityToEntityMask(entity: Entity, mask: number): void {
514
+ inv<void>('0xC6F81FCD15350323', entity.handle, mask);
411
515
  }
412
516
 
413
517
  /**
414
- * state: false disables artificial interior light sources for specific proxyInteriorIndex
518
+ * Always returns 200.
415
519
  *
416
- * @param proxyInteriorIndex
417
- * @param state
520
+ * @returns
418
521
  */
419
- static setProxyInteriorIndexArtificialLightsState(proxyInteriorIndex: number, state: boolean): void {
420
- inv<void>('0xBFCB17895BB99E4E', proxyInteriorIndex, state);
421
- }
422
-
423
- static resetPausedRenderphases(): void {
424
- inv<void>('0xCCD9AAD85E1B559E');
522
+ static getMaxNumberOfLocalPhotos(): number {
523
+ return inv<number>('0x8E587FCD30E05592', rai());
425
524
  }
426
525
 
427
526
  /**
428
- * @param unused
429
- * @returns
527
+ * @param channel
430
528
  */
431
- static saveHighQualityPhoto(unused: number): any {
432
- return inv<number>('0x57639FD876B68A91', unused);
529
+ static setTvChannel(channel: number): void {
530
+ inv<void>('0x593FAF7FC9401A56', channel);
433
531
  }
434
532
 
435
533
  /**
436
534
  * @param pos
437
- * @param p2
535
+ * @param p3
438
536
  */
439
- static setCloudLayer(pos: Vector2, p2: number): void {
440
- inv<void>('0xB8C984C0D47F4F07', f(pos.x), f(pos.y), p2);
537
+ static addPetrolTrailDecalInfo(pos: Vector3, p3: number): void {
538
+ inv<void>('0x73354FB6D03D2E8A', f(pos.x), f(pos.y), f(pos.z), f(p3));
539
+ }
540
+
541
+ /**
542
+ * ANIMPOSTFX_*
543
+ *
544
+ * @param effectName
545
+ * @returns
546
+ */
547
+ static N_0xB958D97A0DFAA0C2(effectName: string | null): boolean {
548
+ return !!inv<boolean>('0xB958D97A0DFAA0C2', effectName, rai());
549
+ }
550
+
551
+ /**
552
+ * @param txdHash
553
+ * @param dict
554
+ * @returns
555
+ */
556
+ static isTextureInDict(txdHash: string | number, dict: string | number): any {
557
+ return inv<number>('0xA2A51869BDED733B', _h(txdHash), _h(dict));
558
+ }
559
+
560
+ static N_0x910E260AEAD855DE(): void {
561
+ inv<void>('0x910E260AEAD855DE');
562
+ }
563
+
564
+ /**
565
+ * @param p0
566
+ * @param p1
567
+ */
568
+ static N_0xC489FE31AC726512(p0: any, p1: any): void {
569
+ inv<void>('0xC489FE31AC726512', p0, p1);
570
+ }
571
+
572
+ /**
573
+ * https://i.imgur.com/rPITUCV.jpg
574
+ * More customizable and more like quadrants
575
+ *
576
+ * @param pos
577
+ * @param p3
578
+ * @param size
579
+ * @param p5
580
+ * @param permanent
581
+ * @param p7
582
+ * @param p8
583
+ */
584
+ static addBloodPool2(pos: Vector3, p3: number, size: number, p5: number, permanent: boolean, p7: number, p8: boolean): void {
585
+ inv<void>('0xF708298675ABDC6A', f(pos.x), f(pos.y), f(pos.z), f(p3), f(size), f(p5), permanent, f(p7), p8);
586
+ }
587
+
588
+ /**
589
+ * p1: 0.3f in R* Scripts
590
+ *
591
+ * @param waypointRecording
592
+ * @param p1
593
+ */
594
+ static bloodTrailForWaypoint(waypointRecording: string | null, p1: number): void {
595
+ inv<void>('0xB9C92616929CC25D', waypointRecording, f(p1));
596
+ }
597
+
598
+ /**
599
+ * @param ptfxHandle
600
+ * @param range
601
+ */
602
+ static setParticleFxLoopedFarClipDist(ptfxHandle: number, range: number): void {
603
+ inv<void>('0x9B04D471DA0AD7AA', ptfxHandle, f(range));
441
604
  }
442
605
 
443
606
  /**
444
607
  * @param p0
608
+ * @param p1
609
+ */
610
+ static N_0x085C5B61A0114F32(p0: any, p1: any): void {
611
+ inv<void>('0x085C5B61A0114F32', p0, p1);
612
+ }
613
+
614
+ /**
615
+ * @param p0
616
+ */
617
+ static N_0x9F158A49B0D84C3C(p0: any): void {
618
+ inv<void>('0x9F158A49B0D84C3C', p0);
619
+ }
620
+
621
+ /**
445
622
  * @returns
446
623
  */
447
- static N_0xEC3D8C228FE553D7(p0: boolean): boolean {
448
- return !!inv<boolean>('0xEC3D8C228FE553D7', p0, rai());
624
+ static N_0x5C674EB487891F6B(): any {
625
+ return inv<number>('0x5C674EB487891F6B');
449
626
  }
450
627
 
451
628
  /**
452
- * *RESET**
629
+ * Params: component - used in odriscolls1 and sean1 R* SP Script: COMPONENT_BINOCULARS_SCOPE01
630
+ * Triggers the binocular scaleform
631
+ *
632
+ * @param component
453
633
  */
454
- static N_0x1460B644397453EB(): void {
455
- inv<void>('0x1460B644397453EB');
634
+ static N_0x21F00E08CBB5F37B(component: string | null): void {
635
+ inv<void>('0x21F00E08CBB5F37B', component);
456
636
  }
457
637
 
458
638
  /**
459
- * @param personaPhotoLocalCacheType
639
+ * Sets an unknown value related to timecycles.
640
+ *
641
+ * @param unk
642
+ */
643
+ static resetAdaptation(unk: number): void {
644
+ inv<void>('0x297B72E2AF094742', unk);
645
+ }
646
+
647
+ /**
648
+ * @param effectNameHash
649
+ */
650
+ static animpostfxPreloadPostfxByStackhash(effectNameHash: string | number): void {
651
+ inv<void>('0xF3E039322BFBD4D8', _h(effectNameHash));
652
+ }
653
+
654
+ /**
655
+ * @param effectNameHash
656
+ * @param p1
657
+ * @param p2
658
+ * @returns p3
659
+ */
660
+ static animpostfxHasEventTriggeredByStackhash(effectNameHash: string | number, p1: number, p2: boolean): [any, boolean] {
661
+ const result = inv<[number, number]>('0x9AB192A9EF980EED', _h(effectNameHash), p1, p2, pvi());
662
+ return [result[0], !!result[1]];
663
+ }
664
+
665
+ static destroySwatchTextureDict(): void {
666
+ inv<void>('0xDAD7FB8402651654');
667
+ }
668
+
669
+ /**
670
+ * @returns
671
+ */
672
+ static beginTakeHighQualityPhoto(): any {
673
+ return inv<number>('0xA15BFFC0A01B34E1');
674
+ }
675
+
676
+ /**
677
+ * Old name: _IS_TV_PLAYLIST_ITEM_PLAYING
678
+ *
679
+ * @param videoCliphash
680
+ * @returns
681
+ */
682
+ static isTvshowCurrentlyPlaying(videoCliphash: string | number): boolean {
683
+ return !!inv<boolean>('0x4D562223E0EB65F3', _h(videoCliphash), rai());
684
+ }
685
+
686
+ /**
687
+ * @param p0
688
+ */
689
+ static N_0x8996FA6AD9FE4E90(p0: any): void {
690
+ inv<void>('0x8996FA6AD9FE4E90', p0);
691
+ }
692
+
693
+ /**
694
+ * @param obj
695
+ */
696
+ static removeDecalsFromObject(obj: Prop): void {
697
+ inv<void>('0xFB8972BAE0013140', obj.handle);
698
+ }
699
+
700
+ /**
701
+ * https://github.com/femga/rdr3_discoveries/blob/master/graphics/markers/marker_types.lua
702
+ * Old name: _DRAW_MARKER
703
+ *
704
+ * @param type
705
+ * @param pos
706
+ * @param direction
707
+ * @param rot
708
+ * @param scale
709
+ * @param color
710
+ * @param alpha
711
+ * @param bobUpAndDown
712
+ * @param faceCamera
713
+ * @param p19
714
+ * @param rotate
715
+ * @param textureDict
716
+ * @param textureName
717
+ * @param drawOnEnts
718
+ */
719
+ static drawMarker(type: string | number, pos: Vector3, direction: Vector3, rot: Vector3, scale: Vector3, color: Color, alpha: number, bobUpAndDown: boolean, faceCamera: boolean, p19: number, rotate: boolean, textureDict: string | null, textureName: string | null, drawOnEnts: boolean): void {
720
+ inv<void>('0x2A32FAA57B937173', _h(type), f(pos.x), f(pos.y), f(pos.z), f(direction.x), f(direction.y), f(direction.z), f(rot.x), f(rot.y), f(rot.z), f(scale.x), f(scale.y), f(scale.z), color.r, color.g, color.b, color.a, alpha, bobUpAndDown, faceCamera, p19, rotate, textureDict, textureName, drawOnEnts);
721
+ }
722
+
723
+ /**
724
+ * @param r
725
+ * @param g
726
+ * @param b
727
+ */
728
+ static setParticleFxNonLoopedColour(r: number, g: number, b: number): void {
729
+ inv<void>('0x60B85BED6577A35B', f(r), f(g), f(b));
730
+ }
731
+
732
+ /**
733
+ * @param p0
734
+ */
735
+ static N_0xF5793BB386E1FF9C(p0: any): void {
736
+ inv<void>('0xF5793BB386E1FF9C', p0);
737
+ }
738
+
739
+ /**
740
+ * Used in shop scripts for CATALOG_BOOK
741
+ * false = Normal -> [CATALOG_BOOK_SHUTDOWN]
742
+ * true = Trees flickering? -> [CATALOG_BOOK_OPEN]
743
+ *
744
+ * @param p0
745
+ */
746
+ static N_0x1A9F09AB458D49C6(p0: boolean): void {
747
+ inv<void>('0x1A9F09AB458D49C6', p0);
748
+ }
749
+
750
+ /**
751
+ * @param effectName
752
+ * @param duration
753
+ */
754
+ static animpostfxPlayTimed(effectName: string | null, duration: number): void {
755
+ inv<void>('0x3A9A281FF71249E9', effectName, duration);
756
+ }
757
+
758
+ /**
759
+ * @param effectName
760
+ * @param entity
761
+ * @param offset
762
+ * @param rot
763
+ * @param boneIndex
764
+ * @param scale
765
+ * @param xAxis
766
+ * @param yAxis
767
+ * @param zAxis
768
+ * @returns
769
+ */
770
+ static startNetworkedParticleFxLoopedOnEntityBone(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
771
+ return inv<number>('0x9C56621462FFE7A6', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
772
+ }
773
+
774
+ /**
775
+ * @param p0
776
+ * @param p1
777
+ * @param p2
778
+ */
779
+ static N_0x735762E8D7573E42(p0: any, p1: any, p2: any): void {
780
+ inv<void>('0x735762E8D7573E42', p0, p1, p2);
781
+ }
782
+
783
+ /**
784
+ * Only used in guama1 R* Script
785
+ * Disables lod/distant lights when BOOL is set to true
786
+ *
787
+ * @param disable
788
+ */
789
+ static disableFarArtificialLights(disable: boolean): void {
790
+ inv<void>('0xCD284E2F6AC27EE9', disable);
791
+ }
792
+
793
+ /**
794
+ * @param decal
795
+ */
796
+ static removeDecal(decal: number): void {
797
+ inv<void>('0x49A720552EB0BB88', decal);
798
+ }
799
+
800
+ /**
801
+ * Hardcoded to always set x to 1280 and y to 720.
802
+ *
803
+ * @returns x; y
804
+ */
805
+ static getScreenResolution(): [number, number] {
806
+ const result = inv<[number, number]>('0x66773C92835D0909', pvi(), pvi());
807
+ return [result[0], result[1]];
808
+ }
809
+
810
+ /**
811
+ * ANIMPOSTFX_*
812
+ *
813
+ * @param effectName
814
+ */
815
+ static N_0xA201A3D0AC087C37(effectName: string | null): void {
816
+ inv<void>('0xA201A3D0AC087C37', effectName);
817
+ }
818
+
819
+ /**
820
+ * @param modifierName
821
+ * @param transitionBlend
822
+ */
823
+ static setTransitionTimecycleModifier(modifierName: string | null, transitionBlend: number): void {
824
+ inv<void>('0xFF927A09F481D80C', modifierName, f(transitionBlend));
825
+ }
826
+
827
+ static enableEntitymask(): void {
828
+ inv<void>('0xFAAD23DE7A54FC14');
829
+ }
830
+
831
+ /**
832
+ * fxName: see data_0/data/effects/ptfx/fxlists/
833
+ *
834
+ * @param fxName
835
+ */
836
+ static useParticleFxAsset(fxName: string | null): void {
837
+ inv<void>('0xA10DB07FC234DD12', fxName);
838
+ }
839
+
840
+ static animpostfxStopAll(): void {
841
+ inv<void>('0x66560A0D4C64FD21');
842
+ }
843
+
844
+ /**
845
+ * @param pickup
846
+ * @param toggle
847
+ */
848
+ static blockPickupPlacementLight(pickup: Pickup, toggle: boolean): void {
849
+ inv<void>('0x0552AA3FFC5B87AA', pickup.handle, toggle);
850
+ }
851
+
852
+ /**
853
+ * ANIMPOSTFX_*
854
+ *
855
+ * @param effectNameHash
856
+ */
857
+ static N_0x38D9D50F2085E9B3(effectNameHash: string | number): void {
858
+ inv<void>('0x38D9D50F2085E9B3', _h(effectNameHash));
859
+ }
860
+
861
+ /**
862
+ * Used for script function RPG_GLOBAL_STATS__PRIVATE__DEACTIVATE_STAT_FLAG - Inspiration Aura unequip
863
+ */
864
+ static resetEntityAura(): void {
865
+ inv<void>('0xAF4D239B8903FCBE');
866
+ }
867
+
868
+ /**
869
+ * @param p0
870
+ * @param p1
871
+ * @param p2
872
+ * @param p3
873
+ * @param p4
874
+ * @param p5
875
+ * @param p6
876
+ * @param p7
877
+ * @param p8
878
+ * @param p9
879
+ * @param p10
880
+ * @param p11
881
+ * @param p12
882
+ * @param p13
883
+ * @param p14
884
+ * @param p15
885
+ * @param p16
886
+ * @param p17
887
+ * @param p18
888
+ * @param p19
889
+ * @param p20
890
+ * @param p21
891
+ * @returns
460
892
  */
461
- static pedshotSetPersonaPhotoType(personaPhotoLocalCacheType: number): void {
462
- inv<void>('0x196D3ACBEBA4A44B', personaPhotoLocalCacheType);
463
- }
464
-
465
- static pedshotFinishCleanupData(): void {
466
- inv<void>('0xC2B8164C3BE871A4');
467
- }
468
-
469
- static N_0x1C6306E5BC25C29C(): void {
470
- inv<void>('0x1C6306E5BC25C29C');
893
+ static addDecal(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any, p8: any, p9: any, p10: any, p11: any, p12: any, p13: any, p14: any, p15: any, p16: any, p17: any, p18: any, p19: any, p20: any, p21: any): number {
894
+ return inv<number>('0x57CB267624EF85C0', p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, rai());
471
895
  }
472
896
 
473
897
  /**
474
- * @param pos
898
+ * _SET_D* or _SET_E*
475
899
  */
476
- static setCloudNoise(pos: Vector3): void {
477
- inv<void>('0xFE7966DF01452F32', f(pos.x), f(pos.y), f(pos.z));
900
+ static N_0xB032C085D9A03907(): void {
901
+ inv<void>('0xB032C085D9A03907');
478
902
  }
479
903
 
480
904
  /**
481
- * @param p0
905
+ * Returns handle to be used with REMOVE_GRASS_CULL_SPHERE
906
+ *
907
+ * @param pos
908
+ * @param p3
909
+ * @param p4
910
+ * @returns
482
911
  */
483
- static N_0xEB48CE48EEC41FD4(p0: any): void {
484
- inv<void>('0xEB48CE48EEC41FD4', p0);
912
+ static setGrassCullSphere(pos: Vector3, p3: number, p4: number): number {
913
+ return inv<number>('0x27219300C36A8D40', f(pos.x), f(pos.y), f(pos.z), f(p3), p4, rai());
485
914
  }
486
915
 
487
- /**
488
- * Used in NET_CAMP_SPIRIT_ANIMAL_CLEAR_ANIMAL_VISIBILITY
489
- *
490
- * @param entity
491
- */
492
- static N_0xC06F2F45A73EABCD(entity: Entity): void {
493
- inv<void>('0xC06F2F45A73EABCD', entity.handle);
916
+ static N_0xA21AF60C9F99CCC5(): void {
917
+ inv<void>('0xA21AF60C9F99CCC5');
494
918
  }
495
919
 
496
920
  /**
497
921
  * @param effectName
498
- * @param pos
922
+ * @param entity
923
+ * @param offset
499
924
  * @param rot
500
925
  * @param scale
501
926
  * @param xAxis
@@ -503,1031 +928,917 @@ export class Graphics {
503
928
  * @param zAxis
504
929
  * @returns
505
930
  */
506
- static startNetworkedParticleFxNonLoopedAtCoord(effectName: string | null, pos: Vector3, rot: Vector3, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): boolean {
507
- return !!inv<boolean>('0xFB97618457994A62', effectName, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z), f(scale), xAxis, yAxis, zAxis, rai());
508
- }
509
-
510
- /**
511
- * @returns
512
- */
513
- static getPhotoModeExposure(): number {
514
- return inv<number>('0x06C0D8BB6B04A709', raf());
931
+ static startParticleFxLoopedOnEntity(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
932
+ return inv<number>('0xBD41E1440CE39800', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), f(scale), xAxis, yAxis, zAxis, rai());
515
933
  }
516
934
 
517
935
  /**
518
- * _SET_PARTICLE_FX_LOOPED_FA* - _SET_PARTICLE_FX_LOOPED_OF*
936
+ * 0 = succeeded
937
+ * 1 = getting status
938
+ * 2 = failed
519
939
  *
520
- * @param ptfxHandle
521
- * @param scalar
940
+ * @returns
522
941
  */
523
- static setParticleFxLoopedUpdateDistantSmoke(ptfxHandle: number, scalar: number): void {
524
- inv<void>('0x9DDC222D85D5AF2A', ptfxHandle, f(scalar));
942
+ static getStatusOfSortedListOperation(): number {
943
+ return inv<number>('0xB28894CD7408BD0C', rai());
525
944
  }
526
945
 
527
946
  /**
528
- * Known effects: MP_Trans_SceneToPhoto
529
- * MP_Trans_WinLose
530
- * SpectateFilter
531
- * MP_CharacterCreatorPhoto
532
- * MP_Trans_PhotoToScene
533
- * InterrogationHit
534
- *
535
- * @param effectName
536
947
  * @returns
537
948
  */
538
- static animpostfxGetStackhash(effectName: string | null): number {
539
- return (inv<number>('0x842CCC9491FFCD9B', effectName, rai())) & 0xFFFFFFFF;
949
+ static getPhotoModeContrast(): number {
950
+ return inv<number>('0x98F4154989B81EC6', raf());
540
951
  }
541
952
 
542
953
  /**
543
- * @param height
954
+ * @param pos
544
955
  */
545
- static setCloudHeight(height: number): void {
546
- inv<void>('0xC332C91388F5580B', f(height));
956
+ static addBloodTrailPoint(pos: Vector3): void {
957
+ inv<void>('0xDD9DC1AB63D513CE', f(pos.x), f(pos.y), f(pos.z));
547
958
  }
548
959
 
549
960
  /**
550
- * When this is set to ON, shadows only draw as you get nearer. When OFF, they draw from a further distance.
961
+ * Returns whether the 'killFX' setting is enabled. ANIMPOSTFX_*
551
962
  *
552
- * @param toggle
963
+ * @returns
553
964
  */
554
- static cascadeShadowsEnableEntityTracker(toggle: boolean): void {
555
- inv<void>('0x8FBFD2AEB196B369', toggle);
965
+ static N_0xFF584F097C17FA8F(): boolean {
966
+ return !!inv<boolean>('0xFF584F097C17FA8F', rai());
556
967
  }
557
968
 
558
969
  /**
559
- * Only used in R* Script nb_stalking_hunter
970
+ * Old name: _GET_STATUS_OF_DRAW_LOW_QUALITY_PHOTO
560
971
  *
561
972
  * @param p0
973
+ * @returns
562
974
  */
563
- static N_0xD1472AFF30C103D6(p0: number): void {
564
- inv<void>('0xD1472AFF30C103D6', f(p0));
565
- }
566
-
567
- /**
568
- * @param worldX
569
- * @param worldY
570
- * @param worldZ
571
- * @returns screenX; screenY
572
- */
573
- static getScreenCoordFromWorldCoord(worldX: number, worldY: number, worldZ: number): [boolean, number, number] {
574
- const result = inv<[boolean, number, number]>('0xCB50D7AFCC8B0EC6', f(worldX), f(worldY), f(worldZ), pvf(), pvf(), rai());
575
- return [!!result[0], result[1], result[2]];
975
+ static getStatusOfCreateLowQualityCopyOfPhoto(p0: any): number {
976
+ return inv<number>('0x13430D3D5A45F14B', p0, rai());
576
977
  }
577
978
 
578
979
  /**
579
- * @param point
580
- * @param pos
581
- * @param radius
980
+ * @param effectName
582
981
  */
583
- static setTrackedPointInfo(point: number, pos: Vector3, radius: number): void {
584
- inv<void>('0xF6FDA3D4404D4F2C', point, f(pos.x), f(pos.y), f(pos.z), f(radius));
982
+ static animpostfxClearEffect(effectName: string | null): void {
983
+ inv<void>('0xC5CB91D65852ED7E', effectName);
585
984
  }
586
985
 
587
- /**
588
- * Draws a 2D sprite on the screen. Parameters:
589
- * textureDict - Name of texture dictionary to load texture from textureName - Name of texture to load from texture dictionary screenX/Y - Screen offset (0.5 = center)
590
- * scaleX/Y - Texture scaling. Negative values can be used to flip the texture on that axis. (0.5 = half) heading - Texture rotation in degrees (default = 0.0) positive is clockwise, measured in degrees red,green,blue - Sprite color (default = 255/255/255) alpha - opacity level https://github.com/femga/rdr3_discoveries/tree/master/useful_info_from_rpfs/textures
591
- *
592
- * @param textureDict
593
- * @param textureName
594
- * @param screenX
595
- * @param screenY
596
- * @param width
597
- * @param height
598
- * @param heading
599
- * @param color
600
- * @param alpha
601
- * @param p11
602
- */
603
- static drawSprite(textureDict: string | null, textureName: string | null, screenX: number, screenY: number, width: number, height: number, heading: number, color: Color, alpha: number, p11: boolean): void {
604
- inv<void>('0xC9884ECADE94CB34', textureDict, textureName, f(screenX), f(screenY), f(width), f(height), f(heading), color.r, color.g, color.b, color.a, alpha, p11);
986
+ static pedshotInitCleanupData(): void {
987
+ inv<void>('0x55285F885F662169');
605
988
  }
606
989
 
607
990
  /**
608
- * @returns
991
+ * @param vegModifierHandle
992
+ * @param p1
609
993
  */
610
- static getCurrentNumberOfLocalPhotos(): number {
611
- return inv<number>('0x78C56B8A7B1D000C', rai());
994
+ static removeVegModifierSphere(vegModifierHandle: number, p1: number): void {
995
+ inv<void>('0x9CF1836C03FB67A2', vegModifierHandle, p1);
612
996
  }
613
997
 
614
998
  /**
615
- * @param ptfxHandle
616
- * @param p1
999
+ * @param p0
617
1000
  */
618
- static removeParticleFx(ptfxHandle: number, p1: boolean): void {
619
- inv<void>('0x459598F579C98929', ptfxHandle, p1);
1001
+ static setStatePhotoTakenStat(p0: string | null): void {
1002
+ inv<void>('0x8952E857696B8A79', p0);
620
1003
  }
621
1004
 
622
1005
  /**
623
- * Removes all decals in range from a position, it includes the bullet holes, blood pools, petrol...
1006
+ * Sets the draw order for script draw commands.
624
1007
  *
625
- * @param pos
626
- * @param range
1008
+ * @param drawOrder
627
1009
  */
628
- static removeDecalsInRange(pos: Vector3, range: number): void {
629
- inv<void>('0x86DE59FA02902B40', f(pos.x), f(pos.y), f(pos.z), f(range));
1010
+ static setScriptGfxDrawOrder(drawOrder: number): void {
1011
+ inv<void>('0xCFCC78391C8B3814', drawOrder);
630
1012
  }
631
1013
 
632
1014
  /**
633
1015
  * @param p0
634
1016
  */
635
- static setPhotoOverlayEffectStat(p0: number): void {
636
- inv<void>('0x8B3296278328B5EB', p0);
1017
+ static enableStaticVegModifier(p0: string | number): void {
1018
+ inv<void>('0xDFEA23EC90113657', _h(p0));
637
1019
  }
638
1020
 
639
1021
  /**
640
- * @param ptfxHandle
641
- * @param r
642
- * @param g
643
- * @param b
644
- * @param p4
1022
+ * @returns
645
1023
  */
646
- static setParticleFxLoopedColour(ptfxHandle: number, r: number, g: number, b: number, p4: boolean): void {
647
- inv<void>('0x239879FC61C610CC', ptfxHandle, f(r), f(g), f(b), p4);
1024
+ static getTvChannel(): number {
1025
+ return inv<number>('0xF90FBFD68F3C59AE', rai());
648
1026
  }
649
1027
 
650
- /**
651
- * @param effectNameHash
652
- */
653
- static animpostfxStopStackhashPostfx(effectNameHash: string | number): void {
654
- inv<void>('0xEDA5CBECF56E1386', _h(effectNameHash));
1028
+ static N_0x9D1B0B5066205692(): void {
1029
+ inv<void>('0x9D1B0B5066205692');
655
1030
  }
656
1031
 
657
1032
  /**
658
- * @param value
1033
+ * @param alpha
659
1034
  */
660
- static changePhotoModeContrast(value: number): void {
661
- inv<void>('0x62B9F9A1272AED80', f(value));
1035
+ static setParticleFxNonLoopedAlpha(alpha: number): void {
1036
+ inv<void>('0xE8A35938A7026CEA', f(alpha));
662
1037
  }
663
1038
 
664
1039
  /**
665
- * Returns proxyInteriorIndex
666
- *
667
- * @param interiorId
668
- * @returns
1040
+ * @param point
669
1041
  */
670
- static getProxyInteriorIndex(interiorId: number): number {
671
- return inv<number>('0x5D1C5D8E62E8EE1C', interiorId, rai());
1042
+ static destroyTrackedPoint(point: number): void {
1043
+ inv<void>('0x37A59922109F8F1C', point);
672
1044
  }
673
1045
 
674
- static endPetrolTrailDecals(): void {
675
- inv<void>('0x0E126AAE933F3B56');
1046
+ /**
1047
+ * @param p0
1048
+ */
1049
+ static N_0x67B0778C62E74423(p0: any): void {
1050
+ inv<void>('0x67B0778C62E74423', p0);
676
1051
  }
677
1052
 
678
1053
  /**
679
1054
  * ANIMPOSTFX_*
680
1055
  *
681
- * @param effectName
682
- * @param p1
683
- * @param p2
684
- * @returns p3
1056
+ * @param effectNameHash
685
1057
  */
686
- static N_0xFBF161FCFEC8589E(effectName: string | null, p1: number, p2: boolean): [boolean, boolean] {
687
- const result = inv<[boolean, number]>('0xFBF161FCFEC8589E', effectName, p1, p2, pvi(), rai());
688
- return [!!result[0], !!result[1]];
1058
+ static N_0x71845905BCCDE781(effectNameHash: string | number): void {
1059
+ inv<void>('0x71845905BCCDE781', _h(effectNameHash));
1060
+ }
1061
+
1062
+ static N_0xF2F543D48F319A3A(): void {
1063
+ inv<void>('0xF2F543D48F319A3A');
689
1064
  }
690
1065
 
691
1066
  /**
692
- * 0 = succeeded
693
- * 1 = getting status
694
- * 2 = failed
1067
+ * ANIMPOSTFX_*
695
1068
  *
696
1069
  * @returns
697
1070
  */
698
- static getStatusOfSaveHighQualityPhoto(): number {
699
- return inv<number>('0xD6663EC374092383', rai());
1071
+ static N_0x3DA7A10583A4BEC0(): boolean {
1072
+ return !!inv<boolean>('0x3DA7A10583A4BEC0', rai());
700
1073
  }
701
1074
 
702
1075
  /**
703
- * @returns
1076
+ * Does not affect weapons, particles, fire/explosions, flashlights or the sun.
1077
+ * When set to true, all emissive textures (including ped components that have light effects), street lights, building lights, vehicle lights, etc will all be turned off. state: True turns off all artificial light sources in the map: buildings, street lights, car lights, etc. False turns them back on.
1078
+ *
1079
+ * @param state
704
1080
  */
705
- static isPhotoFrame(): boolean {
706
- return !!inv<boolean>('0x86076AE35CBBE55F', rai());
1081
+ static setArtificialLightsState(state: boolean): void {
1082
+ inv<void>('0xB2797619A7C7747B', state);
707
1083
  }
708
1084
 
709
1085
  /**
710
- * @param p0
711
- * @param p1
712
- * @param p2
713
- * @param p3
714
- * @param p4
715
- * @param p5
716
- * @param p6
717
- * @param p7
718
- * @param p8
719
- * @param p9
720
- * @param p10
1086
+ * Possible values:
1087
+ * "CSM_ST_POINT"
1088
+ * "CSM_ST_LINEAR"
1089
+ * "CSM_ST_BOX3x3"
1090
+ * "CSM_ST_BOX4x4"
1091
+ * "CSM_ST_DITHER2_LINEAR"
1092
+ * "CSM_ST_CUBIC"
1093
+ * "CSM_ST_POISSON16"
1094
+ * "CSM_ST_SOFT8"
1095
+ * "CSM_ST_SOFT16"
1096
+ * "CSM_ST_SOFT32"
1097
+ * "CSM_ST_DITHER16_RPDB"
1098
+ * "CSM_ST_POISSON16_RPDB_GNORM"
1099
+ * "CSM_ST_HIGHRES_BOX4x4"
1100
+ * "CSM_ST_ESM"
1101
+ *
1102
+ * @param type
721
1103
  */
722
- static N_0x4D14AF567FC02885(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any, p8: any, p9: any, p10: any): void {
723
- inv<void>('0x4D14AF567FC02885', p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
1104
+ static cascadeShadowsSetShadowSampleType(type: string | null): void {
1105
+ inv<void>('0xCE4774E0F9AD48D1', type);
724
1106
  }
725
1107
 
726
1108
  /**
727
- * @param effectName
728
- * @returns
1109
+ * @param p0
729
1110
  */
730
- static animpostfxIsRunning(effectName: string | null): boolean {
731
- return !!inv<boolean>('0x4A123E85D7C4CA0B', effectName, rai());
1111
+ static N_0x519928DF02EB5101(p0: any): void {
1112
+ inv<void>('0x519928DF02EB5101', p0);
732
1113
  }
733
1114
 
734
1115
  /**
735
- * Used for script function RPG_GLOBAL_STATS__PRIVATE__ACTIVATE_STAT_FLAG - Quite and Inspiration Aura equip
736
- * Params: 0f, 2f, 2f
1116
+ * Gets set to 1 when GET_STATUS_OF_TAKE_HIGH_QUALITY_PHOTO = PHOTO_OPERATION_SUCCEEDED
737
1117
  *
738
1118
  * @param p0
739
- * @param p1
740
- * @param p2
741
1119
  */
742
- static setEntityAura(p0: number, p1: number, p2: number): void {
743
- inv<void>('0x249CD6B7285536F2', f(p0), f(p1), f(p2));
1120
+ static N_0x0D5B19C34068FEE7(p0: any): void {
1121
+ inv<void>('0x0D5B19C34068FEE7', p0);
744
1122
  }
745
1123
 
746
1124
  /**
747
- * ANIMPOSTFX_*
1125
+ * type must be less than or equal to 20
748
1126
  *
749
- * @param effectNameHash
750
- * @returns
1127
+ * @param entity
1128
+ * @param type
751
1129
  */
752
- static N_0xE75CDDEBF618C8FF(effectNameHash: string | number): boolean {
753
- return !!inv<boolean>('0xE75CDDEBF618C8FF', _h(effectNameHash), rai());
1130
+ static setLightsTypeForEntity(entity: Entity, type: number): void {
1131
+ inv<void>('0xAB72C67163DC4DB4', entity.handle, type);
754
1132
  }
755
1133
 
756
1134
  /**
757
- * @param pos
1135
+ * @param p0
1136
+ * @param p1
1137
+ * @param p2
1138
+ * @param p3
758
1139
  */
759
- static addBloodTrailSplat(pos: Vector3): void {
760
- inv<void>('0xF5E45CB1CF965D2D', f(pos.x), f(pos.y), f(pos.z));
1140
+ static N_0xD543487A1F12828F(p0: any, p1: any, p2: any, p3: any): void {
1141
+ inv<void>('0xD543487A1F12828F', p0, p1, p2, p3);
761
1142
  }
762
1143
 
763
1144
  /**
764
- * https://i.imgur.com/ULQU9US.jpg
765
- * More rounded and small puddle
766
- *
767
- * @param pos
768
- * @param unused
1145
+ * @param p0
769
1146
  */
770
- static addBloodPool(pos: Vector3, unused: boolean): void {
771
- inv<void>('0xFA2ECC78A6014D4F', f(pos.x), f(pos.y), f(pos.z), unused);
1147
+ static N_0xFF8018C778349234(p0: any): void {
1148
+ inv<void>('0xFF8018C778349234', p0);
772
1149
  }
773
1150
 
774
1151
  /**
775
- * Only used in finale2, smuggler2, winter4
776
- * _SET_CLOUD_A* - _SET_CLOUD_H*
1152
+ * Old name: _SET_HIDOF_ENV_BLUR_PARAMS
777
1153
  *
778
- * @param pos
779
- */
780
- static setCloudPosition(pos: Vector3): void {
781
- inv<void>('0x10C1767B93257480', f(pos.x), f(pos.y), f(pos.z));
782
- }
783
-
784
- /**
785
1154
  * @param p0
786
1155
  * @param p1
1156
+ * @param p2
1157
+ * @param p3
1158
+ * @param p4
1159
+ * @param p5
787
1160
  */
788
- static N_0xA04EF43030593ABC(p0: any, p1: any): void {
789
- inv<void>('0xA04EF43030593ABC', p0, p1);
1161
+ static setHidofOverride(p0: boolean, p1: boolean, p2: number, p3: number, p4: number, p5: number): void {
1162
+ inv<void>('0xCC23AA1A7CBFE840', p0, p1, f(p2), f(p3), f(p4), f(p5));
790
1163
  }
791
1164
 
792
1165
  /**
793
- * Called together with FREE_MEMORY_FOR_LOW_QUALITY_PHOTO
794
- *
795
- * @param p0
1166
+ * @param effectName
1167
+ * @param entity
1168
+ * @param offset
1169
+ * @param rot
1170
+ * @param boneIndex
1171
+ * @param scale
1172
+ * @param xAxis
1173
+ * @param yAxis
1174
+ * @param zAxis
796
1175
  * @returns
797
1176
  */
798
- static beginCreateLowQualityCopyOfPhoto(p0: number): boolean {
799
- return !!inv<boolean>('0x494A9874F17A7D50', p0, rai());
1177
+ static startParticleFxLoopedOnEntityBone(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
1178
+ return inv<number>('0xD3BA6EC7F2FBD5E9', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
800
1179
  }
801
1180
 
802
1181
  /**
803
- * @param player
1182
+ * Sets the checkpoint icon color.
1183
+ *
1184
+ * @param checkpoint
1185
+ * @param color
1186
+ * @param alpha
804
1187
  */
805
- static setPlayerAppearInPhoto(player: Player): void {
806
- inv<void>('0x75D568607909333E', player.handle);
1188
+ static setCheckpointRgba2(checkpoint: number, color: Color, alpha: number): void {
1189
+ inv<void>('0x99AFF17222D4DEB4', checkpoint, color.r, color.g, color.b, color.a, alpha);
807
1190
  }
808
1191
 
809
1192
  /**
810
- * @param checkpoint
811
- * @returns
1193
+ * nullsub, doesn't do anything (GTA5 leftover, there is no phone in RDR3)
1194
+ *
1195
+ * @param p0
1196
+ * @param photoRotation
812
1197
  */
813
- static doesCheckpointHaveFx(checkpoint: number): any {
814
- return inv<number>('0x4C11CCACB7C02B6E', checkpoint);
1198
+ static drawLowQualityPhotoToPhone(p0: boolean, photoRotation: number): void {
1199
+ inv<void>('0xF1142E5D64B47802', p0, photoRotation);
815
1200
  }
816
1201
 
817
1202
  /**
818
- * Creates blood pools for the given ped in some interval for a few seconds.
1203
+ * https://gfycat.com/meagerfaireyra
819
1204
  *
820
- * @param ped
1205
+ * @param entity
1206
+ * @param color
821
1207
  */
822
- static addBloodPoolsForPed(ped: Ped): void {
823
- inv<void>('0xDFCE8CE9F3EBE93F', ped.handle);
1208
+ static setLightsColorForEntity(entity: Entity, color: Color): void {
1209
+ inv<void>('0x6EC2A67962296F49', entity.handle, color.r, color.g, color.b, color.a);
824
1210
  }
825
1211
 
826
1212
  /**
827
- * @param texture
1213
+ * @param effectName
828
1214
  * @param ped
829
- * @param playerSlot
1215
+ * @param offset
1216
+ * @param rot
1217
+ * @param boneIndex
1218
+ * @param scale
1219
+ * @param axisX
1220
+ * @param axisY
1221
+ * @param axisZ
830
1222
  * @returns
831
1223
  */
832
- static pedshotGeneratePersonaPhoto(texture: string | null, ped: Ped, playerSlot: number): boolean {
833
- return !!inv<boolean>('0xD9C24F53631F2372', texture, ped.handle, playerSlot, rai());
1224
+ static startParticleFxNonLoopedOnPedBone2(effectName: string | null, ped: Ped, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, axisX: boolean, axisY: boolean, axisZ: boolean): any {
1225
+ return inv<number>('0xC695870B8A149B96', effectName, ped.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), axisX, axisY, axisZ);
834
1226
  }
835
1227
 
836
- /**
837
- * @returns
838
- */
839
- static queueOperationToCreateSortedListOfPhotos(): any {
840
- return inv<number>('0xA42EDF1E88734A7E');
1228
+ static N_0x981C7D863980FA51(): void {
1229
+ inv<void>('0x981C7D863980FA51');
841
1230
  }
842
1231
 
843
1232
  /**
844
1233
  * @param p0
1234
+ * @param p1
845
1235
  */
846
- static setRegionPhotoTakenStat(p0: string | null): void {
847
- inv<void>('0xD1031B83AC093BC7', p0);
1236
+ static N_0x9F6D859C80708B26(p0: boolean, p1: boolean): void {
1237
+ inv<void>('0x9F6D859C80708B26', p0, p1);
848
1238
  }
849
1239
 
850
1240
  /**
851
- * @param effectName
1241
+ * @param oldAsset
1242
+ * @param newAsset
852
1243
  */
853
- static animpostfxSetToUnload(effectName: string | null): void {
854
- inv<void>('0x37D7BDBA89F13959', effectName);
1244
+ static setParticleFxOverride(oldAsset: string | null, newAsset: string | null): void {
1245
+ inv<void>('0xBE711A169E9C7E95', oldAsset, newAsset);
855
1246
  }
856
1247
 
857
1248
  /**
858
- * @param proxyInteriorIndex
859
- * @returns
1249
+ * @param p0
1250
+ * @param p1
860
1251
  */
861
- static isProxyInteriorIndexArtificialLightsEnabled(proxyInteriorIndex: number): any {
862
- return inv<number>('0x113857D66A9CABE6', proxyInteriorIndex);
1252
+ static N_0xA0F4D12D6042F6D5(p0: any, p1: any): void {
1253
+ inv<void>('0xA0F4D12D6042F6D5', p0, p1);
863
1254
  }
864
1255
 
865
1256
  /**
866
- * @param p0
1257
+ * @param ptfxHandle
1258
+ * @param pos
1259
+ * @param rot
867
1260
  */
868
- static setPhotoInPhotomodeStat(p0: boolean): void {
869
- inv<void>('0xFA91736933AB3D93', p0);
1261
+ static setParticleFxLoopedOffsets(ptfxHandle: number, pos: Vector3, rot: Vector3): void {
1262
+ inv<void>('0xD3A4A95FC94FE83B', ptfxHandle, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z));
870
1263
  }
871
1264
 
872
1265
  /**
873
- * @param entity
874
- * @param intensity
1266
+ * @param p0
875
1267
  */
876
- static setLightsIntensityForEntity(entity: Entity, intensity: number): void {
877
- inv<void>('0x07C0F87AAC57F2E4', entity.handle, f(intensity));
1268
+ static disableStaticVegModifier(p0: string | number): void {
1269
+ inv<void>('0xDD0BC0EDCB2162F6', _h(p0));
878
1270
  }
879
1271
 
880
1272
  /**
881
- * @param entity
1273
+ * @param ptfxHandle
1274
+ * @param scale
882
1275
  */
883
- static updateLightsOnEntity(entity: Entity): void {
884
- inv<void>('0xBDBACB52A03CC760', entity.handle);
1276
+ static setParticleFxLoopedScale(ptfxHandle: number, scale: number): void {
1277
+ inv<void>('0x1A9E1C0D98D093B7', ptfxHandle, f(scale));
885
1278
  }
886
1279
 
887
1280
  /**
1281
+ * https://github.com/femga/rdr3_discoveries/blob/master/graphics/ptfx/ptfx_assets_non_looped.lua
1282
+ *
1283
+ * @param effectName
1284
+ * @param pos
1285
+ * @param rot
1286
+ * @param scale
1287
+ * @param eventType
1288
+ * @param bPeekOnly
1289
+ * @param bIsRegistered
888
1290
  * @returns
889
1291
  */
890
- static getStatusOfTakeHighQualityPhoto(): number {
891
- return inv<number>('0x4A3DA74C3CCB1725', rai());
1292
+ static startParticleFxNonLoopedAtCoord(effectName: string | null, pos: Vector3, rot: Vector3, scale: number, eventType: number, bPeekOnly: boolean, bIsRegistered: boolean): number {
1293
+ return inv<number>('0x2E80BF72EF7C87AC', effectName, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z), f(scale), eventType, bPeekOnly, bIsRegistered, rai());
892
1294
  }
893
1295
 
894
1296
  /**
1297
+ * @param p0
895
1298
  * @returns
896
1299
  */
897
- static N_0x285438C26C732F9D(): any {
898
- return inv<number>('0x285438C26C732F9D');
1300
+ static isStaticVegModifierEnabled(p0: string | number): any {
1301
+ return inv<number>('0xDE9BAD3292AA6D5E', _h(p0));
899
1302
  }
900
1303
 
901
1304
  /**
902
- * Sets a flag defining whether or not script draw commands should continue being drawn behind the pause menu. This is usually used for draw commands that are used with a world render target.
1305
+ * Creates blood pools for the given ped in some interval for a few seconds.
903
1306
  *
904
- * @param toggle
1307
+ * @param ped
905
1308
  */
906
- static setScriptGfxDrawBehindPausemenu(toggle: boolean): void {
907
- inv<void>('0x906B86E6D7896B9E', toggle);
1309
+ static addBloodPoolsForPed(ped: Ped): void {
1310
+ inv<void>('0xDFCE8CE9F3EBE93F', ped.handle);
908
1311
  }
909
1312
 
910
1313
  /**
911
- * @param p0
1314
+ * @param texture
1315
+ * @param ped
1316
+ * @param playerSlot
1317
+ * @returns
912
1318
  */
913
- static setDistrictPhotoTakenStat(p0: string | null): void {
914
- inv<void>('0x9937FACBBF267244', p0);
1319
+ static pedshotGeneratePersonaPhoto(texture: string | null, ped: Ped, playerSlot: number): boolean {
1320
+ return !!inv<boolean>('0xD9C24F53631F2372', texture, ped.handle, playerSlot, rai());
915
1321
  }
916
1322
 
917
1323
  /**
918
- * @param effectName
919
- * @param ped
920
- * @param offset
921
- * @param rot
922
- * @param boneIndex
923
- * @param scale
924
- * @param xAxis
925
- * @param yAxis
926
- * @param zAxis
927
1324
  * @returns
928
1325
  */
929
- static startParticleFxLoopedOnPedBone(effectName: string | null, ped: Ped, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
930
- return inv<number>('0xE689C1B1432BB8AF', effectName, ped.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
1326
+ static queueOperationToCreateSortedListOfPhotos(): any {
1327
+ return inv<number>('0xA42EDF1E88734A7E');
931
1328
  }
932
1329
 
933
1330
  /**
934
1331
  * @param p0
935
1332
  */
936
- static setPhotoStudioStat(p0: number): void {
937
- inv<void>('0x8E6AFF353C09652E', p0);
1333
+ static setRegionPhotoTakenStat(p0: string | null): void {
1334
+ inv<void>('0xD1031B83AC093BC7', p0);
938
1335
  }
939
1336
 
940
1337
  /**
941
1338
  * @param effectName
942
1339
  */
943
- static animpostfxStop(effectName: string | null): void {
944
- inv<void>('0xB4FD7446BAB2F394', effectName);
945
- }
946
-
947
- /**
948
- * @param p0
949
- * @param p1
950
- */
951
- static N_0xC489FE31AC726512(p0: any, p1: any): void {
952
- inv<void>('0xC489FE31AC726512', p0, p1);
1340
+ static animpostfxSetToUnload(effectName: string | null): void {
1341
+ inv<void>('0x37D7BDBA89F13959', effectName);
953
1342
  }
954
1343
 
955
1344
  /**
956
- * https://i.imgur.com/rPITUCV.jpg
957
- * More customizable and more like quadrants
958
- *
959
- * @param pos
960
- * @param p3
961
- * @param size
962
- * @param p5
963
- * @param permanent
964
- * @param p7
965
- * @param p8
1345
+ * @param proxyInteriorIndex
1346
+ * @returns
966
1347
  */
967
- static addBloodPool2(pos: Vector3, p3: number, size: number, p5: number, permanent: boolean, p7: number, p8: boolean): void {
968
- inv<void>('0xF708298675ABDC6A', f(pos.x), f(pos.y), f(pos.z), f(p3), f(size), f(p5), permanent, f(p7), p8);
1348
+ static isProxyInteriorIndexArtificialLightsEnabled(proxyInteriorIndex: number): any {
1349
+ return inv<number>('0x113857D66A9CABE6', proxyInteriorIndex);
969
1350
  }
970
1351
 
971
1352
  /**
972
- * p1: 0.3f in R* Scripts
973
- *
974
- * @param waypointRecording
975
- * @param p1
1353
+ * @param p0
976
1354
  */
977
- static bloodTrailForWaypoint(waypointRecording: string | null, p1: number): void {
978
- inv<void>('0xB9C92616929CC25D', waypointRecording, f(p1));
1355
+ static setPhotoInPhotomodeStat(p0: boolean): void {
1356
+ inv<void>('0xFA91736933AB3D93', p0);
979
1357
  }
980
1358
 
981
1359
  /**
982
- * @param ptfxHandle
983
- * @param range
1360
+ * @param entity
1361
+ * @param intensity
984
1362
  */
985
- static setParticleFxLoopedFarClipDist(ptfxHandle: number, range: number): void {
986
- inv<void>('0x9B04D471DA0AD7AA', ptfxHandle, f(range));
1363
+ static setLightsIntensityForEntity(entity: Entity, intensity: number): void {
1364
+ inv<void>('0x07C0F87AAC57F2E4', entity.handle, f(intensity));
987
1365
  }
988
1366
 
989
1367
  /**
990
- * @param p0
991
- * @param p1
1368
+ * @param entity
992
1369
  */
993
- static N_0x085C5B61A0114F32(p0: any, p1: any): void {
994
- inv<void>('0x085C5B61A0114F32', p0, p1);
1370
+ static updateLightsOnEntity(entity: Entity): void {
1371
+ inv<void>('0xBDBACB52A03CC760', entity.handle);
995
1372
  }
996
1373
 
997
1374
  /**
998
- * @param p0
1375
+ * @returns
999
1376
  */
1000
- static N_0x9F158A49B0D84C3C(p0: any): void {
1001
- inv<void>('0x9F158A49B0D84C3C', p0);
1377
+ static getStatusOfTakeHighQualityPhoto(): number {
1378
+ return inv<number>('0x4A3DA74C3CCB1725', rai());
1002
1379
  }
1003
1380
 
1004
1381
  /**
1005
1382
  * @returns
1006
1383
  */
1007
- static N_0x5C674EB487891F6B(): any {
1008
- return inv<number>('0x5C674EB487891F6B');
1384
+ static N_0x285438C26C732F9D(): any {
1385
+ return inv<number>('0x285438C26C732F9D');
1009
1386
  }
1010
1387
 
1011
1388
  /**
1012
- * Params: component - used in odriscolls1 and sean1 R* SP Script: COMPONENT_BINOCULARS_SCOPE01
1013
- * Triggers the binocular scaleform
1389
+ * Sets a flag defining whether or not script draw commands should continue being drawn behind the pause menu. This is usually used for draw commands that are used with a world render target.
1014
1390
  *
1015
- * @param component
1391
+ * @param toggle
1016
1392
  */
1017
- static N_0x21F00E08CBB5F37B(component: string | null): void {
1018
- inv<void>('0x21F00E08CBB5F37B', component);
1393
+ static setScriptGfxDrawBehindPausemenu(toggle: boolean): void {
1394
+ inv<void>('0x906B86E6D7896B9E', toggle);
1019
1395
  }
1020
1396
 
1021
1397
  /**
1022
- * Sets an unknown value related to timecycles.
1023
- *
1024
- * @param unk
1398
+ * @param p0
1025
1399
  */
1026
- static resetAdaptation(unk: number): void {
1027
- inv<void>('0x297B72E2AF094742', unk);
1400
+ static setDistrictPhotoTakenStat(p0: string | null): void {
1401
+ inv<void>('0x9937FACBBF267244', p0);
1028
1402
  }
1029
1403
 
1030
1404
  /**
1031
- * @param effectNameHash
1405
+ * @param effectName
1406
+ * @param ped
1407
+ * @param offset
1408
+ * @param rot
1409
+ * @param boneIndex
1410
+ * @param scale
1411
+ * @param xAxis
1412
+ * @param yAxis
1413
+ * @param zAxis
1414
+ * @returns
1032
1415
  */
1033
- static animpostfxPreloadPostfxByStackhash(effectNameHash: string | number): void {
1034
- inv<void>('0xF3E039322BFBD4D8', _h(effectNameHash));
1416
+ static startParticleFxLoopedOnPedBone(effectName: string | null, ped: Ped, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
1417
+ return inv<number>('0xE689C1B1432BB8AF', effectName, ped.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
1035
1418
  }
1036
1419
 
1037
1420
  /**
1038
- * @param effectNameHash
1039
- * @param p1
1040
- * @param p2
1041
- * @returns p3
1421
+ * @param p0
1042
1422
  */
1043
- static animpostfxHasEventTriggeredByStackhash(effectNameHash: string | number, p1: number, p2: boolean): [any, boolean] {
1044
- const result = inv<[number, number]>('0x9AB192A9EF980EED', _h(effectNameHash), p1, p2, pvi());
1045
- return [result[0], !!result[1]];
1423
+ static setPhotoStudioStat(p0: number): void {
1424
+ inv<void>('0x8E6AFF353C09652E', p0);
1046
1425
  }
1047
1426
 
1048
- static destroySwatchTextureDict(): void {
1049
- inv<void>('0xDAD7FB8402651654');
1427
+ /**
1428
+ * @param effectName
1429
+ */
1430
+ static animpostfxStop(effectName: string | null): void {
1431
+ inv<void>('0xB4FD7446BAB2F394', effectName);
1432
+ }
1433
+
1434
+ static resetPausedRenderphases(): void {
1435
+ inv<void>('0xCCD9AAD85E1B559E');
1050
1436
  }
1051
1437
 
1052
1438
  /**
1439
+ * @param unused
1053
1440
  * @returns
1054
1441
  */
1055
- static beginTakeHighQualityPhoto(): any {
1056
- return inv<number>('0xA15BFFC0A01B34E1');
1442
+ static saveHighQualityPhoto(unused: number): any {
1443
+ return inv<number>('0x57639FD876B68A91', unused);
1057
1444
  }
1058
1445
 
1059
1446
  /**
1060
- * Old name: _IS_TV_PLAYLIST_ITEM_PLAYING
1061
- *
1062
- * @param videoCliphash
1063
- * @returns
1447
+ * @param pos
1448
+ * @param p2
1064
1449
  */
1065
- static isTvshowCurrentlyPlaying(videoCliphash: string | number): boolean {
1066
- return !!inv<boolean>('0x4D562223E0EB65F3', _h(videoCliphash), rai());
1450
+ static setCloudLayer(pos: Vector2, p2: number): void {
1451
+ inv<void>('0xB8C984C0D47F4F07', f(pos.x), f(pos.y), p2);
1067
1452
  }
1068
1453
 
1069
1454
  /**
1070
1455
  * @param p0
1456
+ * @returns
1071
1457
  */
1072
- static N_0x8996FA6AD9FE4E90(p0: any): void {
1073
- inv<void>('0x8996FA6AD9FE4E90', p0);
1458
+ static N_0xEC3D8C228FE553D7(p0: boolean): boolean {
1459
+ return !!inv<boolean>('0xEC3D8C228FE553D7', p0, rai());
1074
1460
  }
1075
1461
 
1076
1462
  /**
1077
- * @param obj
1463
+ * *RESET**
1078
1464
  */
1079
- static removeDecalsFromObject(obj: Prop): void {
1080
- inv<void>('0xFB8972BAE0013140', obj.handle);
1465
+ static N_0x1460B644397453EB(): void {
1466
+ inv<void>('0x1460B644397453EB');
1081
1467
  }
1082
1468
 
1083
1469
  /**
1084
- * https://github.com/femga/rdr3_discoveries/blob/master/graphics/markers/marker_types.lua
1085
- * Old name: _DRAW_MARKER
1086
- *
1087
- * @param type
1088
- * @param pos
1089
- * @param direction
1090
- * @param rot
1091
- * @param scale
1092
- * @param color
1093
- * @param alpha
1094
- * @param bobUpAndDown
1095
- * @param faceCamera
1096
- * @param p19
1097
- * @param rotate
1098
- * @param textureDict
1099
- * @param textureName
1100
- * @param drawOnEnts
1470
+ * @param personaPhotoLocalCacheType
1101
1471
  */
1102
- static drawMarker(type: string | number, pos: Vector3, direction: Vector3, rot: Vector3, scale: Vector3, color: Color, alpha: number, bobUpAndDown: boolean, faceCamera: boolean, p19: number, rotate: boolean, textureDict: string | null, textureName: string | null, drawOnEnts: boolean): void {
1103
- inv<void>('0x2A32FAA57B937173', _h(type), f(pos.x), f(pos.y), f(pos.z), f(direction.x), f(direction.y), f(direction.z), f(rot.x), f(rot.y), f(rot.z), f(scale.x), f(scale.y), f(scale.z), color.r, color.g, color.b, color.a, alpha, bobUpAndDown, faceCamera, p19, rotate, textureDict, textureName, drawOnEnts);
1472
+ static pedshotSetPersonaPhotoType(personaPhotoLocalCacheType: number): void {
1473
+ inv<void>('0x196D3ACBEBA4A44B', personaPhotoLocalCacheType);
1104
1474
  }
1105
1475
 
1106
- /**
1107
- * @param r
1108
- * @param g
1109
- * @param b
1110
- */
1111
- static setParticleFxNonLoopedColour(r: number, g: number, b: number): void {
1112
- inv<void>('0x60B85BED6577A35B', f(r), f(g), f(b));
1476
+ static pedshotFinishCleanupData(): void {
1477
+ inv<void>('0xC2B8164C3BE871A4');
1478
+ }
1479
+
1480
+ static N_0x1C6306E5BC25C29C(): void {
1481
+ inv<void>('0x1C6306E5BC25C29C');
1113
1482
  }
1114
1483
 
1115
1484
  /**
1116
- * @param p0
1485
+ * @param pos
1117
1486
  */
1118
- static N_0xF5793BB386E1FF9C(p0: any): void {
1119
- inv<void>('0xF5793BB386E1FF9C', p0);
1487
+ static setCloudNoise(pos: Vector3): void {
1488
+ inv<void>('0xFE7966DF01452F32', f(pos.x), f(pos.y), f(pos.z));
1120
1489
  }
1121
1490
 
1122
1491
  /**
1123
- * Used in shop scripts for CATALOG_BOOK
1124
- * false = Normal -> [CATALOG_BOOK_SHUTDOWN]
1125
- * true = Trees flickering? -> [CATALOG_BOOK_OPEN]
1126
- *
1127
1492
  * @param p0
1128
1493
  */
1129
- static N_0x1A9F09AB458D49C6(p0: boolean): void {
1130
- inv<void>('0x1A9F09AB458D49C6', p0);
1494
+ static N_0xEB48CE48EEC41FD4(p0: any): void {
1495
+ inv<void>('0xEB48CE48EEC41FD4', p0);
1131
1496
  }
1132
1497
 
1133
1498
  /**
1134
- * @param effectName
1135
- * @param duration
1499
+ * Used in NET_CAMP_SPIRIT_ANIMAL_CLEAR_ANIMAL_VISIBILITY
1500
+ *
1501
+ * @param entity
1136
1502
  */
1137
- static animpostfxPlayTimed(effectName: string | null, duration: number): void {
1138
- inv<void>('0x3A9A281FF71249E9', effectName, duration);
1503
+ static N_0xC06F2F45A73EABCD(entity: Entity): void {
1504
+ inv<void>('0xC06F2F45A73EABCD', entity.handle);
1139
1505
  }
1140
1506
 
1141
1507
  /**
1142
1508
  * @param effectName
1143
- * @param entity
1144
- * @param offset
1509
+ * @param pos
1145
1510
  * @param rot
1146
- * @param boneIndex
1147
1511
  * @param scale
1148
1512
  * @param xAxis
1149
1513
  * @param yAxis
1150
1514
  * @param zAxis
1151
1515
  * @returns
1152
1516
  */
1153
- static startNetworkedParticleFxLoopedOnEntityBone(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
1154
- return inv<number>('0x9C56621462FFE7A6', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
1155
- }
1156
-
1157
- /**
1158
- * @param p0
1159
- * @param p1
1160
- * @param p2
1161
- */
1162
- static N_0x735762E8D7573E42(p0: any, p1: any, p2: any): void {
1163
- inv<void>('0x735762E8D7573E42', p0, p1, p2);
1164
- }
1165
-
1166
- /**
1167
- * Only used in guama1 R* Script
1168
- * Disables lod/distant lights when BOOL is set to true
1169
- *
1170
- * @param disable
1171
- */
1172
- static disableFarArtificialLights(disable: boolean): void {
1173
- inv<void>('0xCD284E2F6AC27EE9', disable);
1517
+ static startNetworkedParticleFxNonLoopedAtCoord(effectName: string | null, pos: Vector3, rot: Vector3, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): boolean {
1518
+ return !!inv<boolean>('0xFB97618457994A62', effectName, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z), f(scale), xAxis, yAxis, zAxis, rai());
1174
1519
  }
1175
1520
 
1176
1521
  /**
1177
- * @param decal
1522
+ * @returns
1178
1523
  */
1179
- static removeDecal(decal: number): void {
1180
- inv<void>('0x49A720552EB0BB88', decal);
1524
+ static getPhotoModeExposure(): number {
1525
+ return inv<number>('0x06C0D8BB6B04A709', raf());
1181
1526
  }
1182
1527
 
1183
1528
  /**
1184
- * Hardcoded to always set x to 1280 and y to 720.
1529
+ * _SET_PARTICLE_FX_LOOPED_FA* - _SET_PARTICLE_FX_LOOPED_OF*
1185
1530
  *
1186
- * @returns x; y
1531
+ * @param ptfxHandle
1532
+ * @param scalar
1187
1533
  */
1188
- static getScreenResolution(): [number, number] {
1189
- const result = inv<[number, number]>('0x66773C92835D0909', pvi(), pvi());
1190
- return [result[0], result[1]];
1534
+ static setParticleFxLoopedUpdateDistantSmoke(ptfxHandle: number, scalar: number): void {
1535
+ inv<void>('0x9DDC222D85D5AF2A', ptfxHandle, f(scalar));
1191
1536
  }
1192
1537
 
1193
1538
  /**
1194
- * ANIMPOSTFX_*
1539
+ * Known effects: MP_Trans_SceneToPhoto
1540
+ * MP_Trans_WinLose
1541
+ * SpectateFilter
1542
+ * MP_CharacterCreatorPhoto
1543
+ * MP_Trans_PhotoToScene
1544
+ * InterrogationHit
1195
1545
  *
1196
1546
  * @param effectName
1547
+ * @returns
1197
1548
  */
1198
- static N_0xA201A3D0AC087C37(effectName: string | null): void {
1199
- inv<void>('0xA201A3D0AC087C37', effectName);
1549
+ static animpostfxGetStackhash(effectName: string | null): number {
1550
+ return (inv<number>('0x842CCC9491FFCD9B', effectName, rai())) & 0xFFFFFFFF;
1200
1551
  }
1201
1552
 
1202
1553
  /**
1203
- * @param modifierName
1204
- * @param transitionBlend
1554
+ * @param height
1205
1555
  */
1206
- static setTransitionTimecycleModifier(modifierName: string | null, transitionBlend: number): void {
1207
- inv<void>('0xFF927A09F481D80C', modifierName, f(transitionBlend));
1208
- }
1209
-
1210
- static enableEntitymask(): void {
1211
- inv<void>('0xFAAD23DE7A54FC14');
1556
+ static setCloudHeight(height: number): void {
1557
+ inv<void>('0xC332C91388F5580B', f(height));
1212
1558
  }
1213
1559
 
1214
1560
  /**
1215
- * fxName: see data_0/data/effects/ptfx/fxlists/
1561
+ * https://imgur.com/a/I2swSDJ Old name: _SET_PICKUP_OBJECT_GLOW_ENABLED
1216
1562
  *
1217
- * @param fxName
1218
- */
1219
- static useParticleFxAsset(fxName: string | null): void {
1220
- inv<void>('0xA10DB07FC234DD12', fxName);
1221
- }
1222
-
1223
- static animpostfxStopAll(): void {
1224
- inv<void>('0x66560A0D4C64FD21');
1225
- }
1226
-
1227
- /**
1228
- * @param pickup
1563
+ * @param object
1229
1564
  * @param toggle
1230
1565
  */
1231
- static blockPickupPlacementLight(pickup: Pickup, toggle: boolean): void {
1232
- inv<void>('0x0552AA3FFC5B87AA', pickup.handle, toggle);
1566
+ static setPickupLight(object: Prop, toggle: boolean): void {
1567
+ inv<void>('0x7DFB49BCDB73089A', object.handle, toggle);
1233
1568
  }
1234
1569
 
1235
1570
  /**
1236
- * ANIMPOSTFX_*
1237
- *
1238
- * @param effectNameHash
1571
+ * @param entity
1239
1572
  */
1240
- static N_0x38D9D50F2085E9B3(effectNameHash: string | number): void {
1241
- inv<void>('0x38D9D50F2085E9B3', _h(effectNameHash));
1573
+ static removeParticleFxFromEntity(entity: Entity): void {
1574
+ inv<void>('0x92884B4A49D81325', entity.handle);
1242
1575
  }
1243
1576
 
1244
1577
  /**
1245
- * Used for script function RPG_GLOBAL_STATS__PRIVATE__DEACTIVATE_STAT_FLAG - Inspiration Aura unequip
1578
+ * @param ptfxHandle
1579
+ * @param p1
1246
1580
  */
1247
- static resetEntityAura(): void {
1248
- inv<void>('0xAF4D239B8903FCBE');
1581
+ static stopParticleFxLooped(ptfxHandle: number, p1: boolean): void {
1582
+ inv<void>('0x22970F3A088B133B', ptfxHandle, p1);
1249
1583
  }
1250
1584
 
1251
1585
  /**
1252
- * @param p0
1586
+ * p1: AMB_ANN_COAL_CHUTE_DIVE, AMB_ANN_COAL_CHUTE
1587
+ * p2: EMIT
1588
+ * p3: either 0.0f or 1.0f
1589
+ *
1590
+ * @param entity
1253
1591
  * @param p1
1254
1592
  * @param p2
1255
1593
  * @param p3
1256
- * @param p4
1257
- * @param p5
1258
- * @param p6
1259
- * @param p7
1260
- * @param p8
1261
- * @param p9
1262
- * @param p10
1263
- * @param p11
1264
- * @param p12
1265
- * @param p13
1266
- * @param p14
1267
- * @param p15
1268
- * @param p16
1269
- * @param p17
1270
- * @param p18
1271
- * @param p19
1272
- * @param p20
1273
- * @param p21
1274
- * @returns
1275
1594
  */
1276
- static addDecal(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any, p7: any, p8: any, p9: any, p10: any, p11: any, p12: any, p13: any, p14: any, p15: any, p16: any, p17: any, p18: any, p19: any, p20: any, p21: any): number {
1277
- return inv<number>('0x57CB267624EF85C0', p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, rai());
1595
+ static N_0x4FB67D172C4476F3(entity: Entity, p1: string | null, p2: string | null, p3: number): void {
1596
+ inv<void>('0x4FB67D172C4476F3', entity.handle, p1, p2, f(p3));
1278
1597
  }
1279
1598
 
1280
1599
  /**
1281
- * _SET_D* or _SET_E*
1600
+ * @param typeHash
1601
+ * @param pos1
1602
+ * @param pos2
1603
+ * @param radius
1604
+ * @param color
1605
+ * @param alpha
1606
+ * @param reserved
1607
+ * @returns
1282
1608
  */
1283
- static N_0xB032C085D9A03907(): void {
1284
- inv<void>('0xB032C085D9A03907');
1609
+ static createCheckpointWithNamehash(typeHash: string | number, pos1: Vector3, pos2: Vector3, radius: number, color: Color, alpha: number, reserved: number): number {
1610
+ return inv<number>('0x175668836B44CBB0', _h(typeHash), f(pos1.x), f(pos1.y), f(pos1.z), f(pos2.x), f(pos2.y), f(pos2.z), f(radius), color.r, color.g, color.b, color.a, alpha, reserved, rai());
1611
+ }
1612
+
1613
+ static disableEntitymask(): void {
1614
+ inv<void>('0x5C9978A2A3DC3D0D');
1285
1615
  }
1286
1616
 
1287
1617
  /**
1288
- * Returns handle to be used with REMOVE_GRASS_CULL_SPHERE
1618
+ * Returns iNumPixels, iPixelsVisible
1289
1619
  *
1290
- * @param pos
1291
- * @param p3
1292
- * @param p4
1620
+ * @param iTrackedPoint
1293
1621
  * @returns
1294
1622
  */
1295
- static setGrassCullSphere(pos: Vector3, p3: number, p4: number): number {
1296
- return inv<number>('0x27219300C36A8D40', f(pos.x), f(pos.y), f(pos.z), f(p3), p4, rai());
1297
- }
1298
-
1299
- static N_0xA21AF60C9F99CCC5(): void {
1300
- inv<void>('0xA21AF60C9F99CCC5');
1623
+ static N_0xDFE332A5DA6FE7C9(iTrackedPoint: number): number {
1624
+ return inv<number>('0xDFE332A5DA6FE7C9', iTrackedPoint, rai());
1301
1625
  }
1302
1626
 
1303
1627
  /**
1304
- * @param effectName
1305
1628
  * @param entity
1306
- * @param offset
1307
- * @param rot
1308
- * @param scale
1309
- * @param xAxis
1310
- * @param yAxis
1311
- * @param zAxis
1312
- * @returns
1629
+ * @returns layer0; layer1; layer2; layer3
1313
1630
  */
1314
- static startParticleFxLoopedOnEntity(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
1315
- return inv<number>('0xBD41E1440CE39800', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), f(scale), xAxis, yAxis, zAxis, rai());
1631
+ static setEntityMaskLayers(entity: Entity): [number, number, number, number] {
1632
+ const result = inv<[number, number, number, number]>('0xE92012611461A42A', entity.handle, pvf(), pvf(), pvf(), pvf());
1633
+ return [result[0], result[1], result[2], result[3]];
1316
1634
  }
1317
1635
 
1318
1636
  /**
1319
- * 0 = succeeded
1320
- * 1 = getting status
1321
- * 2 = failed
1322
- *
1637
+ * @param point
1323
1638
  * @returns
1324
1639
  */
1325
- static getStatusOfSortedListOperation(): number {
1326
- return inv<number>('0xB28894CD7408BD0C', rai());
1640
+ static isTrackedPointVisible(point: number): boolean {
1641
+ return !!inv<boolean>('0xCBB056BA159FB48D', point, rai());
1327
1642
  }
1328
1643
 
1329
- /**
1330
- * @returns
1331
- */
1332
- static getPhotoModeContrast(): number {
1333
- return inv<number>('0x98F4154989B81EC6', raf());
1644
+ static clearTimecycleModifier(): void {
1645
+ inv<void>('0x0E3F4AF2D63491FB');
1334
1646
  }
1335
1647
 
1336
1648
  /**
1337
- * @param pos
1649
+ * Closes the the binocular scaleform
1338
1650
  */
1339
- static addBloodTrailPoint(pos: Vector3): void {
1340
- inv<void>('0xDD9DC1AB63D513CE', f(pos.x), f(pos.y), f(pos.z));
1651
+ static N_0x5AC6E0FA028369DE(): void {
1652
+ inv<void>('0x5AC6E0FA028369DE');
1341
1653
  }
1342
1654
 
1343
1655
  /**
1344
- * Returns whether the 'killFX' setting is enabled. ANIMPOSTFX_*
1656
+ * ANIMPOSTFX_*
1345
1657
  *
1346
- * @returns
1658
+ * @param effectNameHash
1347
1659
  */
1348
- static N_0xFF584F097C17FA8F(): boolean {
1349
- return !!inv<boolean>('0xFF584F097C17FA8F', rai());
1660
+ static N_0xC76FC4C2FC5F4405(effectNameHash: string | number): void {
1661
+ inv<void>('0xC76FC4C2FC5F4405', _h(effectNameHash));
1350
1662
  }
1351
1663
 
1352
1664
  /**
1353
- * Old name: _GET_STATUS_OF_DRAW_LOW_QUALITY_PHOTO
1354
- *
1355
- * @param p0
1356
- * @returns
1665
+ * @param effectName
1357
1666
  */
1358
- static getStatusOfCreateLowQualityCopyOfPhoto(p0: any): number {
1359
- return inv<number>('0x13430D3D5A45F14B', p0, rai());
1667
+ static animpostfxStopTag(effectName: string | null): void {
1668
+ inv<void>('0xAD74C22A541AB987', effectName);
1360
1669
  }
1361
1670
 
1362
1671
  /**
1363
- * @param effectName
1672
+ * Used in CREATE_BEZIER_BLOOD_TRAIL_OF_TYPE
1673
+ * *ENABLE**
1364
1674
  */
1365
- static animpostfxClearEffect(effectName: string | null): void {
1366
- inv<void>('0xC5CB91D65852ED7E', effectName);
1675
+ static N_0x812C1563185C6FB2(): void {
1676
+ inv<void>('0x812C1563185C6FB2');
1367
1677
  }
1368
1678
 
1369
- static pedshotInitCleanupData(): void {
1370
- inv<void>('0x55285F885F662169');
1679
+ /**
1680
+ * @param posseId
1681
+ */
1682
+ static setPosseIdForPhoto(posseId: any): void {
1683
+ inv<void>('0x564837D4A9EDE296', posseId);
1371
1684
  }
1372
1685
 
1373
1686
  /**
1374
- * @param vegModifierHandle
1375
- * @param p1
1687
+ * Sets the checkpoint color.
1688
+ *
1689
+ * @param checkpoint
1690
+ * @param color
1691
+ * @param alpha
1376
1692
  */
1377
- static removeVegModifierSphere(vegModifierHandle: number, p1: number): void {
1378
- inv<void>('0x9CF1836C03FB67A2', vegModifierHandle, p1);
1693
+ static setCheckpointRgba(checkpoint: number, color: Color, alpha: number): void {
1694
+ inv<void>('0xCAAFC225E33B1D15', checkpoint, color.r, color.g, color.b, color.a, alpha);
1379
1695
  }
1380
1696
 
1381
1697
  /**
1382
- * @param p0
1698
+ * Health Core Effect Filter Potency: p1 = 1
1699
+ * Stamina Core Effect Filter Potency: p1 = 2
1700
+ * Multiple Core Effect Filter Potency: p1 = 3
1701
+ *
1702
+ * @param effectName
1703
+ * @param p1
1704
+ * @param potency
1383
1705
  */
1384
- static setStatePhotoTakenStat(p0: string | null): void {
1385
- inv<void>('0x8952E857696B8A79', p0);
1706
+ static animpostfxSetPotency(effectName: string | null, p1: number, potency: number): void {
1707
+ inv<void>('0xF972F0AB16DC5260', effectName, p1, f(potency));
1386
1708
  }
1387
1709
 
1388
1710
  /**
1389
- * @param ptfxHandle
1390
- * @param alpha
1711
+ * @returns
1391
1712
  */
1392
- static setParticleFxLoopedAlpha(ptfxHandle: number, alpha: number): void {
1393
- inv<void>('0x88786E76234F7054', ptfxHandle, f(alpha));
1713
+ static pedshotIsAvailable(): any {
1714
+ return inv<number>('0xAF6E67D073D2DCE2');
1394
1715
  }
1395
1716
 
1396
1717
  /**
1397
1718
  * @param p0
1398
- * @param p1
1399
- * @param p2
1400
- * @param p3
1401
- * @returns
1402
1719
  */
1403
- static N_0xA15CCAB8AD038291(p0: any, p1: any, p2: any, p3: any): any {
1404
- return inv<number>('0xA15CCAB8AD038291', p0, p1, p2, p3);
1720
+ static N_0xD9BC98B55BCFAA9B(p0: any): void {
1721
+ inv<void>('0xD9BC98B55BCFAA9B', p0);
1405
1722
  }
1406
1723
 
1407
1724
  /**
1408
- * @param entity
1725
+ * @param pos
1726
+ * @param xScale
1727
+ * @param yScale
1728
+ * @param rotation
1729
+ * @param color
1730
+ * @param alpha
1409
1731
  */
1410
- static removeEntityFromEntityMask(entity: Entity): void {
1411
- inv<void>('0x56A786E87FF53478', entity.handle);
1732
+ static drawTvChannel(pos: Vector2, xScale: number, yScale: number, rotation: number, color: Color, alpha: number): void {
1733
+ inv<void>('0xC0A145540254A840', f(pos.x), f(pos.y), f(xScale), f(yScale), f(rotation), color.r, color.g, color.b, color.a, alpha);
1412
1734
  }
1413
1735
 
1414
1736
  /**
1415
- * @param p0
1416
- * @param p1
1417
- * @param p2
1737
+ * @param handle
1418
1738
  */
1419
- static setParticleFxNonLoopedEmitterScale(p0: number, p1: number, p2: number): void {
1420
- inv<void>('0x56C392C2BD78B024', f(p0), f(p1), f(p2));
1739
+ static removeGrassCullSphere(handle: number): void {
1740
+ inv<void>('0xAE7BF7CA9E4BA48D', handle);
1421
1741
  }
1422
1742
 
1423
1743
  /**
1424
- * @param effectNameHash
1744
+ * @param slots
1425
1745
  * @returns
1426
1746
  */
1427
- static animpostfxIsStackhashPlaying(effectNameHash: string | number): any {
1428
- return inv<number>('0xEEF83A759AE06A27', _h(effectNameHash));
1747
+ static createSwatchTextureDict(slots: number): any {
1748
+ return inv<number>('0x3D084D5568FB4028', slots);
1429
1749
  }
1430
1750
 
1431
1751
  /**
1432
- * @param p0
1752
+ * _GET_C* - _GET_E*
1753
+ *
1754
+ * @returns
1433
1755
  */
1434
- static N_0x503941F65DBA24EC(p0: any): void {
1435
- inv<void>('0x503941F65DBA24EC', p0);
1756
+ static getModifiedVisibilityDistance(): number {
1757
+ return inv<number>('0x25CA89B2A39DCC69', raf());
1436
1758
  }
1437
1759
 
1438
1760
  /**
1761
+ * nullsub, doesn't do anything
1762
+ *
1439
1763
  * @param p0
1440
- * @param p1
1441
- * @param p2
1442
- * @param p3
1443
- * @param p4
1444
- * @param p5
1445
- * @param p6
1446
1764
  */
1447
- static N_0x48FE0DB54045B975(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any): void {
1448
- inv<void>('0x48FE0DB54045B975', p0, p1, p2, p3, p4, p5, p6);
1449
- }
1450
-
1451
- static cascadeShadowsClearShadowSampleType(): void {
1452
- inv<void>('0xF7C29D7C12C36F03');
1765
+ static N_0x94B261F1F35293E1(p0: any): void {
1766
+ inv<void>('0x94B261F1F35293E1', p0);
1453
1767
  }
1454
1768
 
1455
1769
  /**
1456
- * Draws a rectangle on the screen. -x: The relative X point of the center of the rectangle. (0.0-1.0, 0.0 is the left edge of the screen, 1.0 is the right edge of the screen) -y: The relative Y point of the center of the rectangle. (0.0-1.0, 0.0 is the top edge of the screen, 1.0 is the bottom edge of the screen) -width: The relative width of the rectangle. (0.0-1.0, 1.0 means the whole screen width) -height: The relative height of the rectangle. (0.0-1.0, 1.0 means the whole screen height) -R: Red part of the color. (0-255) -G: Green part of the color. (0-255) -B: Blue part of the color. (0-255) -A: Alpha part of the color. (0-255, 0 means totally transparent, 255 means totally opaque)
1770
+ * Probably changes tvs from being a 3d audio to being "global" audio
1457
1771
  *
1458
- * @param x
1459
- * @param y
1460
- * @param width
1461
- * @param height
1462
- * @param color
1463
- * @param alpha
1464
- * @param p8
1465
- * @param p9
1772
+ * @param toggle
1466
1773
  */
1467
- static drawRect(x: number, y: number, width: number, height: number, color: Color, alpha: number, p8: boolean, p9: boolean): void {
1468
- inv<void>('0x405224591DF02025', f(x), f(y), f(width), f(height), color.r, color.g, color.b, color.a, alpha, p8, p9);
1774
+ static setTvAudioFrontend(toggle: boolean): void {
1775
+ inv<void>('0x64437C98FCC5F291', toggle);
1469
1776
  }
1470
1777
 
1471
1778
  /**
1472
- * @param tvChannel
1473
- * @param playlistName
1474
- * @param restart
1779
+ * @returns
1475
1780
  */
1476
- static setTvChannelPlaylist(tvChannel: number, playlistName: string | null, restart: boolean): void {
1477
- inv<void>('0xDEC6B25F5DC8925B', tvChannel, playlistName, restart);
1781
+ static getTimecycleTransitionModifierIndex(): number {
1782
+ return inv<number>('0x2DA67BA3C8A6755D', rai());
1478
1783
  }
1479
1784
 
1480
1785
  /**
1481
- * @param checkpoint
1786
+ * @param ptfxHandle
1787
+ * @param propertyName
1788
+ * @param amount
1789
+ * @param noNetwork
1482
1790
  */
1483
- static deleteCheckpoint(checkpoint: number): void {
1484
- inv<void>('0x0DED5B0C8EBAAE12', checkpoint);
1791
+ static setParticleFxLoopedEvolution(ptfxHandle: number, propertyName: string | null, amount: number, noNetwork: boolean): void {
1792
+ inv<void>('0x3674F389B0FACD80', ptfxHandle, propertyName, f(amount), noNetwork);
1485
1793
  }
1486
1794
 
1487
1795
  /**
1488
- * *DISABLE**
1489
- *
1490
- * @param p0
1796
+ * @param effectName
1797
+ * @returns
1491
1798
  */
1492
- static N_0xFB680A9B33D0EDBE(p0: boolean): void {
1493
- inv<void>('0xFB680A9B33D0EDBE', p0);
1799
+ static animpostfxHasLoaded(effectName: string | null): any {
1800
+ return inv<number>('0xBF2DD155B2ADCD0A', effectName);
1494
1801
  }
1495
1802
 
1496
1803
  /**
1804
+ * @param decal
1497
1805
  * @returns
1498
1806
  */
1499
- static N_0xC28F62AC9774FC1B(): any {
1500
- return inv<number>('0xC28F62AC9774FC1B');
1807
+ static isDecalAlive(decal: number): boolean {
1808
+ return !!inv<boolean>('0x3E4B4E5CF5D3EEB5', decal, rai());
1501
1809
  }
1502
1810
 
1503
1811
  /**
1504
- * @param p1
1505
- * @param p2
1506
- * @param p3
1507
- * @returns p0
1812
+ * @param p0
1508
1813
  */
1509
- static loadMissionCreatorPhoto(p1: any, p2: any, p3: any): [boolean, number] {
1510
- const result = inv<[boolean, number]>('0x84F0BA7462FF8D58', pvi(), p1, p2, p3, rai());
1511
- return [!!result[0], result[1]];
1814
+ static N_0x453D16D41FC51D3E(p0: boolean): void {
1815
+ inv<void>('0x453D16D41FC51D3E', p0);
1512
1816
  }
1513
1817
 
1514
1818
  /**
1515
- * @param entity
1516
- * @returns layer0; layer1; layer2; layer3
1819
+ * @param p0
1820
+ * @param p1
1821
+ * @param p2
1822
+ * @param p3
1823
+ * @param p4
1824
+ * @param p5
1825
+ * @param p6
1826
+ * @returns
1517
1827
  */
1518
- static getEntityMaskLayers(entity: Entity): [boolean, number, number, number, number] {
1519
- const result = inv<[boolean, number, number, number, number]>('0xE8A8378BF651079C', entity.handle, pvf(), pvf(), pvf(), pvf(), rai());
1520
- return [!!result[0], result[1], result[2], result[3], result[4]];
1828
+ static N_0xE63D68F455CA0B47(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any, p6: any): any {
1829
+ return inv<number>('0xE63D68F455CA0B47', p0, p1, p2, p3, p4, p5, p6);
1521
1830
  }
1522
1831
 
1523
1832
  /**
1524
- * @param ped
1525
- * @param p1
1526
- * @param size
1527
- * @param p3
1833
+ * @param pos
1834
+ * @param colorR
1835
+ * @param colorG
1836
+ * @param colorB
1837
+ * @param range
1838
+ * @param intensity
1528
1839
  */
1529
- static addBloodPoolsForPedWithParams(ped: Ped, p1: number, size: number, p3: number): void {
1530
- inv<void>('0xC349EE1E6EFA494B', ped.handle, f(p1), f(size), f(p3));
1840
+ static drawLightWithRange(pos: Vector3, colorR: number, colorG: number, colorB: number, range: number, intensity: number): void {
1841
+ inv<void>('0xD2D9E04C0DF927F4', f(pos.x), f(pos.y), f(pos.z), colorR, colorG, colorB, f(range), f(intensity));
1531
1842
  }
1532
1843
 
1533
1844
  /**
@@ -1695,299 +2006,125 @@ export class Graphics {
1695
2006
  return inv<number>('0xBD3324281E8B9933', volume.handle, p1, flags, p3, rai());
1696
2007
  }
1697
2008
 
1698
- /**
1699
- * @param p0
1700
- */
1701
- static N_0xFF8018C778349234(p0: any): void {
1702
- inv<void>('0xFF8018C778349234', p0);
1703
- }
1704
-
1705
- /**
1706
- * Old name: _SET_HIDOF_ENV_BLUR_PARAMS
1707
- *
1708
- * @param p0
1709
- * @param p1
1710
- * @param p2
1711
- * @param p3
1712
- * @param p4
1713
- * @param p5
1714
- */
1715
- static setHidofOverride(p0: boolean, p1: boolean, p2: number, p3: number, p4: number, p5: number): void {
1716
- inv<void>('0xCC23AA1A7CBFE840', p0, p1, f(p2), f(p3), f(p4), f(p5));
1717
- }
1718
-
1719
- /**
1720
- * @param effectName
1721
- * @param entity
1722
- * @param offset
1723
- * @param rot
1724
- * @param boneIndex
1725
- * @param scale
1726
- * @param xAxis
1727
- * @param yAxis
1728
- * @param zAxis
1729
- * @returns
1730
- */
1731
- static startParticleFxLoopedOnEntityBone(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, xAxis: boolean, yAxis: boolean, zAxis: boolean): number {
1732
- return inv<number>('0xD3BA6EC7F2FBD5E9', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), xAxis, yAxis, zAxis, rai());
1733
- }
1734
-
1735
- /**
1736
- * Sets the checkpoint icon color.
1737
- *
1738
- * @param checkpoint
1739
- * @param color
1740
- * @param alpha
1741
- */
1742
- static setCheckpointRgba2(checkpoint: number, color: Color, alpha: number): void {
1743
- inv<void>('0x99AFF17222D4DEB4', checkpoint, color.r, color.g, color.b, color.a, alpha);
1744
- }
1745
-
1746
- /**
1747
- * nullsub, doesn't do anything (GTA5 leftover, there is no phone in RDR3)
1748
- *
1749
- * @param p0
1750
- * @param photoRotation
1751
- */
1752
- static drawLowQualityPhotoToPhone(p0: boolean, photoRotation: number): void {
1753
- inv<void>('0xF1142E5D64B47802', p0, photoRotation);
1754
- }
1755
-
1756
- /**
1757
- * https://gfycat.com/meagerfaireyra
1758
- *
1759
- * @param entity
1760
- * @param color
1761
- */
1762
- static setLightsColorForEntity(entity: Entity, color: Color): void {
1763
- inv<void>('0x6EC2A67962296F49', entity.handle, color.r, color.g, color.b, color.a);
1764
- }
1765
-
1766
- /**
1767
- * @param effectName
1768
- * @param ped
1769
- * @param offset
1770
- * @param rot
1771
- * @param boneIndex
1772
- * @param scale
1773
- * @param axisX
1774
- * @param axisY
1775
- * @param axisZ
1776
- * @returns
1777
- */
1778
- static startParticleFxNonLoopedOnPedBone2(effectName: string | null, ped: Ped, offset: Vector3, rot: Vector3, boneIndex: number, scale: number, axisX: boolean, axisY: boolean, axisZ: boolean): any {
1779
- return inv<number>('0xC695870B8A149B96', effectName, ped.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), boneIndex, f(scale), axisX, axisY, axisZ);
1780
- }
1781
-
1782
- static N_0x981C7D863980FA51(): void {
1783
- inv<void>('0x981C7D863980FA51');
1784
- }
1785
-
1786
- /**
1787
- * @param p0
1788
- * @param p1
1789
- */
1790
- static N_0x9F6D859C80708B26(p0: boolean, p1: boolean): void {
1791
- inv<void>('0x9F6D859C80708B26', p0, p1);
1792
- }
1793
-
1794
- /**
1795
- * @param oldAsset
1796
- * @param newAsset
1797
- */
1798
- static setParticleFxOverride(oldAsset: string | null, newAsset: string | null): void {
1799
- inv<void>('0xBE711A169E9C7E95', oldAsset, newAsset);
1800
- }
1801
-
1802
- /**
1803
- * @param p0
1804
- * @param p1
1805
- */
1806
- static N_0xA0F4D12D6042F6D5(p0: any, p1: any): void {
1807
- inv<void>('0xA0F4D12D6042F6D5', p0, p1);
1808
- }
1809
-
1810
- /**
1811
- * @param ptfxHandle
1812
- * @param pos
1813
- * @param rot
1814
- */
1815
- static setParticleFxLoopedOffsets(ptfxHandle: number, pos: Vector3, rot: Vector3): void {
1816
- inv<void>('0xD3A4A95FC94FE83B', ptfxHandle, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z));
1817
- }
1818
-
1819
- /**
1820
- * @param p0
1821
- */
1822
- static disableStaticVegModifier(p0: string | number): void {
1823
- inv<void>('0xDD0BC0EDCB2162F6', _h(p0));
1824
- }
1825
-
1826
- /**
1827
- * @param ptfxHandle
1828
- * @param scale
1829
- */
1830
- static setParticleFxLoopedScale(ptfxHandle: number, scale: number): void {
1831
- inv<void>('0x1A9E1C0D98D093B7', ptfxHandle, f(scale));
1832
- }
1833
-
1834
- /**
1835
- * https://github.com/femga/rdr3_discoveries/blob/master/graphics/ptfx/ptfx_assets_non_looped.lua
1836
- *
1837
- * @param effectName
1838
- * @param pos
1839
- * @param rot
1840
- * @param scale
1841
- * @param eventType
1842
- * @param bPeekOnly
1843
- * @param bIsRegistered
1844
- * @returns
1845
- */
1846
- static startParticleFxNonLoopedAtCoord(effectName: string | null, pos: Vector3, rot: Vector3, scale: number, eventType: number, bPeekOnly: boolean, bIsRegistered: boolean): number {
1847
- return inv<number>('0x2E80BF72EF7C87AC', effectName, f(pos.x), f(pos.y), f(pos.z), f(rot.x), f(rot.y), f(rot.z), f(scale), eventType, bPeekOnly, bIsRegistered, rai());
1848
- }
1849
-
1850
- /**
1851
- * @param p0
1852
- * @returns
1853
- */
1854
- static isStaticVegModifierEnabled(p0: string | number): any {
1855
- return inv<number>('0xDE9BAD3292AA6D5E', _h(p0));
1856
- }
1857
-
1858
- /**
1859
- * https://github.com/femga/rdr3_discoveries/blob/master/graphics/timecycles
1860
- *
1861
- * @param modifierName
1862
- */
1863
- static setTimecycleModifier(modifierName: string | null): void {
1864
- inv<void>('0xFA08722A5EA82DA7', modifierName);
1865
- }
1866
-
1867
- /**
1868
- * @param strength
1869
- */
1870
- static setTimecycleModifierStrength(strength: number): void {
1871
- inv<void>('0xFDB74C9CC54C3F37', f(strength));
1872
- }
1873
-
1874
- /**
1875
- * @param toggle
1876
- */
1877
- static togglePausedRenderphases(toggle: boolean): void {
1878
- inv<void>('0xEF9E1C45732F55FA', toggle);
1879
- }
1880
-
1881
- /**
1882
- * R* Script spd_agnesdow1: p0 = SPD_AGNES_DOWD_01
1883
- *
1884
- * @param p0
1885
- * @returns
1886
- */
1887
- static N_0xFD05B1DDE83749FA(p0: string | null): boolean {
1888
- return !!inv<boolean>('0xFD05B1DDE83749FA', p0, rai());
2009
+ static N_0xEC3F7F24EEEB3BA3(): void {
2010
+ inv<void>('0xEC3F7F24EEEB3BA3');
1889
2011
  }
1890
2012
 
1891
2013
  /**
2014
+ * Used in CREATE_BEZIER_BLOOD_TRAIL_OF_TYPE
2015
+ *
1892
2016
  * @param p0
1893
2017
  */
1894
- static setParticleFxFootLodrangeScale(p0: number): void {
1895
- inv<void>('0x2A1625858887D4E6', f(p0));
2018
+ static N_0x41F88A85A579A61D(p0: number): void {
2019
+ inv<void>('0x41F88A85A579A61D', f(p0));
2020
+ }
2021
+
2022
+ static freeMemoryForLowQualityPhoto(): void {
2023
+ inv<void>('0x614682E715ADBAAC');
2024
+ }
2025
+
2026
+ static freeMemoryForHighQualityPhoto(): void {
2027
+ inv<void>('0xD45547D8396F002A');
2028
+ }
2029
+
2030
+ static N_0x32DE2BFFDA43E62A(): void {
2031
+ inv<void>('0x32DE2BFFDA43E62A');
1896
2032
  }
1897
2033
 
1898
2034
  /**
1899
- * @param ptfxHandle
1900
- * @returns
2035
+ * Resets the exposure to the value when exposure lock was enabled
1901
2036
  */
1902
- static doesParticleFxLoopedExist(ptfxHandle: number): boolean {
1903
- return !!inv<boolean>('0x9DD5AFF561E88F2A', ptfxHandle, rai());
2037
+ static updatePhotoModeExposure(): void {
2038
+ inv<void>('0x9229ED770975BD9E');
1904
2039
  }
1905
2040
 
1906
2041
  /**
1907
2042
  * @param effectName
1908
- * @param entity
1909
- * @param offset
1910
- * @param rot
1911
- * @param scale
1912
- * @param axisX
1913
- * @param axisY
1914
- * @param axisZ
1915
- * @returns
1916
2043
  */
1917
- static startParticleFxNonLoopedOnEntity(effectName: string | null, entity: Entity, offset: Vector3, rot: Vector3, scale: number, axisX: boolean, axisY: boolean, axisZ: boolean): boolean {
1918
- return !!inv<boolean>('0xFF4C64C513388C12', effectName, entity.handle, f(offset.x), f(offset.y), f(offset.z), f(rot.x), f(rot.y), f(rot.z), f(scale), axisX, axisY, axisZ, rai());
2044
+ static animpostfxPreloadPostfx(effectName: string | null): void {
2045
+ inv<void>('0x5199405EABFBD7F0', effectName);
1919
2046
  }
1920
2047
 
1921
2048
  /**
1922
- * @returns
2049
+ * @param strength
1923
2050
  */
1924
- static getTogglePausedRenderphasesStatus(): boolean {
1925
- return !!inv<boolean>('0x86ED21BDB2791CE8', rai());
2051
+ static setTransitionOutOfTimecycleModifier(strength: number): void {
2052
+ inv<void>('0xBB6C707F20D955D4', f(strength));
1926
2053
  }
1927
2054
 
1928
2055
  /**
1929
- * Only used in R* SP Script spd_agnesdown1
1930
- *
1931
- * @param p0
1932
- * @returns
2056
+ * @param effectName
2057
+ * @param p1
2058
+ * @param color
2059
+ * @param alpha
1933
2060
  */
1934
- static N_0x5C9C3A466B3296A8(p0: any): any {
1935
- return inv<number>('0x5C9C3A466B3296A8', p0);
2061
+ static animpostfxSetPostfxColor(effectName: string | null, p1: number, color: Color, alpha: number): void {
2062
+ inv<void>('0x63011D0C7C6519E0', effectName, p1, color.r, color.g, color.b, color.a, alpha);
1936
2063
  }
1937
2064
 
1938
2065
  /**
1939
- * @param entity
1940
- * @param mask
2066
+ * @param p0
2067
+ * @param p1
1941
2068
  */
1942
- static addEntityToEntityMask(entity: Entity, mask: number): void {
1943
- inv<void>('0xC6F81FCD15350323', entity.handle, mask);
2069
+ static startPetrolTrailDecals(p0: any, p1: any): void {
2070
+ inv<void>('0x46F246D6504F0031', p0, p1);
1944
2071
  }
1945
2072
 
1946
2073
  /**
1947
- * Always returns 200.
1948
- *
1949
- * @returns
2074
+ * @param pickupObject
2075
+ * @param allow
1950
2076
  */
1951
- static getMaxNumberOfLocalPhotos(): number {
1952
- return inv<number>('0x8E587FCD30E05592', rai());
2077
+ static allowPickupLightSync(pickupObject: Prop, allow: boolean): void {
2078
+ inv<void>('0x7C348310A6E2FB91', pickupObject.handle, allow);
1953
2079
  }
1954
2080
 
1955
- /**
1956
- * @param channel
1957
- */
1958
- static setTvChannel(channel: number): void {
1959
- inv<void>('0x593FAF7FC9401A56', channel);
2081
+ static freeMemoryForMissionCreatorPhoto(): void {
2082
+ inv<void>('0x7DFF8F94937D2659');
1960
2083
  }
1961
2084
 
1962
2085
  /**
2086
+ * Returns veg modifier handle
2087
+ *
1963
2088
  * @param pos
1964
- * @param p3
2089
+ * @param radius
2090
+ * @param modType
2091
+ * @param flags
2092
+ * @param p6
2093
+ * @returns
1965
2094
  */
1966
- static addPetrolTrailDecalInfo(pos: Vector3, p3: number): void {
1967
- inv<void>('0x73354FB6D03D2E8A', f(pos.x), f(pos.y), f(pos.z), f(p3));
2095
+ static addVegModifierSphere(pos: Vector3, radius: number, modType: number, flags: number, p6: number): number {
2096
+ return inv<number>('0xFA50F79257745E74', f(pos.x), f(pos.y), f(pos.z), f(radius), modType, flags, p6, rai());
1968
2097
  }
1969
2098
 
1970
2099
  /**
1971
- * ANIMPOSTFX_*
2100
+ * Only used in R* SP Script spd_agnesdown1
1972
2101
  *
1973
- * @param effectName
2102
+ * @param p0
2103
+ * @param pos
2104
+ * @param p4
2105
+ * @param p5
2106
+ * @param heading
1974
2107
  * @returns
1975
2108
  */
1976
- static N_0xB958D97A0DFAA0C2(effectName: string | null): boolean {
1977
- return !!inv<boolean>('0xB958D97A0DFAA0C2', effectName, rai());
2109
+ static N_0x402E1A61D2587FCD(p0: any, pos: Vector3, p4: number, p5: number, heading: number): boolean {
2110
+ return !!inv<boolean>('0x402E1A61D2587FCD', p0, f(pos.x), f(pos.y), f(pos.z), f(p4), f(p5), f(heading), rai());
1978
2111
  }
1979
2112
 
1980
2113
  /**
1981
- * @param txdHash
1982
- * @param dict
1983
2114
  * @returns
1984
2115
  */
1985
- static isTextureInDict(txdHash: string | number, dict: string | number): any {
1986
- return inv<number>('0xA2A51869BDED733B', _h(txdHash), _h(dict));
2116
+ static N_0xFC9B53C072F418E0(): any {
2117
+ return inv<number>('0xFC9B53C072F418E0');
1987
2118
  }
1988
2119
 
1989
- static N_0x910E260AEAD855DE(): void {
1990
- inv<void>('0x910E260AEAD855DE');
2120
+ /**
2121
+ * state: false disables artificial interior light sources for specific proxyInteriorIndex
2122
+ *
2123
+ * @param proxyInteriorIndex
2124
+ * @param state
2125
+ */
2126
+ static setProxyInteriorIndexArtificialLightsState(proxyInteriorIndex: number, state: boolean): void {
2127
+ inv<void>('0xBFCB17895BB99E4E', proxyInteriorIndex, state);
1991
2128
  }
1992
2129
 
1993
2130
  /**
@@ -2133,143 +2270,6 @@ export class Graphics {
2133
2270
  inv<void>('0x6C03118E9E5C1A14', p0);
2134
2271
  }
2135
2272
 
2136
- /**
2137
- * https://imgur.com/a/I2swSDJ Old name: _SET_PICKUP_OBJECT_GLOW_ENABLED
2138
- *
2139
- * @param object
2140
- * @param toggle
2141
- */
2142
- static setPickupLight(object: Prop, toggle: boolean): void {
2143
- inv<void>('0x7DFB49BCDB73089A', object.handle, toggle);
2144
- }
2145
-
2146
- /**
2147
- * @param entity
2148
- */
2149
- static removeParticleFxFromEntity(entity: Entity): void {
2150
- inv<void>('0x92884B4A49D81325', entity.handle);
2151
- }
2152
-
2153
- /**
2154
- * @param ptfxHandle
2155
- * @param p1
2156
- */
2157
- static stopParticleFxLooped(ptfxHandle: number, p1: boolean): void {
2158
- inv<void>('0x22970F3A088B133B', ptfxHandle, p1);
2159
- }
2160
-
2161
- /**
2162
- * p1: AMB_ANN_COAL_CHUTE_DIVE, AMB_ANN_COAL_CHUTE
2163
- * p2: EMIT
2164
- * p3: either 0.0f or 1.0f
2165
- *
2166
- * @param entity
2167
- * @param p1
2168
- * @param p2
2169
- * @param p3
2170
- */
2171
- static N_0x4FB67D172C4476F3(entity: Entity, p1: string | null, p2: string | null, p3: number): void {
2172
- inv<void>('0x4FB67D172C4476F3', entity.handle, p1, p2, f(p3));
2173
- }
2174
-
2175
- /**
2176
- * @param typeHash
2177
- * @param pos1
2178
- * @param pos2
2179
- * @param radius
2180
- * @param color
2181
- * @param alpha
2182
- * @param reserved
2183
- * @returns
2184
- */
2185
- static createCheckpointWithNamehash(typeHash: string | number, pos1: Vector3, pos2: Vector3, radius: number, color: Color, alpha: number, reserved: number): number {
2186
- return inv<number>('0x175668836B44CBB0', _h(typeHash), f(pos1.x), f(pos1.y), f(pos1.z), f(pos2.x), f(pos2.y), f(pos2.z), f(radius), color.r, color.g, color.b, color.a, alpha, reserved, rai());
2187
- }
2188
-
2189
- static disableEntitymask(): void {
2190
- inv<void>('0x5C9978A2A3DC3D0D');
2191
- }
2192
-
2193
- /**
2194
- * Returns iNumPixels, iPixelsVisible
2195
- *
2196
- * @param iTrackedPoint
2197
- * @returns
2198
- */
2199
- static N_0xDFE332A5DA6FE7C9(iTrackedPoint: number): number {
2200
- return inv<number>('0xDFE332A5DA6FE7C9', iTrackedPoint, rai());
2201
- }
2202
-
2203
- /**
2204
- * @param entity
2205
- * @returns layer0; layer1; layer2; layer3
2206
- */
2207
- static setEntityMaskLayers(entity: Entity): [number, number, number, number] {
2208
- const result = inv<[number, number, number, number]>('0xE92012611461A42A', entity.handle, pvf(), pvf(), pvf(), pvf());
2209
- return [result[0], result[1], result[2], result[3]];
2210
- }
2211
-
2212
- /**
2213
- * @param point
2214
- * @returns
2215
- */
2216
- static isTrackedPointVisible(point: number): boolean {
2217
- return !!inv<boolean>('0xCBB056BA159FB48D', point, rai());
2218
- }
2219
-
2220
- static clearTimecycleModifier(): void {
2221
- inv<void>('0x0E3F4AF2D63491FB');
2222
- }
2223
-
2224
- /**
2225
- * Closes the the binocular scaleform
2226
- */
2227
- static N_0x5AC6E0FA028369DE(): void {
2228
- inv<void>('0x5AC6E0FA028369DE');
2229
- }
2230
-
2231
- /**
2232
- * ANIMPOSTFX_*
2233
- *
2234
- * @param effectNameHash
2235
- */
2236
- static N_0xC76FC4C2FC5F4405(effectNameHash: string | number): void {
2237
- inv<void>('0xC76FC4C2FC5F4405', _h(effectNameHash));
2238
- }
2239
-
2240
- /**
2241
- * @param effectName
2242
- */
2243
- static animpostfxStopTag(effectName: string | null): void {
2244
- inv<void>('0xAD74C22A541AB987', effectName);
2245
- }
2246
-
2247
- /**
2248
- * Used in CREATE_BEZIER_BLOOD_TRAIL_OF_TYPE
2249
- * *ENABLE**
2250
- */
2251
- static N_0x812C1563185C6FB2(): void {
2252
- inv<void>('0x812C1563185C6FB2');
2253
- }
2254
-
2255
- /**
2256
- * @param posseId
2257
- */
2258
- static setPosseIdForPhoto(posseId: any): void {
2259
- inv<void>('0x564837D4A9EDE296', posseId);
2260
- }
2261
-
2262
- /**
2263
- * Sets the checkpoint color.
2264
- *
2265
- * @param checkpoint
2266
- * @param color
2267
- * @param alpha
2268
- */
2269
- static setCheckpointRgba(checkpoint: number, color: Color, alpha: number): void {
2270
- inv<void>('0xCAAFC225E33B1D15', checkpoint, color.r, color.g, color.b, color.a, alpha);
2271
- }
2272
-
2273
2273
  /**
2274
2274
  * Related to Campfires.
2275
2275
  * p1: AMB_BONFIRE_MP, AMB_CAMPFIRE_LRG_MP