@nativewrappers/redm-codegen 0.0.2 → 0.0.3

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 (254) hide show
  1. package/dist/classes/AnimScene.d.ts +142 -142
  2. package/dist/classes/AnimScene.d.ts.map +1 -1
  3. package/dist/classes/AnimScene.js +203 -203
  4. package/dist/classes/BaseModel.d.ts +29 -29
  5. package/dist/classes/BaseModel.d.ts.map +1 -1
  6. package/dist/classes/BaseModel.js +43 -43
  7. package/dist/classes/BaseTask.d.ts +34 -34
  8. package/dist/classes/BaseTask.d.ts.map +1 -1
  9. package/dist/classes/BaseTask.js +42 -42
  10. package/dist/classes/Cam.d.ts +71 -71
  11. package/dist/classes/Cam.d.ts.map +1 -1
  12. package/dist/classes/Cam.js +102 -102
  13. package/dist/classes/Entity.d.ts +387 -386
  14. package/dist/classes/Entity.d.ts.map +1 -1
  15. package/dist/classes/Entity.js +509 -504
  16. package/dist/classes/Interior.d.ts +27 -27
  17. package/dist/classes/Interior.d.ts.map +1 -1
  18. package/dist/classes/Interior.js +42 -42
  19. package/dist/classes/Ped.d.ts +67 -66
  20. package/dist/classes/Ped.d.ts.map +1 -1
  21. package/dist/classes/Ped.js +80 -75
  22. package/dist/classes/PedTask.d.ts +1518 -1518
  23. package/dist/classes/PedTask.d.ts.map +1 -1
  24. package/dist/classes/PedTask.js +1930 -1930
  25. package/dist/classes/PersChar.d.ts +11 -11
  26. package/dist/classes/PersChar.d.ts.map +1 -1
  27. package/dist/classes/PersChar.js +23 -23
  28. package/dist/classes/Pickup.d.ts +7 -7
  29. package/dist/classes/Pickup.d.ts.map +1 -1
  30. package/dist/classes/Pickup.js +13 -13
  31. package/dist/classes/Player.d.ts +237 -237
  32. package/dist/classes/Player.d.ts.map +1 -1
  33. package/dist/classes/Player.js +319 -319
  34. package/dist/classes/Prop.d.ts +105 -104
  35. package/dist/classes/Prop.d.ts.map +1 -1
  36. package/dist/classes/Prop.js +155 -150
  37. package/dist/classes/PropSet.d.ts +1 -1
  38. package/dist/classes/PropSet.d.ts.map +1 -1
  39. package/dist/classes/Vehicle.d.ts +1 -0
  40. package/dist/classes/Vehicle.d.ts.map +1 -1
  41. package/dist/classes/Vehicle.js +5 -0
  42. package/dist/classes/VehicleTask.d.ts +21 -21
  43. package/dist/classes/VehicleTask.d.ts.map +1 -1
  44. package/dist/classes/VehicleTask.js +27 -27
  45. package/dist/classes/Volume.d.ts +40 -40
  46. package/dist/classes/Volume.d.ts.map +1 -1
  47. package/dist/classes/Volume.js +54 -54
  48. package/dist/classes/Weapon.d.ts +364 -364
  49. package/dist/classes/Weapon.d.ts.map +1 -1
  50. package/dist/classes/Weapon.js +515 -515
  51. package/dist/namespaces/Aitransport.d.ts +77 -77
  52. package/dist/namespaces/Aitransport.d.ts.map +1 -1
  53. package/dist/namespaces/Aitransport.js +94 -94
  54. package/dist/namespaces/Animscene.d.ts +65 -65
  55. package/dist/namespaces/Animscene.d.ts.map +1 -1
  56. package/dist/namespaces/Animscene.js +83 -83
  57. package/dist/namespaces/Audio.d.ts +464 -464
  58. package/dist/namespaces/Audio.d.ts.map +1 -1
  59. package/dist/namespaces/Audio.js +651 -651
  60. package/dist/namespaces/Bounty.d.ts +23 -23
  61. package/dist/namespaces/Bounty.d.ts.map +1 -1
  62. package/dist/namespaces/Bounty.js +40 -40
  63. package/dist/namespaces/Brain.d.ts +15 -15
  64. package/dist/namespaces/Brain.d.ts.map +1 -1
  65. package/dist/namespaces/Brain.js +20 -20
  66. package/dist/namespaces/CamStatics.d.ts +459 -459
  67. package/dist/namespaces/CamStatics.d.ts.map +1 -1
  68. package/dist/namespaces/CamStatics.js +719 -719
  69. package/dist/namespaces/Collection.d.ts +78 -78
  70. package/dist/namespaces/Collection.d.ts.map +1 -1
  71. package/dist/namespaces/Collection.js +109 -109
  72. package/dist/namespaces/Companion.d.ts +22 -22
  73. package/dist/namespaces/Companion.d.ts.map +1 -1
  74. package/dist/namespaces/Companion.js +30 -30
  75. package/dist/namespaces/Compendium.d.ts +94 -94
  76. package/dist/namespaces/Compendium.d.ts.map +1 -1
  77. package/dist/namespaces/Compendium.js +126 -126
  78. package/dist/namespaces/Databinding.d.ts +113 -113
  79. package/dist/namespaces/Databinding.d.ts.map +1 -1
  80. package/dist/namespaces/Databinding.js +167 -167
  81. package/dist/namespaces/Dlc.d.ts +5 -5
  82. package/dist/namespaces/Dlc.d.ts.map +1 -1
  83. package/dist/namespaces/Dlc.js +9 -9
  84. package/dist/namespaces/EntityStatics.d.ts +164 -164
  85. package/dist/namespaces/EntityStatics.d.ts.map +1 -1
  86. package/dist/namespaces/EntityStatics.js +225 -225
  87. package/dist/namespaces/Event.d.ts +62 -62
  88. package/dist/namespaces/Event.d.ts.map +1 -1
  89. package/dist/namespaces/Event.js +82 -82
  90. package/dist/namespaces/Fire.d.ts +7 -7
  91. package/dist/namespaces/Fire.d.ts.map +1 -1
  92. package/dist/namespaces/Fire.js +9 -9
  93. package/dist/namespaces/Graphics.d.ts +688 -688
  94. package/dist/namespaces/Graphics.d.ts.map +1 -1
  95. package/dist/namespaces/Graphics.js +876 -876
  96. package/dist/namespaces/Hud.d.ts +456 -456
  97. package/dist/namespaces/Hud.d.ts.map +1 -1
  98. package/dist/namespaces/Hud.js +598 -598
  99. package/dist/namespaces/InteriorStatics.d.ts +42 -42
  100. package/dist/namespaces/InteriorStatics.d.ts.map +1 -1
  101. package/dist/namespaces/InteriorStatics.js +56 -56
  102. package/dist/namespaces/Inventory.d.ts +156 -156
  103. package/dist/namespaces/Inventory.d.ts.map +1 -1
  104. package/dist/namespaces/Inventory.js +210 -210
  105. package/dist/namespaces/Itemdatabase.d.ts +3 -3
  106. package/dist/namespaces/Itemdatabase.d.ts.map +1 -1
  107. package/dist/namespaces/Law.d.ts +2 -2
  108. package/dist/namespaces/Law.d.ts.map +1 -1
  109. package/dist/namespaces/Map.d.ts +128 -128
  110. package/dist/namespaces/Map.d.ts.map +1 -1
  111. package/dist/namespaces/Map.js +180 -180
  112. package/dist/namespaces/Minigame.d.ts +60 -60
  113. package/dist/namespaces/Minigame.d.ts.map +1 -1
  114. package/dist/namespaces/Minigame.js +88 -88
  115. package/dist/namespaces/Misc.d.ts +5 -5
  116. package/dist/namespaces/Misc.d.ts.map +1 -1
  117. package/dist/namespaces/Missiondata.d.ts +3 -3
  118. package/dist/namespaces/Missiondata.d.ts.map +1 -1
  119. package/dist/namespaces/Netshopping.d.ts +1 -1
  120. package/dist/namespaces/Netshopping.d.ts.map +1 -1
  121. package/dist/namespaces/Network.d.ts +1528 -1536
  122. package/dist/namespaces/Network.d.ts.map +1 -1
  123. package/dist/namespaces/Network.js +2196 -2204
  124. package/dist/namespaces/Object.d.ts +244 -244
  125. package/dist/namespaces/Object.d.ts.map +1 -1
  126. package/dist/namespaces/Object.js +355 -355
  127. package/dist/namespaces/Pad.d.ts +43 -43
  128. package/dist/namespaces/Pad.d.ts.map +1 -1
  129. package/dist/namespaces/Pad.js +58 -58
  130. package/dist/namespaces/PedStatics.d.ts +21 -21
  131. package/dist/namespaces/PedStatics.d.ts.map +1 -1
  132. package/dist/namespaces/PedStatics.js +26 -26
  133. package/dist/namespaces/Perschar.d.ts +62 -62
  134. package/dist/namespaces/Perschar.d.ts.map +1 -1
  135. package/dist/namespaces/Perschar.js +91 -91
  136. package/dist/namespaces/Persistence.d.ts +30 -30
  137. package/dist/namespaces/Persistence.d.ts.map +1 -1
  138. package/dist/namespaces/Persistence.js +42 -42
  139. package/dist/namespaces/Physics.d.ts +207 -207
  140. package/dist/namespaces/Physics.d.ts.map +1 -1
  141. package/dist/namespaces/Physics.js +310 -310
  142. package/dist/namespaces/PlayerStatics.d.ts +72 -72
  143. package/dist/namespaces/PlayerStatics.d.ts.map +1 -1
  144. package/dist/namespaces/PlayerStatics.js +103 -103
  145. package/dist/namespaces/Population.d.ts +88 -88
  146. package/dist/namespaces/Population.d.ts.map +1 -1
  147. package/dist/namespaces/Population.js +116 -116
  148. package/dist/namespaces/Posse.d.ts +49 -49
  149. package/dist/namespaces/Posse.d.ts.map +1 -1
  150. package/dist/namespaces/Posse.js +79 -79
  151. package/dist/namespaces/Propset.d.ts +1 -1
  152. package/dist/namespaces/Propset.d.ts.map +1 -1
  153. package/dist/namespaces/Scripts.d.ts +3 -3
  154. package/dist/namespaces/Scripts.d.ts.map +1 -1
  155. package/dist/namespaces/Shapetest.d.ts +11 -11
  156. package/dist/namespaces/Shapetest.d.ts.map +1 -1
  157. package/dist/namespaces/Shapetest.js +13 -13
  158. package/dist/namespaces/Socialclub.d.ts +1 -1
  159. package/dist/namespaces/Socialclub.d.ts.map +1 -1
  160. package/dist/namespaces/Stats.d.ts +174 -174
  161. package/dist/namespaces/Stats.d.ts.map +1 -1
  162. package/dist/namespaces/Stats.js +240 -240
  163. package/dist/namespaces/Streaming.d.ts +127 -127
  164. package/dist/namespaces/Streaming.d.ts.map +1 -1
  165. package/dist/namespaces/Streaming.js +193 -193
  166. package/dist/namespaces/Task.d.ts +220 -220
  167. package/dist/namespaces/Task.d.ts.map +1 -1
  168. package/dist/namespaces/Task.js +299 -299
  169. package/dist/namespaces/Telemetry.d.ts +188 -188
  170. package/dist/namespaces/Telemetry.d.ts.map +1 -1
  171. package/dist/namespaces/Telemetry.js +249 -249
  172. package/dist/namespaces/Uiapps.d.ts +24 -24
  173. package/dist/namespaces/Uiapps.d.ts.map +1 -1
  174. package/dist/namespaces/Uiapps.js +33 -33
  175. package/dist/namespaces/Uistickyfeed.d.ts +16 -16
  176. package/dist/namespaces/Uistickyfeed.d.ts.map +1 -1
  177. package/dist/namespaces/Uistickyfeed.js +21 -21
  178. package/dist/namespaces/VehicleStatics.d.ts +2 -2
  179. package/dist/namespaces/VehicleStatics.d.ts.map +1 -1
  180. package/dist/namespaces/VolumeStatics.d.ts +64 -64
  181. package/dist/namespaces/VolumeStatics.d.ts.map +1 -1
  182. package/dist/namespaces/VolumeStatics.js +85 -85
  183. package/dist/namespaces/WeaponStatics.d.ts +262 -262
  184. package/dist/namespaces/WeaponStatics.d.ts.map +1 -1
  185. package/dist/namespaces/WeaponStatics.js +361 -361
  186. package/dist/namespaces/Zone.d.ts +2 -2
  187. package/dist/namespaces/Zone.d.ts.map +1 -1
  188. package/package.json +1 -1
  189. package/src/classes/AnimScene.ts +230 -230
  190. package/src/classes/BaseModel.ts +50 -50
  191. package/src/classes/BaseTask.ts +46 -46
  192. package/src/classes/Cam.ts +113 -113
  193. package/src/classes/Entity.ts +537 -532
  194. package/src/classes/Interior.ts +43 -43
  195. package/src/classes/Ped.ts +100 -95
  196. package/src/classes/PedTask.ts +1969 -1969
  197. package/src/classes/PersChar.ts +28 -28
  198. package/src/classes/Pickup.ts +13 -13
  199. package/src/classes/Player.ts +364 -364
  200. package/src/classes/Prop.ts +167 -162
  201. package/src/classes/PropSet.ts +1 -1
  202. package/src/classes/Vehicle.ts +5 -0
  203. package/src/classes/VehicleTask.ts +30 -30
  204. package/src/classes/Volume.ts +62 -62
  205. package/src/classes/Weapon.ts +517 -517
  206. package/src/namespaces/Aitransport.ts +102 -102
  207. package/src/namespaces/Animscene.ts +92 -92
  208. package/src/namespaces/Audio.ts +765 -765
  209. package/src/namespaces/Bounty.ts +46 -46
  210. package/src/namespaces/Brain.ts +22 -22
  211. package/src/namespaces/CamStatics.ts +747 -747
  212. package/src/namespaces/Collection.ts +112 -112
  213. package/src/namespaces/Companion.ts +34 -34
  214. package/src/namespaces/Compendium.ts +131 -131
  215. package/src/namespaces/Databinding.ts +170 -170
  216. package/src/namespaces/Dlc.ts +9 -9
  217. package/src/namespaces/EntityStatics.ts +237 -237
  218. package/src/namespaces/Event.ts +92 -92
  219. package/src/namespaces/Fire.ts +10 -10
  220. package/src/namespaces/Graphics.ts +1206 -1206
  221. package/src/namespaces/Hud.ts +647 -647
  222. package/src/namespaces/InteriorStatics.ts +66 -66
  223. package/src/namespaces/Inventory.ts +237 -237
  224. package/src/namespaces/Itemdatabase.ts +3 -3
  225. package/src/namespaces/Law.ts +2 -2
  226. package/src/namespaces/Map.ts +204 -204
  227. package/src/namespaces/Minigame.ts +100 -100
  228. package/src/namespaces/Misc.ts +5 -5
  229. package/src/namespaces/Missiondata.ts +3 -3
  230. package/src/namespaces/Netshopping.ts +1 -1
  231. package/src/namespaces/Network.ts +2217 -2225
  232. package/src/namespaces/Object.ts +381 -381
  233. package/src/namespaces/Pad.ts +67 -67
  234. package/src/namespaces/PedStatics.ts +33 -33
  235. package/src/namespaces/Perschar.ts +105 -105
  236. package/src/namespaces/Persistence.ts +48 -48
  237. package/src/namespaces/Physics.ts +326 -326
  238. package/src/namespaces/PlayerStatics.ts +113 -113
  239. package/src/namespaces/Population.ts +133 -133
  240. package/src/namespaces/Posse.ts +80 -80
  241. package/src/namespaces/Propset.ts +1 -1
  242. package/src/namespaces/Scripts.ts +3 -3
  243. package/src/namespaces/Shapetest.ts +14 -14
  244. package/src/namespaces/Socialclub.ts +1 -1
  245. package/src/namespaces/Stats.ts +266 -266
  246. package/src/namespaces/Streaming.ts +226 -226
  247. package/src/namespaces/Task.ts +527 -527
  248. package/src/namespaces/Telemetry.ts +300 -300
  249. package/src/namespaces/Uiapps.ts +39 -39
  250. package/src/namespaces/Uistickyfeed.ts +23 -23
  251. package/src/namespaces/VehicleStatics.ts +2 -2
  252. package/src/namespaces/VolumeStatics.ts +87 -87
  253. package/src/namespaces/WeaponStatics.ts +365 -365
  254. package/src/namespaces/Zone.ts +2 -2
@@ -13,138 +13,132 @@ import { createFromHandle } from '../types/HandleRegistry';
13
13
  import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f } from '../types/NativeAliases';
14
14
 
15
15
  export class WeaponStatics {
16
- /**
17
- * @param componentHash
18
- * @returns
19
- */
20
- static getWeaponComponentTypeModel(componentHash: string | number): string | number {
21
- return (inv<number>('0x59DE03442B6C9598', _h(componentHash), rai())) & 0xFFFFFFFF;
22
- }
23
-
24
16
  /**
25
17
  * @param weaponObject
26
- * @param level
18
+ * @param scale
27
19
  */
28
- static setWeaponDegradation(weaponObject: Prop, level: number): void {
29
- inv<void>('0xA7A57E89E965D839', weaponObject.handle, f(level));
20
+ static setWeaponScale(weaponObject: Prop, scale: number): void {
21
+ inv<void>('0xC3544AD0522E69B4', weaponObject.handle, f(scale));
30
22
  }
31
23
 
32
24
  /**
33
25
  * @param weaponHash Refer to [enum: eWeaponHash]
34
26
  * @returns
35
27
  */
36
- static isWeaponShotgun(weaponHash: eWeaponHash): any {
37
- return inv<number>('0xC75386174ECE95D5', weaponHash);
38
- }
39
-
40
- /**
41
- * @param ammoHash Refer to [enum: eAmmoType]
42
- * @returns
43
- */
44
- static isAmmoValid(ammoHash: eAmmoType): any {
45
- return inv<number>('0x1F7977C9101F807F', ammoHash);
28
+ static isWeaponSniper(weaponHash: eWeaponHash): any {
29
+ return inv<number>('0x6AD66548840472E5', weaponHash);
46
30
  }
47
31
 
48
32
  /**
49
- * @param ammoHash Refer to [enum: eAmmoType]
33
+ * @param weaponHash Refer to [enum: eWeaponHash]
50
34
  * @returns
51
35
  */
52
- static isAmmoSilent2(ammoHash: eAmmoType): any {
53
- return inv<number>('0x7EFACC589B98C488', ammoHash);
36
+ static isWeaponTorch(weaponHash: eWeaponHash): any {
37
+ return inv<number>('0x506F1DE1BFC75304', weaponHash);
54
38
  }
55
39
 
56
40
  /**
41
+ * Gets the model hash from the weapon hash.
42
+ *
57
43
  * @param weaponHash Refer to [enum: eWeaponHash]
58
- * @param permanentDegradationLevel
59
44
  * @returns
60
45
  */
61
- static getWeaponNameWithPermanentDegradation(weaponHash: eWeaponHash, permanentDegradationLevel: number): string | null {
62
- return inv<string>('0x7A56D66C78D8EF8E', weaponHash, f(permanentDegradationLevel), ras());
46
+ static getWeapontypeModel(weaponHash: eWeaponHash): number {
47
+ return (inv<number>('0xF70825EB340E7D15', weaponHash, rai())) & 0xFFFFFFFF;
63
48
  }
64
49
 
65
50
  /**
66
- * Returns hash where WEAPON_ is replaced with SLOT_
67
- *
68
- * @param weaponHash Refer to [enum: eWeaponHash]
69
- * @returns
51
+ * @param p0
52
+ * @param p1
70
53
  */
71
- static getWeapontypeSlot(weaponHash: eWeaponHash): string | number {
72
- return (inv<number>('0x46F032B8DDF46CDE', weaponHash, rai())) & 0xFFFFFFFF;
54
+ static N_0xD63B4BA3A02A99E0(p0: any, p1: any): void {
55
+ inv<void>('0xD63B4BA3A02A99E0', p0, p1);
73
56
  }
74
57
 
75
58
  /**
76
- * @param weaponHash Refer to [enum: eWeaponHash]
77
- * @returns
59
+ * @param p0
60
+ * @param p1
78
61
  */
79
- static getWeaponUnlock(weaponHash: eWeaponHash): string | number {
80
- return (inv<number>('0x865F36299079FB75', weaponHash, rai())) & 0xFFFFFFFF;
62
+ static N_0x74C2365FDD1BB48F(p0: any, p1: any): void {
63
+ inv<void>('0x74C2365FDD1BB48F', p0, p1);
81
64
  }
82
65
 
83
66
  /**
84
- * @param weaponHash Refer to [enum: eWeaponHash]
85
- * @returns Returns the ammo type, see: [enum: eAmmoType]
67
+ * @param weaponObject
68
+ * @param component
86
69
  */
87
- static getAmmoTypeForWeapon(weaponHash: eWeaponHash): string | number {
88
- return (inv<number>('0x5C2EA6C44F515F34', weaponHash, rai())) & 0xFFFFFFFF;
70
+ static removeWeaponComponentFromWeaponObject(weaponObject: Prop, component: string | number): void {
71
+ inv<void>('0xF7D82B0D66777611', weaponObject.handle, _h(component));
89
72
  }
90
73
 
91
74
  /**
92
- * @param weaponHash Refer to [enum: eWeaponHash]
75
+ * @param p0
76
+ * @param p1
93
77
  * @returns
94
78
  */
95
- static isWeaponKnife(weaponHash: eWeaponHash): any {
96
- return inv<number>('0x792E3EF76C911959', weaponHash);
79
+ static N_0xF2F585411E748B9C(p0: any, p1: any): any {
80
+ return inv<number>('0xF2F585411E748B9C', p0, p1);
97
81
  }
98
82
 
99
83
  /**
100
84
  * @param weaponHash Refer to [enum: eWeaponHash]
85
+ * @param ammoCount
86
+ * @param pos
87
+ * @param showWorldModel
88
+ * @param scale
101
89
  * @returns
102
90
  */
103
- static isWeaponBow(weaponHash: eWeaponHash): any {
104
- return inv<number>('0xC4DEC3CA8C365A5D', weaponHash);
91
+ static createWeaponObject(weaponHash: eWeaponHash, ammoCount: number, pos: Vector3, showWorldModel: boolean, scale: number): Prop | null {
92
+ return createFromHandle<Prop>('Prop', inv<number>('0x9888652B8BA77F73', weaponHash, ammoCount, f(pos.x), f(pos.y), f(pos.z), showWorldModel, f(scale), rai()));
105
93
  }
106
94
 
107
95
  /**
96
+ * Returns true when the weapon passed is either a lasso, the camera or the binoculars
97
+ * _IS_WEAPON_M* - _IS_WEAPON_P*
98
+ *
108
99
  * @param weaponHash Refer to [enum: eWeaponHash]
109
100
  * @returns
110
101
  */
111
- static getCanTwirlWeapon(weaponHash: eWeaponHash): any {
112
- return inv<number>('0x6554ECCE226F2A2A', weaponHash);
102
+ static isWeaponKit(weaponHash: eWeaponHash): any {
103
+ return inv<number>('0x6ABAD7B0A854F8FB', weaponHash);
113
104
  }
114
105
 
115
106
  /**
107
+ * @param entity
116
108
  * @param weaponHash Refer to [enum: eWeaponHash]
109
+ * @param ms
117
110
  * @returns
118
111
  */
119
- static shouldWeaponBeDiscardedWhenSwapped(weaponHash: eWeaponHash): any {
120
- return inv<number>('0x2C83212A7AA51D3D', weaponHash);
112
+ static hasEntityBeenDamagedByWeaponRecently(entity: Entity, weaponHash: eWeaponHash, ms: number): any {
113
+ return inv<number>('0x9E2D5D6BC97A5F1E', entity.handle, weaponHash, ms);
121
114
  }
122
115
 
123
116
  /**
124
- * @param weaponHash Refer to [enum: eWeaponHash]
117
+ * @param weaponObject
125
118
  * @returns
126
119
  */
127
- static isWeaponSilent(weaponHash: eWeaponHash): any {
128
- return inv<number>('0x5809DBCA0A37C82B', weaponHash);
120
+ static getWeaponDirt(weaponObject: Prop): number {
121
+ return inv<number>('0x810E8AE9AFEA7E54', weaponObject.handle, raf());
129
122
  }
130
123
 
131
124
  /**
132
- * @param weaponHash Refer to [enum: eWeaponHash]
133
- * @returns
125
+ * @param p0
134
126
  */
135
- static isWeaponOneHanded(weaponHash: eWeaponHash): any {
136
- return inv<number>('0xD955FEE4B87AFA07', weaponHash);
127
+ static N_0xC5899C4CD2E2495D(p0: any): void {
128
+ inv<void>('0xC5899C4CD2E2495D', p0);
137
129
  }
138
130
 
139
131
  /**
140
- * Related to weapon visual damage, not actual damage.
132
+ * Returns weaponHash
141
133
  *
142
- * @param weaponObject
143
- * @param level
134
+ * @param weaponGroupHash
135
+ * @param p1
144
136
  * @param p2
137
+ * @param p3
138
+ * @returns
145
139
  */
146
- static setWeaponDamage(weaponObject: Prop, level: number, p2: boolean): void {
147
- inv<void>('0xE22060121602493B', weaponObject.handle, f(level), p2);
140
+ static N_0xF8204EF17410BF43(weaponGroupHash: string | number, p1: number, p2: number, p3: any): number {
141
+ return (inv<number>('0xF8204EF17410BF43', _h(weaponGroupHash), f(p1), f(p2), p3, rai())) & 0xFFFFFFFF;
148
142
  }
149
143
 
150
144
  /**
@@ -203,346 +197,352 @@ export class WeaponStatics {
203
197
  }
204
198
 
205
199
  /**
206
- * @param weaponObject
207
- * @param level
208
- * @param p2
200
+ * @param weaponHash Refer to [enum: eWeaponHash]
201
+ * @returns
209
202
  */
210
- static setWeaponSoot(weaponObject: Prop, level: number, p2: boolean): void {
211
- inv<void>('0xA9EF4AD10BDDDB57', weaponObject.handle, f(level), p2);
203
+ static isWeaponPistol(weaponHash: eWeaponHash): any {
204
+ return inv<number>('0xDDC64F5E31EEDAB6', weaponHash);
212
205
  }
213
206
 
214
207
  /**
215
- * Returns weaponCollection Hash
216
- * Example: RE_POLICECHASE_MALES_01: Carbine Repeater + Knife, LO_AGRO_PED
217
- *
218
- * @param pedModel
208
+ * @param weaponHash Refer to [enum: eWeaponHash]
219
209
  * @returns
220
210
  */
221
- static getDefaultPedWeaponCollection(pedModel: string | number): string | number {
222
- return (inv<number>('0xD42514C182121C23', _h(pedModel), rai())) & 0xFFFFFFFF;
211
+ static hasWeaponAssetLoaded(weaponHash: eWeaponHash): any {
212
+ return inv<number>('0xFF07CF465F48B830', weaponHash);
223
213
  }
224
214
 
225
215
  /**
226
- * @param vehicle
227
- * @param seatIndex Refer to [enum: eVehicleSeat]
228
- * @param heading
229
- * @param p3
216
+ * @param weaponHash Refer to [enum: eWeaponHash]
217
+ * @returns
230
218
  */
231
- static setVehicleWeaponHeading(vehicle: Vehicle, seatIndex: eVehicleSeat, heading: number, p3: boolean): void {
232
- inv<void>('0x194D877FC5597B7D', vehicle.handle, seatIndex, f(heading), p3);
219
+ static isWeaponRepeater(weaponHash: eWeaponHash): any {
220
+ return inv<number>('0xDDB2578E95EF7138', weaponHash);
233
221
  }
234
222
 
235
223
  /**
236
- * @param weaponHash Refer to [enum: eWeaponHash]
224
+ * @param componentHash
237
225
  * @returns
238
226
  */
239
- static isWeaponLantern(weaponHash: eWeaponHash): any {
240
- return inv<number>('0x79407D33328286C6', weaponHash);
227
+ static getWeaponComponentTypeModel(componentHash: string | number): number {
228
+ return (inv<number>('0x59DE03442B6C9598', _h(componentHash), rai())) & 0xFFFFFFFF;
229
+ }
230
+
231
+ /**
232
+ * @param weaponObject
233
+ * @param level
234
+ */
235
+ static setWeaponDegradation(weaponObject: Prop, level: number): void {
236
+ inv<void>('0xA7A57E89E965D839', weaponObject.handle, f(level));
241
237
  }
242
238
 
243
239
  /**
244
240
  * @param weaponHash Refer to [enum: eWeaponHash]
245
241
  * @returns
246
242
  */
247
- static isWeaponRevolver(weaponHash: eWeaponHash): any {
248
- return inv<number>('0xC212F1D05A8232BB', weaponHash);
243
+ static isWeaponShotgun(weaponHash: eWeaponHash): any {
244
+ return inv<number>('0xC75386174ECE95D5', weaponHash);
249
245
  }
250
246
 
251
247
  /**
252
- * @param p0
248
+ * @param ammoHash Refer to [enum: eAmmoType]
249
+ * @returns
253
250
  */
254
- static N_0x74C90AAACC1DD48F(p0: any): void {
255
- inv<void>('0x74C90AAACC1DD48F', p0);
251
+ static isAmmoValid(ammoHash: eAmmoType): any {
252
+ return inv<number>('0x1F7977C9101F807F', ammoHash);
253
+ }
254
+
255
+ /**
256
+ * @param ammoHash Refer to [enum: eAmmoType]
257
+ * @returns
258
+ */
259
+ static isAmmoSilent2(ammoHash: eAmmoType): any {
260
+ return inv<number>('0x7EFACC589B98C488', ammoHash);
256
261
  }
257
262
 
258
263
  /**
259
264
  * @param weaponHash Refer to [enum: eWeaponHash]
265
+ * @param permanentDegradationLevel
260
266
  * @returns
261
267
  */
262
- static getWeaponClipSize(weaponHash: eWeaponHash): number {
263
- return inv<number>('0xD3750CCC00635FC2', weaponHash, rai());
268
+ static getWeaponNameWithPermanentDegradation(weaponHash: eWeaponHash, permanentDegradationLevel: number): string | null {
269
+ return inv<string>('0x7A56D66C78D8EF8E', weaponHash, f(permanentDegradationLevel), ras());
264
270
  }
265
271
 
266
272
  /**
267
- * @param p0
273
+ * @param weaponHash Refer to [enum: eWeaponHash]
274
+ * @param ammoHash Refer to [enum: eAmmoType]
275
+ * @returns
268
276
  */
269
- static N_0x000FA7A4A8443AF7(p0: any): void {
270
- inv<void>('0x000FA7A4A8443AF7', p0);
277
+ static isAmmoTypeValidForWeapon(weaponHash: eWeaponHash, ammoHash: eAmmoType): any {
278
+ return inv<number>('0xC570B881754DF609', weaponHash, ammoHash);
271
279
  }
272
280
 
273
281
  /**
274
- * Only used in R* Script fme_escaped_convicts, p0 = 0
275
- *
276
282
  * @param p0
283
+ * @param p1
277
284
  */
278
- static N_0x63B83A526329AFBC(p0: any): void {
279
- inv<void>('0x63B83A526329AFBC', p0);
285
+ static N_0x183CE355115B6E75(p0: any, p1: any): void {
286
+ inv<void>('0x183CE355115B6E75', p0, p1);
280
287
  }
281
288
 
282
289
  /**
283
- * Related to rust of weapons
284
- *
285
- * @param weaponObject
286
- * @returns
290
+ * @param p0
291
+ * @param p1
287
292
  */
288
- static getWeaponPermanentDegradation(weaponObject: Prop): number {
289
- return inv<number>('0xD56E5F336C675EFA', weaponObject.handle, raf());
293
+ static N_0x74C9080FDD1BB48F(p0: any, p1: any): void {
294
+ inv<void>('0x74C9080FDD1BB48F', p0, p1);
290
295
  }
291
296
 
292
297
  /**
293
- * @param weaponHash Refer to [enum: eWeaponHash]
298
+ * @param vehicle
299
+ * @param p1
300
+ * @param minHeading
301
+ * @param maxHeading
302
+ * @returns
294
303
  */
295
- static removeWeaponAsset(weaponHash: eWeaponHash): void {
296
- inv<void>('0xC3896D03E2852236', weaponHash);
304
+ static setVehicleWeaponHeadingLimits2(vehicle: Vehicle, p1: number, minHeading: number, maxHeading: number): any {
305
+ return inv<number>('0xBF5987E1CDE63501', vehicle.handle, p1, f(minHeading), f(maxHeading));
297
306
  }
298
307
 
299
308
  /**
300
309
  * @param p0
310
+ * @param p1
301
311
  * @returns
302
312
  */
303
- static N_0x23BF601A42F329A0(p0: any): any {
304
- return inv<number>('0x23BF601A42F329A0', p0);
313
+ static N_0x486C96A0DCD2BC92(p0: any, p1: any): any {
314
+ return inv<number>('0x486C96A0DCD2BC92', p0, p1);
305
315
  }
306
316
 
307
317
  /**
308
318
  * @param weaponHash Refer to [enum: eWeaponHash]
309
- * @returns
319
+ * @returns Returns the [enum: eWeaponAttachPoint]
310
320
  */
311
- static isWeaponRifle(weaponHash: eWeaponHash): any {
312
- return inv<number>('0x0A82317B7EBFC420', weaponHash);
321
+ static getDefaultWeaponAttachPoint(weaponHash: eWeaponHash): number {
322
+ return inv<number>('0x65DC4AC5B96614CB', weaponHash, rai());
313
323
  }
314
324
 
315
325
  /**
316
- * @param p0
326
+ * Related to weapon visual damage, not actual damage.
327
+ *
328
+ * @param weaponObject
317
329
  * @returns
318
330
  */
319
- static N_0x3799EFCC3C8CD5E1(p0: any): any {
320
- return inv<number>('0x3799EFCC3C8CD5E1', p0);
331
+ static getWeaponDamage(weaponObject: Prop): number {
332
+ return inv<number>('0x904103D5D2333977', weaponObject.handle, raf());
321
333
  }
322
334
 
323
335
  /**
324
336
  * @param p0
325
337
  * @param p1
326
- * @param p2
327
- * @returns
328
338
  */
329
- static N_0x9CCA3131E6B53C68(p0: any, p1: any, p2: any): any {
330
- return inv<number>('0x9CCA3131E6B53C68', p0, p1, p2);
339
+ static N_0x404514D231DB27A0(p0: any, p1: any): void {
340
+ inv<void>('0x404514D231DB27A0', p0, p1);
331
341
  }
332
342
 
333
343
  /**
334
- * @param p0
335
- * @param p1
336
- * @param p2
344
+ * @param listen
337
345
  */
338
- static N_0xA3716A77DCF17424(p0: any, p1: any, p2: any): void {
339
- inv<void>('0xA3716A77DCF17424', p0, p1, p2);
346
+ static listenProjectileHitEvents(listen: boolean): void {
347
+ inv<void>('0xDA5D3F2C6DD5B5D4', listen);
340
348
  }
341
349
 
342
350
  /**
343
- * @param weaponCollection
344
- * @param dualwieldVariant
351
+ * @param weaponHash Refer to [enum: eWeaponHash]
345
352
  * @returns
346
353
  */
347
- static N_0xF252A85B8F3F8C58(weaponCollection: string | number, dualwieldVariant: string | number): boolean {
348
- return inv<boolean>('0xF252A85B8F3F8C58', _h(weaponCollection), _h(dualwieldVariant), rai());
354
+ static getWeapontypeGroup(weaponHash: eWeaponHash): number {
355
+ return (inv<number>('0xEDCA14CA5199FF25', weaponHash, rai())) & 0xFFFFFFFF;
349
356
  }
350
357
 
351
358
  /**
352
359
  * @param weaponHash Refer to [enum: eWeaponHash]
353
360
  * @returns
354
361
  */
355
- static isWeaponBinoculars(weaponHash: eWeaponHash): any {
356
- return inv<number>('0xC853230E76A152DF', weaponHash);
362
+ static isWeaponLasso(weaponHash: eWeaponHash): any {
363
+ return inv<number>('0x6E4E1A82081EABED', weaponHash);
357
364
  }
358
365
 
359
366
  /**
360
367
  * @param p0
361
- * @param p1
362
368
  * @returns
363
369
  */
364
- static N_0xD2209866B0CB72EA(p0: any, p1: any): any {
365
- return inv<number>('0xD2209866B0CB72EA', p0, p1);
370
+ static N_0xAFFD0CCF31F469B8(p0: any): any {
371
+ return inv<number>('0xAFFD0CCF31F469B8', p0);
366
372
  }
367
373
 
368
374
  /**
369
- * @param p0
370
- * @param p1
371
- * @param p2
375
+ * @param weaponHash Refer to [enum: eWeaponHash]
376
+ * @returns
372
377
  */
373
- static N_0xA769D753922B031B(p0: any, p1: any, p2: any): void {
374
- inv<void>('0xA769D753922B031B', p0, p1, p2);
378
+ static isWeaponThrowable(weaponHash: eWeaponHash): any {
379
+ return inv<number>('0x30E7C16B12DA8211', weaponHash);
375
380
  }
376
381
 
377
382
  /**
378
- * @param p0
383
+ * Returns "WNS_INVALID" if the weapon is invalid/doesn't exist.
384
+ *
385
+ * @param weaponHash Refer to [enum: eWeaponHash]
386
+ * @returns
379
387
  */
380
- static N_0xECBB26529A737EF6(p0: any): void {
381
- inv<void>('0xECBB26529A737EF6', p0);
388
+ static getWeaponName(weaponHash: eWeaponHash): string | null {
389
+ return inv<string>('0x89CF5FF3D363311E', weaponHash, ras());
382
390
  }
383
391
 
384
392
  /**
385
- * turretHash: WEAPON_TURRET_MAXIUM, WEAPON_TURRET_GATLING, WEAPON_TURRET_CANNON, WEAPON_TURRET_REVOLVING_CANNON
386
- *
387
- * @param vehicle
388
- * @param turretHash
389
- * @param ammo
393
+ * @param weaponHash Refer to [enum: eWeaponHash]
394
+ * @returns
390
395
  */
391
- static setAmmoInTurret(vehicle: Vehicle, turretHash: string | number, ammo: number): void {
392
- inv<void>('0xBDDA0C290C228159', vehicle.handle, _h(turretHash), ammo);
396
+ static getWeaponStatId(weaponHash: eWeaponHash): number {
397
+ return (inv<number>('0x8EC44AE8DECFF841', weaponHash, rai())) & 0xFFFFFFFF;
393
398
  }
394
399
 
395
400
  /**
396
- * @param ammoType
401
+ * @param weaponHash Refer to [enum: eWeaponHash]
397
402
  * @returns
398
403
  */
399
- static getWeaponTypeFromAmmoType(ammoType: string | number): string | number {
400
- return (inv<number>('0x7AA043F6C41D151E', _h(ammoType), rai())) & 0xFFFFFFFF;
404
+ static getWeaponUnlock(weaponHash: eWeaponHash): number {
405
+ return (inv<number>('0x865F36299079FB75', weaponHash, rai())) & 0xFFFFFFFF;
406
+ }
407
+
408
+ /**
409
+ * @param weaponHash Refer to [enum: eWeaponHash]
410
+ * @returns Returns the ammo type, see: [enum: eAmmoType]
411
+ */
412
+ static getAmmoTypeForWeapon(weaponHash: eWeaponHash): number {
413
+ return (inv<number>('0x5C2EA6C44F515F34', weaponHash, rai())) & 0xFFFFFFFF;
401
414
  }
402
415
 
403
416
  /**
404
417
  * @param weaponHash Refer to [enum: eWeaponHash]
405
418
  * @returns
406
419
  */
407
- static isWeaponSniper(weaponHash: eWeaponHash): any {
408
- return inv<number>('0x6AD66548840472E5', weaponHash);
420
+ static isWeaponKnife(weaponHash: eWeaponHash): any {
421
+ return inv<number>('0x792E3EF76C911959', weaponHash);
409
422
  }
410
423
 
411
424
  /**
412
425
  * @param weaponHash Refer to [enum: eWeaponHash]
413
426
  * @returns
414
427
  */
415
- static isWeaponTorch(weaponHash: eWeaponHash): any {
416
- return inv<number>('0x506F1DE1BFC75304', weaponHash);
428
+ static isWeaponBow(weaponHash: eWeaponHash): any {
429
+ return inv<number>('0xC4DEC3CA8C365A5D', weaponHash);
417
430
  }
418
431
 
419
432
  /**
420
- * Gets the model hash from the weapon hash.
421
- *
422
433
  * @param weaponHash Refer to [enum: eWeaponHash]
423
434
  * @returns
424
435
  */
425
- static getWeapontypeModel(weaponHash: eWeaponHash): string | number {
426
- return (inv<number>('0xF70825EB340E7D15', weaponHash, rai())) & 0xFFFFFFFF;
436
+ static getCanTwirlWeapon(weaponHash: eWeaponHash): any {
437
+ return inv<number>('0x6554ECCE226F2A2A', weaponHash);
427
438
  }
428
439
 
429
440
  /**
430
- * @param p0
431
- * @param p1
441
+ * @param weaponHash Refer to [enum: eWeaponHash]
442
+ * @returns
432
443
  */
433
- static N_0xD63B4BA3A02A99E0(p0: any, p1: any): void {
434
- inv<void>('0xD63B4BA3A02A99E0', p0, p1);
444
+ static shouldWeaponBeDiscardedWhenSwapped(weaponHash: eWeaponHash): any {
445
+ return inv<number>('0x2C83212A7AA51D3D', weaponHash);
435
446
  }
436
447
 
437
448
  /**
438
- * @param p0
439
- * @param p1
449
+ * @param weaponHash Refer to [enum: eWeaponHash]
450
+ * @returns
440
451
  */
441
- static N_0x74C2365FDD1BB48F(p0: any, p1: any): void {
442
- inv<void>('0x74C2365FDD1BB48F', p0, p1);
452
+ static isWeaponSilent(weaponHash: eWeaponHash): any {
453
+ return inv<number>('0x5809DBCA0A37C82B', weaponHash);
443
454
  }
444
455
 
445
456
  /**
446
- * @param weaponObject
447
- * @param component
457
+ * @param weaponHash Refer to [enum: eWeaponHash]
458
+ * @returns
448
459
  */
449
- static removeWeaponComponentFromWeaponObject(weaponObject: Prop, component: string | number): void {
450
- inv<void>('0xF7D82B0D66777611', weaponObject.handle, _h(component));
460
+ static isWeaponOneHanded(weaponHash: eWeaponHash): any {
461
+ return inv<number>('0xD955FEE4B87AFA07', weaponHash);
451
462
  }
452
463
 
453
464
  /**
454
465
  * @param p0
455
466
  * @param p1
456
- * @returns
467
+ * @param p2
457
468
  */
458
- static N_0xF2F585411E748B9C(p0: any, p1: any): any {
459
- return inv<number>('0xF2F585411E748B9C', p0, p1);
469
+ static N_0xD53846B9C931C181(p0: any, p1: any, p2: any): void {
470
+ inv<void>('0xD53846B9C931C181', p0, p1, p2);
460
471
  }
461
472
 
462
473
  /**
463
474
  * @param weaponHash Refer to [enum: eWeaponHash]
464
- * @param ammoHash Refer to [enum: eAmmoType]
465
475
  * @returns
466
476
  */
467
- static isAmmoTypeValidForWeapon(weaponHash: eWeaponHash, ammoHash: eAmmoType): any {
468
- return inv<number>('0xC570B881754DF609', weaponHash, ammoHash);
477
+ static getWeaponClipSize(weaponHash: eWeaponHash): number {
478
+ return inv<number>('0xD3750CCC00635FC2', weaponHash, rai());
469
479
  }
470
480
 
471
481
  /**
472
- * @param weaponHash Refer to [enum: eWeaponHash]
473
- * @param ammoCount
474
- * @param pos
475
- * @param showWorldModel
476
- * @param scale
477
- * @returns
482
+ * @param p0
478
483
  */
479
- static createWeaponObject(weaponHash: eWeaponHash, ammoCount: number, pos: Vector3, showWorldModel: boolean, scale: number): Prop | null {
480
- return createFromHandle<Prop>('Prop', inv<number>('0x9888652B8BA77F73', weaponHash, ammoCount, f(pos.x), f(pos.y), f(pos.z), showWorldModel, f(scale), rai()));
484
+ static N_0x000FA7A4A8443AF7(p0: any): void {
485
+ inv<void>('0x000FA7A4A8443AF7', p0);
481
486
  }
482
487
 
483
488
  /**
484
- * Returns true when the weapon passed is either a lasso, the camera or the binoculars
485
- * _IS_WEAPON_M* - _IS_WEAPON_P*
489
+ * Only used in R* Script fme_escaped_convicts, p0 = 0
486
490
  *
487
- * @param weaponHash Refer to [enum: eWeaponHash]
488
- * @returns
491
+ * @param p0
489
492
  */
490
- static isWeaponKit(weaponHash: eWeaponHash): any {
491
- return inv<number>('0x6ABAD7B0A854F8FB', weaponHash);
493
+ static N_0x63B83A526329AFBC(p0: any): void {
494
+ inv<void>('0x63B83A526329AFBC', p0);
492
495
  }
493
496
 
494
497
  /**
495
- * @param entity
496
- * @param weaponHash Refer to [enum: eWeaponHash]
497
- * @param ms
498
+ * Related to rust of weapons
499
+ *
500
+ * @param weaponObject
498
501
  * @returns
499
502
  */
500
- static hasEntityBeenDamagedByWeaponRecently(entity: Entity, weaponHash: eWeaponHash, ms: number): any {
501
- return inv<number>('0x9E2D5D6BC97A5F1E', entity.handle, weaponHash, ms);
503
+ static getWeaponPermanentDegradation(weaponObject: Prop): number {
504
+ return inv<number>('0xD56E5F336C675EFA', weaponObject.handle, raf());
502
505
  }
503
506
 
504
507
  /**
505
- * @param weaponObject
506
- * @returns
508
+ * @param weaponHash Refer to [enum: eWeaponHash]
507
509
  */
508
- static getWeaponDirt(weaponObject: Prop): number {
509
- return inv<number>('0x810E8AE9AFEA7E54', weaponObject.handle, raf());
510
+ static removeWeaponAsset(weaponHash: eWeaponHash): void {
511
+ inv<void>('0xC3896D03E2852236', weaponHash);
510
512
  }
511
513
 
512
514
  /**
513
515
  * @param p0
516
+ * @returns
514
517
  */
515
- static N_0xC5899C4CD2E2495D(p0: any): void {
516
- inv<void>('0xC5899C4CD2E2495D', p0);
518
+ static N_0x23BF601A42F329A0(p0: any): any {
519
+ return inv<number>('0x23BF601A42F329A0', p0);
517
520
  }
518
521
 
519
522
  /**
520
- * Returns weaponHash
521
- *
522
- * @param weaponGroupHash
523
- * @param p1
524
- * @param p2
525
- * @param p3
523
+ * @param weaponHash Refer to [enum: eWeaponHash]
526
524
  * @returns
527
525
  */
528
- static N_0xF8204EF17410BF43(weaponGroupHash: string | number, p1: number, p2: number, p3: any): string | number {
529
- return (inv<number>('0xF8204EF17410BF43', _h(weaponGroupHash), f(p1), f(p2), p3, rai())) & 0xFFFFFFFF;
526
+ static isWeaponRifle(weaponHash: eWeaponHash): any {
527
+ return inv<number>('0x0A82317B7EBFC420', weaponHash);
530
528
  }
531
529
 
532
530
  /**
533
531
  * @param p0
534
- * @param p1
532
+ * @returns
535
533
  */
536
- static N_0x183CE355115B6E75(p0: any, p1: any): void {
537
- inv<void>('0x183CE355115B6E75', p0, p1);
534
+ static N_0x3799EFCC3C8CD5E1(p0: any): any {
535
+ return inv<number>('0x3799EFCC3C8CD5E1', p0);
538
536
  }
539
537
 
540
538
  /**
541
539
  * @param p0
542
540
  * @param p1
541
+ * @param p2
542
+ * @returns
543
543
  */
544
- static N_0x74C9080FDD1BB48F(p0: any, p1: any): void {
545
- inv<void>('0x74C9080FDD1BB48F', p0, p1);
544
+ static N_0x9CCA3131E6B53C68(p0: any, p1: any, p2: any): any {
545
+ return inv<number>('0x9CCA3131E6B53C68', p0, p1, p2);
546
546
  }
547
547
 
548
548
  /**
@@ -550,10 +550,9 @@ export class WeaponStatics {
550
550
  * @param p1
551
551
  * @param minHeading
552
552
  * @param maxHeading
553
- * @returns
554
553
  */
555
- static setVehicleWeaponHeadingLimits2(vehicle: Vehicle, p1: number, minHeading: number, maxHeading: number): any {
556
- return inv<number>('0xBF5987E1CDE63501', vehicle.handle, p1, f(minHeading), f(maxHeading));
554
+ static setVehicleWeaponHeadingLimits(vehicle: Vehicle, p1: number, minHeading: number, maxHeading: number): void {
555
+ inv<void>('0x56CB3B4305A4F7CE', vehicle.handle, p1, f(minHeading), f(maxHeading));
557
556
  }
558
557
 
559
558
  /**
@@ -561,73 +560,86 @@ export class WeaponStatics {
561
560
  * @param p1
562
561
  * @returns
563
562
  */
564
- static N_0x486C96A0DCD2BC92(p0: any, p1: any): any {
565
- return inv<number>('0x486C96A0DCD2BC92', p0, p1);
563
+ static N_0x74C8000FDD1BB222(p0: any, p1: any): any {
564
+ return inv<number>('0x74C8000FDD1BB222', p0, p1);
566
565
  }
567
566
 
568
567
  /**
569
- * @param weaponHash Refer to [enum: eWeaponHash]
570
- * @returns Returns the [enum: eWeaponAttachPoint]
568
+ * @param ammoType
569
+ * @returns
571
570
  */
572
- static getDefaultWeaponAttachPoint(weaponHash: eWeaponHash): number {
573
- return inv<number>('0x65DC4AC5B96614CB', weaponHash, rai());
571
+ static getWeaponTypeFromAmmoType(ammoType: string | number): number {
572
+ return (inv<number>('0x7AA043F6C41D151E', _h(ammoType), rai())) & 0xFFFFFFFF;
574
573
  }
575
574
 
576
575
  /**
577
- * Related to weapon visual damage, not actual damage.
576
+ * Works exactly the same as [native: _GET_AMMO_TYPE_FOR_WEAPON]
578
577
  *
579
- * @param weaponObject
578
+ * @param weaponHash
580
579
  * @returns
581
580
  */
582
- static getWeaponDamage(weaponObject: Prop): number {
583
- return inv<number>('0x904103D5D2333977', weaponObject.handle, raf());
581
+ static getAmmoTypeForWeapon2(weaponHash: eWeaponHash): number {
582
+ return inv<number>('0xEC97101A8F311282', weaponHash, rai());
584
583
  }
585
584
 
586
585
  /**
587
- * @param entity
588
- * @param weaponName
589
- * @param weaponType
586
+ * this native gets the weapon hash from the default ped weapon collection (see GetDefaultPedWeaponCollection for more info) will randomly return one of it's weapons
587
+ *
588
+ * @param weaponCollection
589
+ * @param weaponGroup
590
590
  * @returns
591
591
  */
592
- static hasEntityBeenDamagedByWeapon(entity: Entity, weaponName: string | number, weaponType: number): any {
593
- return inv<number>('0xDCF06D0CDFF68424', entity.handle, _h(weaponName), weaponType);
592
+ static getWeaponFromDefaultPedWeaponCollection(weaponCollection: number, weaponGroup: string | number): number {
593
+ return (inv<number>('0x9EEFD670F10656D7', weaponCollection, _h(weaponGroup), rai())) & 0xFFFFFFFF;
594
+ }
595
+
596
+ /**
597
+ * entity can be a ped or weapon object.
598
+ *
599
+ * @param entity
600
+ * @param componentHash
601
+ * @param weaponHash Refer to [enum: eWeaponHash]
602
+ * @param p3
603
+ */
604
+ static giveWeaponComponentToEntity(entity: Entity, componentHash: string | number, weaponHash: eWeaponHash, p3: boolean): void {
605
+ inv<void>('0x74C9090FDD1BB48E', entity.handle, _h(componentHash), weaponHash, p3);
594
606
  }
595
607
 
596
608
  /**
597
- * @param weaponObject
609
+ * @param p0
610
+ * @param p1
598
611
  * @returns
599
612
  */
600
- static getWeaponScale(weaponObject: Prop): number {
601
- return inv<number>('0x22084CA699219624', weaponObject.handle, raf());
613
+ static N_0xA2091482ED42EF85(p0: any, p1: any): any {
614
+ return inv<number>('0xA2091482ED42EF85', p0, p1);
602
615
  }
603
616
 
604
617
  /**
605
- * Returns iSpinHash
606
- *
607
- * @param emote
608
- * @param weaponEmoteTrickType
618
+ * @param weapon
619
+ * @param addonHash
609
620
  * @returns
610
621
  */
611
- static getWeaponGunSpinningWeaponEmoteTrickTypeHash(emote: string | number, weaponEmoteTrickType: number): string | number {
612
- return (inv<number>('0xF4601C1203B1A78D', _h(emote), weaponEmoteTrickType, rai())) & 0xFFFFFFFF;
622
+ static hasWeaponGotWeaponComponent(weapon: Prop, addonHash: string | number): boolean {
623
+ return inv<boolean>('0x76A18844E743BF91', weapon.handle, _h(addonHash), rai());
613
624
  }
614
625
 
615
626
  /**
616
- * Returns true if CWeaponInfoFlags::Flags::Gun is set.
617
- *
618
- * @param weaponHash Refer to [enum: eWeaponHash]
627
+ * @param weaponObject
619
628
  * @returns
620
629
  */
621
- static isWeaponAGun(weaponHash: eWeaponHash): any {
622
- return inv<number>('0x705BE297EEBDB95D', weaponHash);
630
+ static getWeaponSoot(weaponObject: Prop): number {
631
+ return inv<number>('0x4BF66F8878F67663', weaponObject.handle, raf());
623
632
  }
624
633
 
625
634
  /**
635
+ * Related to weapon visual damage, not actual damage.
636
+ *
626
637
  * @param weaponObject
627
- * @param scale
638
+ * @param level
639
+ * @param p2
628
640
  */
629
- static setWeaponScale(weaponObject: Prop, scale: number): void {
630
- inv<void>('0xC3544AD0522E69B4', weaponObject.handle, f(scale));
641
+ static setWeaponDamage(weaponObject: Prop, level: number, p2: boolean): void {
642
+ inv<void>('0xE22060121602493B', weaponObject.handle, f(level), p2);
631
643
  }
632
644
 
633
645
  /**
@@ -704,265 +716,253 @@ export class WeaponStatics {
704
716
  }
705
717
 
706
718
  /**
707
- * @param p0
708
- */
709
- static N_0xD4C6E24D955FF061(p0: any): void {
710
- inv<void>('0xD4C6E24D955FF061', p0);
711
- }
712
-
713
- /**
714
- * @param weaponHash Refer to [enum: eWeaponHash]
715
- * @param p1
716
- * @param p2
717
- */
718
- static requestWeaponAsset(weaponHash: eWeaponHash, p1: number, p2: boolean): void {
719
- inv<void>('0x72D4CB5DB927009C', weaponHash, p1, p2);
720
- }
721
-
722
- /**
723
- * Returns whether the weapon has multiple ammo types or not.
719
+ * Returns hash where WEAPON_ is replaced with SLOT_
724
720
  *
725
721
  * @param weaponHash Refer to [enum: eWeaponHash]
726
722
  * @returns
727
723
  */
728
- static getWeaponHasMultipleAmmoTypes(weaponHash: eWeaponHash): any {
729
- return inv<number>('0x58425FCA3D3A2D15', weaponHash);
724
+ static getWeapontypeSlot(weaponHash: eWeaponHash): number {
725
+ return (inv<number>('0x46F032B8DDF46CDE', weaponHash, rai())) & 0xFFFFFFFF;
730
726
  }
731
727
 
732
728
  /**
733
729
  * @param p0
734
730
  * @param p1
731
+ * @param p2
735
732
  */
736
- static N_0x74C9080FDD1BB48E(p0: any, p1: any): void {
737
- inv<void>('0x74C9080FDD1BB48E', p0, p1);
733
+ static N_0xA3716A77DCF17424(p0: any, p1: any, p2: any): void {
734
+ inv<void>('0xA3716A77DCF17424', p0, p1, p2);
738
735
  }
739
736
 
740
737
  /**
741
- * every other level will have the max value of (brokeLevel - threshold)
742
- *
743
- * @param weaponObject
744
- * @param threshold
738
+ * @param weaponCollection
739
+ * @param dualwieldVariant
740
+ * @returns
745
741
  */
746
- static setWeaponLevelThreshold(weaponObject: Prop, threshold: number): void {
747
- inv<void>('0xD4071EFC83794B2F', weaponObject.handle, f(threshold));
742
+ static N_0xF252A85B8F3F8C58(weaponCollection: string | number, dualwieldVariant: string | number): boolean {
743
+ return inv<boolean>('0xF252A85B8F3F8C58', _h(weaponCollection), _h(dualwieldVariant), rai());
748
744
  }
749
745
 
750
746
  /**
751
747
  * @param weaponHash Refer to [enum: eWeaponHash]
752
748
  * @returns
753
749
  */
754
- static isWeaponTwoHanded(weaponHash: eWeaponHash): any {
755
- return inv<number>('0x0556E9D2ECF39D01', weaponHash);
750
+ static isWeaponBinoculars(weaponHash: eWeaponHash): any {
751
+ return inv<number>('0xC853230E76A152DF', weaponHash);
756
752
  }
757
753
 
758
754
  /**
759
755
  * @param p0
756
+ * @param p1
760
757
  * @returns
761
758
  */
762
- static N_0x9F0E1892C7F228A8(p0: boolean): any {
763
- return inv<number>('0x9F0E1892C7F228A8', p0);
759
+ static N_0xD2209866B0CB72EA(p0: any, p1: any): any {
760
+ return inv<number>('0xD2209866B0CB72EA', p0, p1);
764
761
  }
765
762
 
766
763
  /**
767
- * Only used in R* SP Script guama3
768
- *
769
- * @param vehicle
764
+ * @param p0
770
765
  * @param p1
766
+ * @param p2
771
767
  */
772
- static N_0x9409C62504A8F9E9(vehicle: Vehicle, p1: boolean): void {
773
- inv<void>('0x9409C62504A8F9E9', vehicle.handle, p1);
768
+ static N_0xA769D753922B031B(p0: any, p1: any, p2: any): void {
769
+ inv<void>('0xA769D753922B031B', p0, p1, p2);
774
770
  }
775
771
 
776
772
  /**
777
773
  * @param p0
778
774
  */
779
- static N_0x457B16951AD77C1B(p0: any): void {
780
- inv<void>('0x457B16951AD77C1B', p0);
775
+ static N_0xECBB26529A737EF6(p0: any): void {
776
+ inv<void>('0xECBB26529A737EF6', p0);
781
777
  }
782
778
 
783
779
  /**
784
- * Works exactly the same as [native: _GET_AMMO_TYPE_FOR_WEAPON]
780
+ * turretHash: WEAPON_TURRET_MAXIUM, WEAPON_TURRET_GATLING, WEAPON_TURRET_CANNON, WEAPON_TURRET_REVOLVING_CANNON
785
781
  *
786
- * @param weaponHash
787
- * @returns
782
+ * @param vehicle
783
+ * @param turretHash
784
+ * @param ammo
788
785
  */
789
- static getAmmoTypeForWeapon2(weaponHash: eWeaponHash): number {
790
- return inv<number>('0xEC97101A8F311282', weaponHash, rai());
786
+ static setAmmoInTurret(vehicle: Vehicle, turretHash: string | number, ammo: number): void {
787
+ inv<void>('0xBDDA0C290C228159', vehicle.handle, _h(turretHash), ammo);
791
788
  }
792
789
 
793
790
  /**
794
- * this native gets the weapon hash from the default ped weapon collection (see GetDefaultPedWeaponCollection for more info) will randomly return one of it's weapons
795
- *
796
- * @param weaponCollection
797
- * @param weaponGroup
798
- * @returns
791
+ * @param p0
792
+ * @param p1
793
+ * @param p2
799
794
  */
800
- static getWeaponFromDefaultPedWeaponCollection(weaponCollection: number, weaponGroup: string | number): string | number {
801
- return (inv<number>('0x9EEFD670F10656D7', weaponCollection, _h(weaponGroup), rai())) & 0xFFFFFFFF;
795
+ static N_0xB0FB9B196A3D13F0(p0: any, p1: any, p2: any): void {
796
+ inv<void>('0xB0FB9B196A3D13F0', p0, p1, p2);
802
797
  }
803
798
 
804
799
  /**
805
- * entity can be a ped or weapon object.
806
- *
807
800
  * @param entity
808
- * @param componentHash
809
- * @param weaponHash Refer to [enum: eWeaponHash]
810
- * @param p3
801
+ * @param weaponName
802
+ * @param weaponType
803
+ * @returns
811
804
  */
812
- static giveWeaponComponentToEntity(entity: Entity, componentHash: string | number, weaponHash: eWeaponHash, p3: boolean): void {
813
- inv<void>('0x74C9090FDD1BB48E', entity.handle, _h(componentHash), weaponHash, p3);
805
+ static hasEntityBeenDamagedByWeapon(entity: Entity, weaponName: string | number, weaponType: number): any {
806
+ return inv<number>('0xDCF06D0CDFF68424', entity.handle, _h(weaponName), weaponType);
814
807
  }
815
808
 
816
809
  /**
817
- * @param p0
818
- * @param p1
810
+ * @param weaponObject
819
811
  * @returns
820
812
  */
821
- static N_0xA2091482ED42EF85(p0: any, p1: any): any {
822
- return inv<number>('0xA2091482ED42EF85', p0, p1);
813
+ static getWeaponScale(weaponObject: Prop): number {
814
+ return inv<number>('0x22084CA699219624', weaponObject.handle, raf());
823
815
  }
824
816
 
825
817
  /**
826
- * @param weapon
827
- * @param addonHash
818
+ * Returns iSpinHash
819
+ *
820
+ * @param emote
821
+ * @param weaponEmoteTrickType
828
822
  * @returns
829
823
  */
830
- static hasWeaponGotWeaponComponent(weapon: Prop, addonHash: string | number): boolean {
831
- return inv<boolean>('0x76A18844E743BF91', weapon.handle, _h(addonHash), rai());
824
+ static getWeaponGunSpinningWeaponEmoteTrickTypeHash(emote: string | number, weaponEmoteTrickType: number): number {
825
+ return (inv<number>('0xF4601C1203B1A78D', _h(emote), weaponEmoteTrickType, rai())) & 0xFFFFFFFF;
832
826
  }
833
827
 
834
828
  /**
835
- * @param weaponObject
829
+ * Returns true if CWeaponInfoFlags::Flags::Gun is set.
830
+ *
831
+ * @param weaponHash Refer to [enum: eWeaponHash]
836
832
  * @returns
837
833
  */
838
- static getWeaponSoot(weaponObject: Prop): number {
839
- return inv<number>('0x4BF66F8878F67663', weaponObject.handle, raf());
834
+ static isWeaponAGun(weaponHash: eWeaponHash): any {
835
+ return inv<number>('0x705BE297EEBDB95D', weaponHash);
840
836
  }
841
837
 
842
838
  /**
843
- * @param p0
844
- * @param p1
839
+ * @param weaponObject
840
+ * @param level
845
841
  * @param p2
846
842
  */
847
- static N_0xB0FB9B196A3D13F0(p0: any, p1: any, p2: any): void {
848
- inv<void>('0xB0FB9B196A3D13F0', p0, p1, p2);
843
+ static setWeaponSoot(weaponObject: Prop, level: number, p2: boolean): void {
844
+ inv<void>('0xA9EF4AD10BDDDB57', weaponObject.handle, f(level), p2);
849
845
  }
850
846
 
851
847
  /**
852
- * @param p0
853
- * @param p1
848
+ * Returns weaponCollection Hash
849
+ * Example: RE_POLICECHASE_MALES_01: Carbine Repeater + Knife, LO_AGRO_PED
850
+ *
851
+ * @param pedModel
852
+ * @returns
854
853
  */
855
- static N_0x404514D231DB27A0(p0: any, p1: any): void {
856
- inv<void>('0x404514D231DB27A0', p0, p1);
854
+ static getDefaultPedWeaponCollection(pedModel: string | number): number {
855
+ return (inv<number>('0xD42514C182121C23', _h(pedModel), rai())) & 0xFFFFFFFF;
857
856
  }
858
857
 
859
858
  /**
860
- * @param listen
859
+ * @param vehicle
860
+ * @param seatIndex Refer to [enum: eVehicleSeat]
861
+ * @param heading
862
+ * @param p3
861
863
  */
862
- static listenProjectileHitEvents(listen: boolean): void {
863
- inv<void>('0xDA5D3F2C6DD5B5D4', listen);
864
+ static setVehicleWeaponHeading(vehicle: Vehicle, seatIndex: eVehicleSeat, heading: number, p3: boolean): void {
865
+ inv<void>('0x194D877FC5597B7D', vehicle.handle, seatIndex, f(heading), p3);
864
866
  }
865
867
 
866
868
  /**
867
869
  * @param weaponHash Refer to [enum: eWeaponHash]
868
870
  * @returns
869
871
  */
870
- static getWeapontypeGroup(weaponHash: eWeaponHash): string | number {
871
- return (inv<number>('0xEDCA14CA5199FF25', weaponHash, rai())) & 0xFFFFFFFF;
872
+ static isWeaponLantern(weaponHash: eWeaponHash): any {
873
+ return inv<number>('0x79407D33328286C6', weaponHash);
872
874
  }
873
875
 
874
876
  /**
875
877
  * @param weaponHash Refer to [enum: eWeaponHash]
876
878
  * @returns
877
879
  */
878
- static isWeaponLasso(weaponHash: eWeaponHash): any {
879
- return inv<number>('0x6E4E1A82081EABED', weaponHash);
880
+ static isWeaponRevolver(weaponHash: eWeaponHash): any {
881
+ return inv<number>('0xC212F1D05A8232BB', weaponHash);
880
882
  }
881
883
 
882
884
  /**
883
885
  * @param p0
884
- * @returns
885
886
  */
886
- static N_0xAFFD0CCF31F469B8(p0: any): any {
887
- return inv<number>('0xAFFD0CCF31F469B8', p0);
887
+ static N_0x74C90AAACC1DD48F(p0: any): void {
888
+ inv<void>('0x74C90AAACC1DD48F', p0);
888
889
  }
889
890
 
890
891
  /**
891
- * @param weaponHash Refer to [enum: eWeaponHash]
892
- * @returns
892
+ * @param p0
893
893
  */
894
- static isWeaponThrowable(weaponHash: eWeaponHash): any {
895
- return inv<number>('0x30E7C16B12DA8211', weaponHash);
894
+ static N_0xD4C6E24D955FF061(p0: any): void {
895
+ inv<void>('0xD4C6E24D955FF061', p0);
896
896
  }
897
897
 
898
898
  /**
899
- * Returns "WNS_INVALID" if the weapon is invalid/doesn't exist.
900
- *
901
899
  * @param weaponHash Refer to [enum: eWeaponHash]
902
- * @returns
900
+ * @param p1
901
+ * @param p2
903
902
  */
904
- static getWeaponName(weaponHash: eWeaponHash): string | null {
905
- return inv<string>('0x89CF5FF3D363311E', weaponHash, ras());
903
+ static requestWeaponAsset(weaponHash: eWeaponHash, p1: number, p2: boolean): void {
904
+ inv<void>('0x72D4CB5DB927009C', weaponHash, p1, p2);
906
905
  }
907
906
 
908
907
  /**
908
+ * Returns whether the weapon has multiple ammo types or not.
909
+ *
909
910
  * @param weaponHash Refer to [enum: eWeaponHash]
910
911
  * @returns
911
912
  */
912
- static getWeaponStatId(weaponHash: eWeaponHash): string | number {
913
- return (inv<number>('0x8EC44AE8DECFF841', weaponHash, rai())) & 0xFFFFFFFF;
913
+ static getWeaponHasMultipleAmmoTypes(weaponHash: eWeaponHash): any {
914
+ return inv<number>('0x58425FCA3D3A2D15', weaponHash);
914
915
  }
915
916
 
916
917
  /**
917
918
  * @param p0
918
919
  * @param p1
919
- * @param p2
920
920
  */
921
- static N_0xD53846B9C931C181(p0: any, p1: any, p2: any): void {
922
- inv<void>('0xD53846B9C931C181', p0, p1, p2);
921
+ static N_0x74C9080FDD1BB48E(p0: any, p1: any): void {
922
+ inv<void>('0x74C9080FDD1BB48E', p0, p1);
923
923
  }
924
924
 
925
925
  /**
926
- * @param weaponHash Refer to [enum: eWeaponHash]
927
- * @returns
926
+ * every other level will have the max value of (brokeLevel - threshold)
927
+ *
928
+ * @param weaponObject
929
+ * @param threshold
928
930
  */
929
- static isWeaponPistol(weaponHash: eWeaponHash): any {
930
- return inv<number>('0xDDC64F5E31EEDAB6', weaponHash);
931
+ static setWeaponLevelThreshold(weaponObject: Prop, threshold: number): void {
932
+ inv<void>('0xD4071EFC83794B2F', weaponObject.handle, f(threshold));
931
933
  }
932
934
 
933
935
  /**
934
936
  * @param weaponHash Refer to [enum: eWeaponHash]
935
937
  * @returns
936
938
  */
937
- static hasWeaponAssetLoaded(weaponHash: eWeaponHash): any {
938
- return inv<number>('0xFF07CF465F48B830', weaponHash);
939
+ static isWeaponTwoHanded(weaponHash: eWeaponHash): any {
940
+ return inv<number>('0x0556E9D2ECF39D01', weaponHash);
939
941
  }
940
942
 
941
943
  /**
942
- * @param weaponHash Refer to [enum: eWeaponHash]
944
+ * @param p0
943
945
  * @returns
944
946
  */
945
- static isWeaponRepeater(weaponHash: eWeaponHash): any {
946
- return inv<number>('0xDDB2578E95EF7138', weaponHash);
947
+ static N_0x9F0E1892C7F228A8(p0: boolean): any {
948
+ return inv<number>('0x9F0E1892C7F228A8', p0);
947
949
  }
948
950
 
949
951
  /**
952
+ * Only used in R* SP Script guama3
953
+ *
950
954
  * @param vehicle
951
955
  * @param p1
952
- * @param minHeading
953
- * @param maxHeading
954
956
  */
955
- static setVehicleWeaponHeadingLimits(vehicle: Vehicle, p1: number, minHeading: number, maxHeading: number): void {
956
- inv<void>('0x56CB3B4305A4F7CE', vehicle.handle, p1, f(minHeading), f(maxHeading));
957
+ static N_0x9409C62504A8F9E9(vehicle: Vehicle, p1: boolean): void {
958
+ inv<void>('0x9409C62504A8F9E9', vehicle.handle, p1);
957
959
  }
958
960
 
959
961
  /**
960
962
  * @param p0
961
- * @param p1
962
- * @returns
963
963
  */
964
- static N_0x74C8000FDD1BB222(p0: any, p1: any): any {
965
- return inv<number>('0x74C8000FDD1BB222', p0, p1);
964
+ static N_0x457B16951AD77C1B(p0: any): void {
965
+ inv<void>('0x457B16951AD77C1B', p0);
966
966
  }
967
967
 
968
968
  }