@nativewrappers/redm-codegen 0.0.2

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 (642) hide show
  1. package/README.md +41 -0
  2. package/dist/classes/AnimScene.d.ts +361 -0
  3. package/dist/classes/AnimScene.d.ts.map +1 -0
  4. package/dist/classes/AnimScene.js +511 -0
  5. package/dist/classes/BaseModel.d.ts +108 -0
  6. package/dist/classes/BaseModel.d.ts.map +1 -0
  7. package/dist/classes/BaseModel.js +158 -0
  8. package/dist/classes/BaseTask.d.ts +102 -0
  9. package/dist/classes/BaseTask.d.ts.map +1 -0
  10. package/dist/classes/BaseTask.js +129 -0
  11. package/dist/classes/Cam.d.ts +217 -0
  12. package/dist/classes/Cam.d.ts.map +1 -0
  13. package/dist/classes/Cam.js +295 -0
  14. package/dist/classes/Entity.d.ts +1101 -0
  15. package/dist/classes/Entity.d.ts.map +1 -0
  16. package/dist/classes/Entity.js +1480 -0
  17. package/dist/classes/Interior.d.ts +65 -0
  18. package/dist/classes/Interior.d.ts.map +1 -0
  19. package/dist/classes/Interior.js +96 -0
  20. package/dist/classes/ItemSet.d.ts +18 -0
  21. package/dist/classes/ItemSet.d.ts.map +1 -0
  22. package/dist/classes/ItemSet.js +32 -0
  23. package/dist/classes/Ped.d.ts +4230 -0
  24. package/dist/classes/Ped.d.ts.map +1 -0
  25. package/dist/classes/Ped.js +5712 -0
  26. package/dist/classes/PedModel.d.ts +9 -0
  27. package/dist/classes/PedModel.d.ts.map +1 -0
  28. package/dist/classes/PedModel.js +13 -0
  29. package/dist/classes/PedTask.d.ts +2563 -0
  30. package/dist/classes/PedTask.d.ts.map +1 -0
  31. package/dist/classes/PedTask.js +3276 -0
  32. package/dist/classes/PersChar.d.ts +39 -0
  33. package/dist/classes/PersChar.d.ts.map +1 -0
  34. package/dist/classes/PersChar.js +69 -0
  35. package/dist/classes/Pickup.d.ts +30 -0
  36. package/dist/classes/Pickup.d.ts.map +1 -0
  37. package/dist/classes/Pickup.js +45 -0
  38. package/dist/classes/Player.d.ts +1309 -0
  39. package/dist/classes/Player.d.ts.map +1 -0
  40. package/dist/classes/Player.js +1808 -0
  41. package/dist/classes/Prop.d.ts +253 -0
  42. package/dist/classes/Prop.d.ts.map +1 -0
  43. package/dist/classes/Prop.js +362 -0
  44. package/dist/classes/PropSet.d.ts +46 -0
  45. package/dist/classes/PropSet.d.ts.map +1 -0
  46. package/dist/classes/PropSet.js +67 -0
  47. package/dist/classes/Vehicle.d.ts +1188 -0
  48. package/dist/classes/Vehicle.d.ts.map +1 -0
  49. package/dist/classes/Vehicle.js +1652 -0
  50. package/dist/classes/VehicleModel.d.ts +11 -0
  51. package/dist/classes/VehicleModel.d.ts.map +1 -0
  52. package/dist/classes/VehicleModel.js +15 -0
  53. package/dist/classes/VehicleTask.d.ts +87 -0
  54. package/dist/classes/VehicleTask.d.ts.map +1 -0
  55. package/dist/classes/VehicleTask.js +118 -0
  56. package/dist/classes/Volume.d.ts +142 -0
  57. package/dist/classes/Volume.d.ts.map +1 -0
  58. package/dist/classes/Volume.js +194 -0
  59. package/dist/classes/Weapon.d.ts +690 -0
  60. package/dist/classes/Weapon.d.ts.map +1 -0
  61. package/dist/classes/Weapon.js +934 -0
  62. package/dist/enums/eActionDisableFlags.d.ts +38 -0
  63. package/dist/enums/eActionDisableFlags.d.ts.map +1 -0
  64. package/dist/enums/eActionDisableFlags.js +38 -0
  65. package/dist/enums/eAddItemReason.d.ts +20 -0
  66. package/dist/enums/eAddItemReason.d.ts.map +1 -0
  67. package/dist/enums/eAddItemReason.js +20 -0
  68. package/dist/enums/eAmmoType.d.ts +88 -0
  69. package/dist/enums/eAmmoType.d.ts.map +1 -0
  70. package/dist/enums/eAmmoType.js +88 -0
  71. package/dist/enums/eAnimalRarityLevel.d.ts +7 -0
  72. package/dist/enums/eAnimalRarityLevel.d.ts.map +1 -0
  73. package/dist/enums/eAnimalRarityLevel.js +7 -0
  74. package/dist/enums/eAttributeCore.d.ts +6 -0
  75. package/dist/enums/eAttributeCore.d.ts.map +1 -0
  76. package/dist/enums/eAttributeCore.js +6 -0
  77. package/dist/enums/eCarryingFlags.d.ts +43 -0
  78. package/dist/enums/eCarryingFlags.d.ts.map +1 -0
  79. package/dist/enums/eCarryingFlags.js +43 -0
  80. package/dist/enums/eCrimeType.d.ts +61 -0
  81. package/dist/enums/eCrimeType.d.ts.map +1 -0
  82. package/dist/enums/eCrimeType.js +61 -0
  83. package/dist/enums/eDispatchType.d.ts +20 -0
  84. package/dist/enums/eDispatchType.d.ts.map +1 -0
  85. package/dist/enums/eDispatchType.js +20 -0
  86. package/dist/enums/eDoorId.d.ts +16 -0
  87. package/dist/enums/eDoorId.d.ts.map +1 -0
  88. package/dist/enums/eDoorId.js +16 -0
  89. package/dist/enums/eEnterExitVehicleFlags.d.ts +32 -0
  90. package/dist/enums/eEnterExitVehicleFlags.d.ts.map +1 -0
  91. package/dist/enums/eEnterExitVehicleFlags.js +32 -0
  92. package/dist/enums/eEulerRotationOrder.d.ts +9 -0
  93. package/dist/enums/eEulerRotationOrder.d.ts.map +1 -0
  94. package/dist/enums/eEulerRotationOrder.js +9 -0
  95. package/dist/enums/eExplosionTag.d.ts +40 -0
  96. package/dist/enums/eExplosionTag.d.ts.map +1 -0
  97. package/dist/enums/eExplosionTag.js +40 -0
  98. package/dist/enums/eFleeStyle.d.ts +16 -0
  99. package/dist/enums/eFleeStyle.d.ts.map +1 -0
  100. package/dist/enums/eFleeStyle.js +16 -0
  101. package/dist/enums/eIkControlFlags.d.ts +34 -0
  102. package/dist/enums/eIkControlFlags.d.ts.map +1 -0
  103. package/dist/enums/eIkControlFlags.js +34 -0
  104. package/dist/enums/eInventoryItemSound.d.ts +6 -0
  105. package/dist/enums/eInventoryItemSound.d.ts.map +1 -0
  106. package/dist/enums/eInventoryItemSound.js +6 -0
  107. package/dist/enums/eLookIntensity.d.ts +7 -0
  108. package/dist/enums/eLookIntensity.d.ts.map +1 -0
  109. package/dist/enums/eLookIntensity.js +7 -0
  110. package/dist/enums/eLookReturnAnimation.d.ts +6 -0
  111. package/dist/enums/eLookReturnAnimation.d.ts.map +1 -0
  112. package/dist/enums/eLookReturnAnimation.js +6 -0
  113. package/dist/enums/eLootingFlags.d.ts +32 -0
  114. package/dist/enums/eLootingFlags.d.ts.map +1 -0
  115. package/dist/enums/eLootingFlags.js +32 -0
  116. package/dist/enums/eMetaPedExpressions.d.ts +118 -0
  117. package/dist/enums/eMetaPedExpressions.d.ts.map +1 -0
  118. package/dist/enums/eMetaPedExpressions.js +118 -0
  119. package/dist/enums/eMotivationState.d.ts +14 -0
  120. package/dist/enums/eMotivationState.d.ts.map +1 -0
  121. package/dist/enums/eMotivationState.js +14 -0
  122. package/dist/enums/ePedAttribute.d.ts +26 -0
  123. package/dist/enums/ePedAttribute.d.ts.map +1 -0
  124. package/dist/enums/ePedAttribute.js +26 -0
  125. package/dist/enums/ePedCombatAbility.d.ts +7 -0
  126. package/dist/enums/ePedCombatAbility.d.ts.map +1 -0
  127. package/dist/enums/ePedCombatAbility.js +7 -0
  128. package/dist/enums/ePedCombatMovement.d.ts +8 -0
  129. package/dist/enums/ePedCombatMovement.d.ts.map +1 -0
  130. package/dist/enums/ePedCombatMovement.js +8 -0
  131. package/dist/enums/ePedCombatRange.d.ts +9 -0
  132. package/dist/enums/ePedCombatRange.d.ts.map +1 -0
  133. package/dist/enums/ePedCombatRange.js +9 -0
  134. package/dist/enums/ePedDamageCleanliness.d.ts +6 -0
  135. package/dist/enums/ePedDamageCleanliness.d.ts.map +1 -0
  136. package/dist/enums/ePedDamageCleanliness.js +6 -0
  137. package/dist/enums/ePedMood.d.ts +13 -0
  138. package/dist/enums/ePedMood.d.ts.map +1 -0
  139. package/dist/enums/ePedMood.js +13 -0
  140. package/dist/enums/ePedQuality.d.ts +8 -0
  141. package/dist/enums/ePedQuality.d.ts.map +1 -0
  142. package/dist/enums/ePedQuality.js +8 -0
  143. package/dist/enums/ePedScriptConfigFlags.d.ts +604 -0
  144. package/dist/enums/ePedScriptConfigFlags.d.ts.map +1 -0
  145. package/dist/enums/ePedScriptConfigFlags.js +604 -0
  146. package/dist/enums/ePlacementFlag.d.ts +27 -0
  147. package/dist/enums/ePlacementFlag.d.ts.map +1 -0
  148. package/dist/enums/ePlacementFlag.js +27 -0
  149. package/dist/enums/eRagdollBlockingFlags.d.ts +23 -0
  150. package/dist/enums/eRagdollBlockingFlags.d.ts.map +1 -0
  151. package/dist/enums/eRagdollBlockingFlags.js +23 -0
  152. package/dist/enums/eRemoveItemReason.d.ts +19 -0
  153. package/dist/enums/eRemoveItemReason.d.ts.map +1 -0
  154. package/dist/enums/eRemoveItemReason.js +19 -0
  155. package/dist/enums/eSavegameType.d.ts +16 -0
  156. package/dist/enums/eSavegameType.d.ts.map +1 -0
  157. package/dist/enums/eSavegameType.js +16 -0
  158. package/dist/enums/eScenarioBlockingFlags.d.ts +11 -0
  159. package/dist/enums/eScenarioBlockingFlags.d.ts.map +1 -0
  160. package/dist/enums/eScenarioBlockingFlags.js +11 -0
  161. package/dist/enums/eScriptedAnimFlags.d.ts +35 -0
  162. package/dist/enums/eScriptedAnimFlags.d.ts.map +1 -0
  163. package/dist/enums/eScriptedAnimFlags.js +35 -0
  164. package/dist/enums/eSessionFlags.d.ts +16 -0
  165. package/dist/enums/eSessionFlags.d.ts.map +1 -0
  166. package/dist/enums/eSessionFlags.js +16 -0
  167. package/dist/enums/eTargetingMode.d.ts +8 -0
  168. package/dist/enums/eTargetingMode.d.ts.map +1 -0
  169. package/dist/enums/eTargetingMode.js +8 -0
  170. package/dist/enums/eUIFeedChannel.d.ts +18 -0
  171. package/dist/enums/eUIFeedChannel.d.ts.map +1 -0
  172. package/dist/enums/eUIFeedChannel.js +18 -0
  173. package/dist/enums/eUiRpgStatusEffect.d.ts +19 -0
  174. package/dist/enums/eUiRpgStatusEffect.d.ts.map +1 -0
  175. package/dist/enums/eUiRpgStatusEffect.js +19 -0
  176. package/dist/enums/eVehicleSeat.d.ts +15 -0
  177. package/dist/enums/eVehicleSeat.d.ts.map +1 -0
  178. package/dist/enums/eVehicleSeat.js +15 -0
  179. package/dist/enums/eWeaponAttachPoint.d.ts +36 -0
  180. package/dist/enums/eWeaponAttachPoint.d.ts.map +1 -0
  181. package/dist/enums/eWeaponAttachPoint.js +36 -0
  182. package/dist/enums/eWeaponHash.d.ts +175 -0
  183. package/dist/enums/eWeaponHash.d.ts.map +1 -0
  184. package/dist/enums/eWeaponHash.js +175 -0
  185. package/dist/enums/naSpeechEventType.d.ts +57 -0
  186. package/dist/enums/naSpeechEventType.d.ts.map +1 -0
  187. package/dist/enums/naSpeechEventType.js +57 -0
  188. package/dist/index.d.ts +156 -0
  189. package/dist/index.d.ts.map +1 -0
  190. package/dist/index.js +158 -0
  191. package/dist/namespaces/Aicoverpoint.d.ts +95 -0
  192. package/dist/namespaces/Aicoverpoint.d.ts.map +1 -0
  193. package/dist/namespaces/Aicoverpoint.js +131 -0
  194. package/dist/namespaces/Aitransport.d.ts +197 -0
  195. package/dist/namespaces/Aitransport.d.ts.map +1 -0
  196. package/dist/namespaces/Aitransport.js +246 -0
  197. package/dist/namespaces/Animscene.d.ts +174 -0
  198. package/dist/namespaces/Animscene.d.ts.map +1 -0
  199. package/dist/namespaces/Animscene.js +222 -0
  200. package/dist/namespaces/Attribute.d.ts +171 -0
  201. package/dist/namespaces/Attribute.d.ts.map +1 -0
  202. package/dist/namespaces/Attribute.js +222 -0
  203. package/dist/namespaces/Audio.d.ts +1255 -0
  204. package/dist/namespaces/Audio.d.ts.map +1 -0
  205. package/dist/namespaces/Audio.js +1695 -0
  206. package/dist/namespaces/Badsport.d.ts +8 -0
  207. package/dist/namespaces/Badsport.d.ts.map +1 -0
  208. package/dist/namespaces/Badsport.js +11 -0
  209. package/dist/namespaces/Bounty.d.ts +154 -0
  210. package/dist/namespaces/Bounty.d.ts.map +1 -0
  211. package/dist/namespaces/Bounty.js +248 -0
  212. package/dist/namespaces/Brain.d.ts +75 -0
  213. package/dist/namespaces/Brain.d.ts.map +1 -0
  214. package/dist/namespaces/Brain.js +98 -0
  215. package/dist/namespaces/Builtin.d.ts +137 -0
  216. package/dist/namespaces/Builtin.d.ts.map +1 -0
  217. package/dist/namespaces/Builtin.js +180 -0
  218. package/dist/namespaces/CamStatics.d.ts +972 -0
  219. package/dist/namespaces/CamStatics.d.ts.map +1 -0
  220. package/dist/namespaces/CamStatics.js +1360 -0
  221. package/dist/namespaces/Clock.d.ts +108 -0
  222. package/dist/namespaces/Clock.d.ts.map +1 -0
  223. package/dist/namespaces/Clock.js +149 -0
  224. package/dist/namespaces/Collection.d.ts +201 -0
  225. package/dist/namespaces/Collection.d.ts.map +1 -0
  226. package/dist/namespaces/Collection.js +263 -0
  227. package/dist/namespaces/Companion.d.ts +143 -0
  228. package/dist/namespaces/Companion.d.ts.map +1 -0
  229. package/dist/namespaces/Companion.js +191 -0
  230. package/dist/namespaces/Compapp.d.ts +34 -0
  231. package/dist/namespaces/Compapp.d.ts.map +1 -0
  232. package/dist/namespaces/Compapp.js +44 -0
  233. package/dist/namespaces/Compendium.d.ts +195 -0
  234. package/dist/namespaces/Compendium.d.ts.map +1 -0
  235. package/dist/namespaces/Compendium.js +261 -0
  236. package/dist/namespaces/Crashlog.d.ts +63 -0
  237. package/dist/namespaces/Crashlog.d.ts.map +1 -0
  238. package/dist/namespaces/Crashlog.js +88 -0
  239. package/dist/namespaces/Crew.d.ts +85 -0
  240. package/dist/namespaces/Crew.d.ts.map +1 -0
  241. package/dist/namespaces/Crew.js +127 -0
  242. package/dist/namespaces/Databinding.d.ts +500 -0
  243. package/dist/namespaces/Databinding.d.ts.map +1 -0
  244. package/dist/namespaces/Databinding.js +667 -0
  245. package/dist/namespaces/Datafile.d.ts +344 -0
  246. package/dist/namespaces/Datafile.d.ts.map +1 -0
  247. package/dist/namespaces/Datafile.js +495 -0
  248. package/dist/namespaces/Debug.d.ts +21 -0
  249. package/dist/namespaces/Debug.d.ts.map +1 -0
  250. package/dist/namespaces/Debug.js +27 -0
  251. package/dist/namespaces/Decorator.d.ts +105 -0
  252. package/dist/namespaces/Decorator.d.ts.map +1 -0
  253. package/dist/namespaces/Decorator.js +134 -0
  254. package/dist/namespaces/Dlc.d.ts +20 -0
  255. package/dist/namespaces/Dlc.d.ts.map +1 -0
  256. package/dist/namespaces/Dlc.js +28 -0
  257. package/dist/namespaces/EntityStatics.d.ts +520 -0
  258. package/dist/namespaces/EntityStatics.d.ts.map +1 -0
  259. package/dist/namespaces/EntityStatics.js +679 -0
  260. package/dist/namespaces/Event.d.ts +267 -0
  261. package/dist/namespaces/Event.d.ts.map +1 -0
  262. package/dist/namespaces/Event.js +340 -0
  263. package/dist/namespaces/Fire.d.ts +233 -0
  264. package/dist/namespaces/Fire.d.ts.map +1 -0
  265. package/dist/namespaces/Fire.js +288 -0
  266. package/dist/namespaces/Flock.d.ts +306 -0
  267. package/dist/namespaces/Flock.d.ts.map +1 -0
  268. package/dist/namespaces/Flock.js +396 -0
  269. package/dist/namespaces/Gang.d.ts +211 -0
  270. package/dist/namespaces/Gang.d.ts.map +1 -0
  271. package/dist/namespaces/Gang.js +297 -0
  272. package/dist/namespaces/GoogleAnalytics.d.ts +23 -0
  273. package/dist/namespaces/GoogleAnalytics.d.ts.map +1 -0
  274. package/dist/namespaces/GoogleAnalytics.js +31 -0
  275. package/dist/namespaces/Graphics.d.ts +1598 -0
  276. package/dist/namespaces/Graphics.d.ts.map +1 -0
  277. package/dist/namespaces/Graphics.js +2131 -0
  278. package/dist/namespaces/Hud.d.ts +1058 -0
  279. package/dist/namespaces/Hud.d.ts.map +1 -0
  280. package/dist/namespaces/Hud.js +1443 -0
  281. package/dist/namespaces/Ik.d.ts +33 -0
  282. package/dist/namespaces/Ik.d.ts.map +1 -0
  283. package/dist/namespaces/Ik.js +44 -0
  284. package/dist/namespaces/Interaction.d.ts +40 -0
  285. package/dist/namespaces/Interaction.d.ts.map +1 -0
  286. package/dist/namespaces/Interaction.js +52 -0
  287. package/dist/namespaces/InteriorStatics.d.ts +97 -0
  288. package/dist/namespaces/InteriorStatics.d.ts.map +1 -0
  289. package/dist/namespaces/InteriorStatics.js +129 -0
  290. package/dist/namespaces/Inventory.d.ts +597 -0
  291. package/dist/namespaces/Inventory.d.ts.map +1 -0
  292. package/dist/namespaces/Inventory.js +807 -0
  293. package/dist/namespaces/Itemdatabase.d.ts +526 -0
  294. package/dist/namespaces/Itemdatabase.d.ts.map +1 -0
  295. package/dist/namespaces/Itemdatabase.js +739 -0
  296. package/dist/namespaces/Itemset.d.ts +39 -0
  297. package/dist/namespaces/Itemset.d.ts.map +1 -0
  298. package/dist/namespaces/Itemset.js +50 -0
  299. package/dist/namespaces/Law.d.ts +756 -0
  300. package/dist/namespaces/Law.d.ts.map +1 -0
  301. package/dist/namespaces/Law.js +1007 -0
  302. package/dist/namespaces/Localization.d.ts +42 -0
  303. package/dist/namespaces/Localization.d.ts.map +1 -0
  304. package/dist/namespaces/Localization.js +50 -0
  305. package/dist/namespaces/Map.d.ts +473 -0
  306. package/dist/namespaces/Map.d.ts.map +1 -0
  307. package/dist/namespaces/Map.js +641 -0
  308. package/dist/namespaces/Minigame.d.ts +245 -0
  309. package/dist/namespaces/Minigame.d.ts.map +1 -0
  310. package/dist/namespaces/Minigame.js +342 -0
  311. package/dist/namespaces/Misc.d.ts +1704 -0
  312. package/dist/namespaces/Misc.d.ts.map +1 -0
  313. package/dist/namespaces/Misc.js +2302 -0
  314. package/dist/namespaces/Missiondata.d.ts +100 -0
  315. package/dist/namespaces/Missiondata.d.ts.map +1 -0
  316. package/dist/namespaces/Missiondata.js +136 -0
  317. package/dist/namespaces/Money.d.ts +43 -0
  318. package/dist/namespaces/Money.d.ts.map +1 -0
  319. package/dist/namespaces/Money.js +58 -0
  320. package/dist/namespaces/Netshopping.d.ts +154 -0
  321. package/dist/namespaces/Netshopping.d.ts.map +1 -0
  322. package/dist/namespaces/Netshopping.js +216 -0
  323. package/dist/namespaces/Network.d.ts +3022 -0
  324. package/dist/namespaces/Network.d.ts.map +1 -0
  325. package/dist/namespaces/Network.js +4230 -0
  326. package/dist/namespaces/Object.d.ts +594 -0
  327. package/dist/namespaces/Object.d.ts.map +1 -0
  328. package/dist/namespaces/Object.js +780 -0
  329. package/dist/namespaces/Pad.d.ts +249 -0
  330. package/dist/namespaces/Pad.d.ts.map +1 -0
  331. package/dist/namespaces/Pad.js +328 -0
  332. package/dist/namespaces/Pathfind.d.ts +545 -0
  333. package/dist/namespaces/Pathfind.d.ts.map +1 -0
  334. package/dist/namespaces/Pathfind.js +704 -0
  335. package/dist/namespaces/PedStatics.d.ts +1738 -0
  336. package/dist/namespaces/PedStatics.d.ts.map +1 -0
  337. package/dist/namespaces/PedStatics.js +2296 -0
  338. package/dist/namespaces/Perschar.d.ts +179 -0
  339. package/dist/namespaces/Perschar.d.ts.map +1 -0
  340. package/dist/namespaces/Perschar.js +251 -0
  341. package/dist/namespaces/Persistence.d.ts +116 -0
  342. package/dist/namespaces/Persistence.d.ts.map +1 -0
  343. package/dist/namespaces/Persistence.js +158 -0
  344. package/dist/namespaces/Physics.d.ts +491 -0
  345. package/dist/namespaces/Physics.d.ts.map +1 -0
  346. package/dist/namespaces/Physics.js +637 -0
  347. package/dist/namespaces/PlayerStatics.d.ts +850 -0
  348. package/dist/namespaces/PlayerStatics.d.ts.map +1 -0
  349. package/dist/namespaces/PlayerStatics.js +1147 -0
  350. package/dist/namespaces/Population.d.ts +188 -0
  351. package/dist/namespaces/Population.d.ts.map +1 -0
  352. package/dist/namespaces/Population.js +247 -0
  353. package/dist/namespaces/Posse.d.ts +168 -0
  354. package/dist/namespaces/Posse.d.ts.map +1 -0
  355. package/dist/namespaces/Posse.js +230 -0
  356. package/dist/namespaces/Propset.d.ts +196 -0
  357. package/dist/namespaces/Propset.d.ts.map +1 -0
  358. package/dist/namespaces/Propset.js +249 -0
  359. package/dist/namespaces/Queue.d.ts +12 -0
  360. package/dist/namespaces/Queue.d.ts.map +1 -0
  361. package/dist/namespaces/Queue.js +16 -0
  362. package/dist/namespaces/Recording.d.ts +7 -0
  363. package/dist/namespaces/Recording.d.ts.map +1 -0
  364. package/dist/namespaces/Recording.js +9 -0
  365. package/dist/namespaces/Replay.d.ts +32 -0
  366. package/dist/namespaces/Replay.d.ts.map +1 -0
  367. package/dist/namespaces/Replay.js +42 -0
  368. package/dist/namespaces/Save.d.ts +122 -0
  369. package/dist/namespaces/Save.d.ts.map +1 -0
  370. package/dist/namespaces/Save.js +178 -0
  371. package/dist/namespaces/Scripts.d.ts +506 -0
  372. package/dist/namespaces/Scripts.d.ts.map +1 -0
  373. package/dist/namespaces/Scripts.js +716 -0
  374. package/dist/namespaces/Shapetest.d.ts +87 -0
  375. package/dist/namespaces/Shapetest.d.ts.map +1 -0
  376. package/dist/namespaces/Shapetest.js +105 -0
  377. package/dist/namespaces/Socialclub.d.ts +188 -0
  378. package/dist/namespaces/Socialclub.d.ts.map +1 -0
  379. package/dist/namespaces/Socialclub.js +262 -0
  380. package/dist/namespaces/Socialclubfeed.d.ts +13 -0
  381. package/dist/namespaces/Socialclubfeed.d.ts.map +1 -0
  382. package/dist/namespaces/Socialclubfeed.js +17 -0
  383. package/dist/namespaces/Spactionproxy.d.ts +29 -0
  384. package/dist/namespaces/Spactionproxy.d.ts.map +1 -0
  385. package/dist/namespaces/Spactionproxy.js +43 -0
  386. package/dist/namespaces/Stats.d.ts +537 -0
  387. package/dist/namespaces/Stats.d.ts.map +1 -0
  388. package/dist/namespaces/Stats.js +740 -0
  389. package/dist/namespaces/Streaming.d.ts +356 -0
  390. package/dist/namespaces/Streaming.d.ts.map +1 -0
  391. package/dist/namespaces/Streaming.js +531 -0
  392. package/dist/namespaces/Task.d.ts +1506 -0
  393. package/dist/namespaces/Task.d.ts.map +1 -0
  394. package/dist/namespaces/Task.js +2024 -0
  395. package/dist/namespaces/Telemetry.d.ts +507 -0
  396. package/dist/namespaces/Telemetry.d.ts.map +1 -0
  397. package/dist/namespaces/Telemetry.js +670 -0
  398. package/dist/namespaces/Txd.d.ts +41 -0
  399. package/dist/namespaces/Txd.d.ts.map +1 -0
  400. package/dist/namespaces/Txd.js +57 -0
  401. package/dist/namespaces/Uiapps.d.ts +88 -0
  402. package/dist/namespaces/Uiapps.d.ts.map +1 -0
  403. package/dist/namespaces/Uiapps.js +126 -0
  404. package/dist/namespaces/Uidebug.d.ts +23 -0
  405. package/dist/namespaces/Uidebug.d.ts.map +1 -0
  406. package/dist/namespaces/Uidebug.js +27 -0
  407. package/dist/namespaces/Uievents.d.ts +37 -0
  408. package/dist/namespaces/Uievents.d.ts.map +1 -0
  409. package/dist/namespaces/Uievents.js +47 -0
  410. package/dist/namespaces/Uifeed.d.ts +178 -0
  411. package/dist/namespaces/Uifeed.d.ts.map +1 -0
  412. package/dist/namespaces/Uifeed.js +252 -0
  413. package/dist/namespaces/Uilog.d.ts +161 -0
  414. package/dist/namespaces/Uilog.d.ts.map +1 -0
  415. package/dist/namespaces/Uilog.js +221 -0
  416. package/dist/namespaces/Uipinning.d.ts +8 -0
  417. package/dist/namespaces/Uipinning.d.ts.map +1 -0
  418. package/dist/namespaces/Uipinning.js +10 -0
  419. package/dist/namespaces/Uistatemachine.d.ts +63 -0
  420. package/dist/namespaces/Uistatemachine.d.ts.map +1 -0
  421. package/dist/namespaces/Uistatemachine.js +88 -0
  422. package/dist/namespaces/Uistickyfeed.d.ts +55 -0
  423. package/dist/namespaces/Uistickyfeed.d.ts.map +1 -0
  424. package/dist/namespaces/Uistickyfeed.js +75 -0
  425. package/dist/namespaces/Uitutorial.d.ts +38 -0
  426. package/dist/namespaces/Uitutorial.d.ts.map +1 -0
  427. package/dist/namespaces/Uitutorial.js +44 -0
  428. package/dist/namespaces/Unlock.d.ts +49 -0
  429. package/dist/namespaces/Unlock.d.ts.map +1 -0
  430. package/dist/namespaces/Unlock.js +68 -0
  431. package/dist/namespaces/VehicleStatics.d.ts +925 -0
  432. package/dist/namespaces/VehicleStatics.d.ts.map +1 -0
  433. package/dist/namespaces/VehicleStatics.js +1241 -0
  434. package/dist/namespaces/Voice.d.ts +110 -0
  435. package/dist/namespaces/Voice.d.ts.map +1 -0
  436. package/dist/namespaces/Voice.js +158 -0
  437. package/dist/namespaces/VolumeStatics.d.ts +393 -0
  438. package/dist/namespaces/VolumeStatics.d.ts.map +1 -0
  439. package/dist/namespaces/VolumeStatics.js +506 -0
  440. package/dist/namespaces/Water.d.ts +115 -0
  441. package/dist/namespaces/Water.d.ts.map +1 -0
  442. package/dist/namespaces/Water.js +151 -0
  443. package/dist/namespaces/WeaponStatics.d.ts +638 -0
  444. package/dist/namespaces/WeaponStatics.d.ts.map +1 -0
  445. package/dist/namespaces/WeaponStatics.js +848 -0
  446. package/dist/namespaces/Zone.d.ts +39 -0
  447. package/dist/namespaces/Zone.d.ts.map +1 -0
  448. package/dist/namespaces/Zone.js +42 -0
  449. package/dist/structs/BufferedClass.d.ts +6 -0
  450. package/dist/structs/BufferedClass.d.ts.map +1 -0
  451. package/dist/structs/BufferedClass.js +12 -0
  452. package/dist/structs/HorsePeltIn.d.ts +17 -0
  453. package/dist/structs/HorsePeltIn.d.ts.map +1 -0
  454. package/dist/structs/HorsePeltIn.js +24 -0
  455. package/dist/structs/HorsePeltOut.d.ts +9 -0
  456. package/dist/structs/HorsePeltOut.d.ts.map +1 -0
  457. package/dist/structs/HorsePeltOut.js +16 -0
  458. package/dist/types/BufferedClass.d.ts +6 -0
  459. package/dist/types/BufferedClass.d.ts.map +1 -0
  460. package/dist/types/BufferedClass.js +12 -0
  461. package/dist/types/Color.d.ts +12 -0
  462. package/dist/types/Color.d.ts.map +1 -0
  463. package/dist/types/Color.js +24 -0
  464. package/dist/types/HandleRegistry.d.ts +7 -0
  465. package/dist/types/HandleRegistry.d.ts.map +1 -0
  466. package/dist/types/HandleRegistry.js +8 -0
  467. package/dist/types/IHandle.d.ts +4 -0
  468. package/dist/types/IHandle.d.ts.map +1 -0
  469. package/dist/types/IHandle.js +1 -0
  470. package/dist/types/NativeAliases.d.ts +21 -0
  471. package/dist/types/NativeAliases.d.ts.map +1 -0
  472. package/dist/types/NativeAliases.js +12 -0
  473. package/dist/types/Vector2.d.ts +14 -0
  474. package/dist/types/Vector2.d.ts.map +1 -0
  475. package/dist/types/Vector2.js +33 -0
  476. package/dist/types/Vector3.d.ts +15 -0
  477. package/dist/types/Vector3.d.ts.map +1 -0
  478. package/dist/types/Vector3.js +34 -0
  479. package/dist/types/Vector4.d.ts +16 -0
  480. package/dist/types/Vector4.d.ts.map +1 -0
  481. package/dist/types/Vector4.js +35 -0
  482. package/package.json +37 -0
  483. package/src/classes/AnimScene.ts +595 -0
  484. package/src/classes/BaseModel.ts +189 -0
  485. package/src/classes/BaseTask.ts +154 -0
  486. package/src/classes/Cam.ts +342 -0
  487. package/src/classes/Entity.ts +1681 -0
  488. package/src/classes/Interior.ts +115 -0
  489. package/src/classes/ItemSet.ts +44 -0
  490. package/src/classes/Ped.ts +6472 -0
  491. package/src/classes/PedModel.ts +20 -0
  492. package/src/classes/PedTask.ts +3644 -0
  493. package/src/classes/PersChar.ts +92 -0
  494. package/src/classes/Pickup.ts +58 -0
  495. package/src/classes/Player.ts +2063 -0
  496. package/src/classes/Prop.ts +423 -0
  497. package/src/classes/PropSet.ts +84 -0
  498. package/src/classes/Vehicle.ts +1894 -0
  499. package/src/classes/VehicleModel.ts +22 -0
  500. package/src/classes/VehicleTask.ts +143 -0
  501. package/src/classes/Volume.ts +225 -0
  502. package/src/classes/Weapon.ts +1063 -0
  503. package/src/enums/eActionDisableFlags.ts +37 -0
  504. package/src/enums/eAddItemReason.ts +19 -0
  505. package/src/enums/eAmmoType.ts +87 -0
  506. package/src/enums/eAnimalRarityLevel.ts +6 -0
  507. package/src/enums/eAttributeCore.ts +5 -0
  508. package/src/enums/eCarryingFlags.ts +42 -0
  509. package/src/enums/eCrimeType.ts +60 -0
  510. package/src/enums/eDispatchType.ts +19 -0
  511. package/src/enums/eDoorId.ts +15 -0
  512. package/src/enums/eEnterExitVehicleFlags.ts +31 -0
  513. package/src/enums/eEulerRotationOrder.ts +8 -0
  514. package/src/enums/eExplosionTag.ts +39 -0
  515. package/src/enums/eFleeStyle.ts +15 -0
  516. package/src/enums/eIkControlFlags.ts +33 -0
  517. package/src/enums/eInventoryItemSound.ts +5 -0
  518. package/src/enums/eLookIntensity.ts +6 -0
  519. package/src/enums/eLookReturnAnimation.ts +5 -0
  520. package/src/enums/eLootingFlags.ts +31 -0
  521. package/src/enums/eMetaPedExpressions.ts +117 -0
  522. package/src/enums/eMotivationState.ts +13 -0
  523. package/src/enums/ePedAttribute.ts +25 -0
  524. package/src/enums/ePedCombatAbility.ts +6 -0
  525. package/src/enums/ePedCombatMovement.ts +7 -0
  526. package/src/enums/ePedCombatRange.ts +8 -0
  527. package/src/enums/ePedDamageCleanliness.ts +5 -0
  528. package/src/enums/ePedMood.ts +12 -0
  529. package/src/enums/ePedQuality.ts +7 -0
  530. package/src/enums/ePedScriptConfigFlags.ts +603 -0
  531. package/src/enums/ePlacementFlag.ts +26 -0
  532. package/src/enums/eRagdollBlockingFlags.ts +22 -0
  533. package/src/enums/eRemoveItemReason.ts +18 -0
  534. package/src/enums/eSavegameType.ts +15 -0
  535. package/src/enums/eScenarioBlockingFlags.ts +10 -0
  536. package/src/enums/eScriptedAnimFlags.ts +34 -0
  537. package/src/enums/eSessionFlags.ts +15 -0
  538. package/src/enums/eTargetingMode.ts +7 -0
  539. package/src/enums/eUIFeedChannel.ts +17 -0
  540. package/src/enums/eUiRpgStatusEffect.ts +18 -0
  541. package/src/enums/eVehicleSeat.ts +14 -0
  542. package/src/enums/eWeaponAttachPoint.ts +35 -0
  543. package/src/enums/eWeaponHash.ts +174 -0
  544. package/src/enums/naSpeechEventType.ts +56 -0
  545. package/src/index.ts +164 -0
  546. package/src/namespaces/Aicoverpoint.ts +157 -0
  547. package/src/namespaces/Aitransport.ts +278 -0
  548. package/src/namespaces/Animscene.ts +255 -0
  549. package/src/namespaces/Attribute.ts +258 -0
  550. package/src/namespaces/Audio.ts +1925 -0
  551. package/src/namespaces/Badsport.ts +18 -0
  552. package/src/namespaces/Bounty.ts +289 -0
  553. package/src/namespaces/Brain.ts +115 -0
  554. package/src/namespaces/Builtin.ts +208 -0
  555. package/src/namespaces/CamStatics.ts +1563 -0
  556. package/src/namespaces/Clock.ts +174 -0
  557. package/src/namespaces/Collection.ts +299 -0
  558. package/src/namespaces/Companion.ts +224 -0
  559. package/src/namespaces/Compapp.ts +55 -0
  560. package/src/namespaces/Compendium.ts +302 -0
  561. package/src/namespaces/Crashlog.ts +107 -0
  562. package/src/namespaces/Crew.ts +151 -0
  563. package/src/namespaces/Databinding.ts +756 -0
  564. package/src/namespaces/Datafile.ts +559 -0
  565. package/src/namespaces/Debug.ts +36 -0
  566. package/src/namespaces/Decorator.ts +156 -0
  567. package/src/namespaces/Dlc.ts +38 -0
  568. package/src/namespaces/EntityStatics.ts +769 -0
  569. package/src/namespaces/Event.ts +388 -0
  570. package/src/namespaces/Fire.ts +325 -0
  571. package/src/namespaces/Flock.ts +450 -0
  572. package/src/namespaces/Gang.ts +345 -0
  573. package/src/namespaces/GoogleAnalytics.ts +41 -0
  574. package/src/namespaces/Graphics.ts +2412 -0
  575. package/src/namespaces/Hud.ts +1648 -0
  576. package/src/namespaces/Ik.ts +56 -0
  577. package/src/namespaces/Interaction.ts +64 -0
  578. package/src/namespaces/InteriorStatics.ts +153 -0
  579. package/src/namespaces/Inventory.ts +902 -0
  580. package/src/namespaces/Itemdatabase.ts +829 -0
  581. package/src/namespaces/Itemset.ts +64 -0
  582. package/src/namespaces/Law.ts +1142 -0
  583. package/src/namespaces/Localization.ts +60 -0
  584. package/src/namespaces/Map.ts +736 -0
  585. package/src/namespaces/Minigame.ts +396 -0
  586. package/src/namespaces/Misc.ts +2603 -0
  587. package/src/namespaces/Missiondata.ts +160 -0
  588. package/src/namespaces/Money.ts +73 -0
  589. package/src/namespaces/Netshopping.ts +248 -0
  590. package/src/namespaces/Network.ts +4813 -0
  591. package/src/namespaces/Object.ts +881 -0
  592. package/src/namespaces/Pad.ts +374 -0
  593. package/src/namespaces/Pathfind.ts +788 -0
  594. package/src/namespaces/PedStatics.ts +2584 -0
  595. package/src/namespaces/Perschar.ts +295 -0
  596. package/src/namespaces/Persistence.ts +187 -0
  597. package/src/namespaces/Physics.ts +717 -0
  598. package/src/namespaces/PlayerStatics.ts +1306 -0
  599. package/src/namespaces/Population.ts +287 -0
  600. package/src/namespaces/Posse.ts +267 -0
  601. package/src/namespaces/Propset.ts +285 -0
  602. package/src/namespaces/Queue.ts +24 -0
  603. package/src/namespaces/Recording.ts +16 -0
  604. package/src/namespaces/Replay.ts +53 -0
  605. package/src/namespaces/Save.ts +208 -0
  606. package/src/namespaces/Scripts.ts +816 -0
  607. package/src/namespaces/Shapetest.ts +119 -0
  608. package/src/namespaces/Socialclub.ts +301 -0
  609. package/src/namespaces/Socialclubfeed.ts +25 -0
  610. package/src/namespaces/Spactionproxy.ts +55 -0
  611. package/src/namespaces/Stats.ts +843 -0
  612. package/src/namespaces/Streaming.ts +628 -0
  613. package/src/namespaces/Task.ts +2290 -0
  614. package/src/namespaces/Telemetry.ts +755 -0
  615. package/src/namespaces/Txd.ts +71 -0
  616. package/src/namespaces/Uiapps.ts +151 -0
  617. package/src/namespaces/Uidebug.ts +36 -0
  618. package/src/namespaces/Uievents.ts +57 -0
  619. package/src/namespaces/Uifeed.ts +285 -0
  620. package/src/namespaces/Uilog.ts +257 -0
  621. package/src/namespaces/Uipinning.ts +17 -0
  622. package/src/namespaces/Uistatemachine.ts +106 -0
  623. package/src/namespaces/Uistickyfeed.ts +89 -0
  624. package/src/namespaces/Uitutorial.ts +53 -0
  625. package/src/namespaces/Unlock.ts +83 -0
  626. package/src/namespaces/VehicleStatics.ts +1410 -0
  627. package/src/namespaces/Voice.ts +189 -0
  628. package/src/namespaces/VolumeStatics.ts +569 -0
  629. package/src/namespaces/Water.ts +175 -0
  630. package/src/namespaces/WeaponStatics.ts +968 -0
  631. package/src/namespaces/Zone.ts +50 -0
  632. package/src/structs/BufferedClass.ts +14 -0
  633. package/src/structs/HorsePeltIn.ts +26 -0
  634. package/src/structs/HorsePeltOut.ts +21 -0
  635. package/src/types/BufferedClass.ts +14 -0
  636. package/src/types/Color.ts +32 -0
  637. package/src/types/HandleRegistry.ts +12 -0
  638. package/src/types/IHandle.ts +3 -0
  639. package/src/types/NativeAliases.ts +36 -0
  640. package/src/types/Vector2.ts +40 -0
  641. package/src/types/Vector3.ts +41 -0
  642. package/src/types/Vector4.ts +42 -0
@@ -0,0 +1,1063 @@
1
+ import type { eAddItemReason } from '../enums/eAddItemReason';
2
+ import type { eAmmoType } from '../enums/eAmmoType';
3
+ import type { eRemoveItemReason } from '../enums/eRemoveItemReason';
4
+ import type { eWeaponHash } from '../enums/eWeaponHash';
5
+ import type { Entity } from '../classes/Entity';
6
+ import type { Prop } from '../classes/Prop';
7
+ import { Vector2 } from '../types/Vector2';
8
+ import { Vector3 } from '../types/Vector3';
9
+ import { Vector4 } from '../types/Vector4';
10
+ import { Color } from '../types/Color';
11
+ import type { Ped } from './Ped';
12
+ import { createFromHandle } from '../types/HandleRegistry';
13
+ import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f } from '../types/NativeAliases';
14
+
15
+ export class Weapon {
16
+ protected ped: Ped;
17
+
18
+ constructor(ped: Ped) {
19
+ this.ped = ped;
20
+ }
21
+
22
+ /**
23
+ * @param toggle
24
+ */
25
+ setAllowAnyWeaponDrop(toggle: boolean): void {
26
+ inv<void>('0x78030C7867D8B9B6', this.ped.handle, toggle);
27
+ }
28
+
29
+ /**
30
+ * @returns
31
+ */
32
+ makePedReload(): any {
33
+ return inv<number>('0x79E1E511FF7EFB13', this.ped.handle);
34
+ }
35
+
36
+ /**
37
+ * @param weaponHash Refer to [enum: eWeaponHash]
38
+ * @param ammoCount
39
+ * @param p3
40
+ * @param addReason Refer to [enum: eAddItemReason]
41
+ */
42
+ giveDelayedWeaponToPed(weaponHash: eWeaponHash, ammoCount: number, p3: boolean, addReason: eAddItemReason): void {
43
+ inv<void>('0xB282DC6EBD803C75', this.ped.handle, weaponHash, ammoCount, p3, addReason);
44
+ }
45
+
46
+ /**
47
+ * @param toggle
48
+ */
49
+ N_0x45E57FDD531C9477(toggle: boolean): void {
50
+ inv<void>('0x45E57FDD531C9477', this.ped.handle, toggle);
51
+ }
52
+
53
+ /**
54
+ * @param ammoHash Refer to [enum: eAmmoType]
55
+ * @returns weaponInventoryUid
56
+ */
57
+ setAmmoTypeForPedWeaponInventory(ammoHash: eAmmoType): number {
58
+ const result = inv<number>('0xEBE46B501BC3FBCF', this.ped.handle, pvi(), ammoHash);
59
+ return result;
60
+ }
61
+
62
+ /**
63
+ * @param weaponHash Refer to [enum: eWeaponHash]
64
+ * @param p2
65
+ * @param removeReason Refer to [enum: eRemoveItemReason]
66
+ */
67
+ removeWeaponFromPed(weaponHash: eWeaponHash, p2: boolean, removeReason: eRemoveItemReason): void {
68
+ inv<void>('0x4899CB088EDF59B8', this.ped.handle, weaponHash, p2, removeReason);
69
+ }
70
+
71
+ /**
72
+ * Detaches the weapon from the ped and actually removes the ped's weapon
73
+ *
74
+ * @param p1
75
+ * @returns
76
+ */
77
+ getWeaponObjectFromPed(p1: boolean): Prop | null {
78
+ return createFromHandle<Prop>('Prop', inv<number>('0xC6A6789BB405D11C', this.ped.handle, p1, rai()));
79
+ }
80
+
81
+ /**
82
+ * @returns
83
+ */
84
+ isPedCurrentWeaponHolstered(): any {
85
+ return inv<number>('0xBDD9C235D8D1052E', this.ped.handle);
86
+ }
87
+
88
+ /**
89
+ * @param toggle
90
+ */
91
+ setInstantlyEquipWeaponPickups(toggle: boolean): void {
92
+ inv<void>('0x739B9C6D0E7F7F93', this.ped.handle, toggle);
93
+ }
94
+
95
+ /**
96
+ * Hides the ped's weapon during a cutscene.
97
+ *
98
+ * @param toggle
99
+ */
100
+ hidePedWeaponForScriptedCutscene(toggle: boolean): void {
101
+ inv<void>('0x6F6981D2253C208F', this.ped.handle, toggle);
102
+ }
103
+
104
+ /**
105
+ * @returns guidPrimary; guidSecondary
106
+ */
107
+ setPlayerPedQuickSwapWeaponByGuid(): [number, number] {
108
+ const result = inv<[number, number]>('0xEC1F85DA51D3D6C4', this.ped.handle, pvi(), pvi());
109
+ return [result[0], result[1]];
110
+ }
111
+
112
+ /**
113
+ * @returns Returns the total ammo in the ped weapon from it's guid, or `0`.; guid
114
+ */
115
+ getAmmoInPedWeaponFromGuid(): [number, number] {
116
+ const result = inv<[number, number]>('0x4823F13A21F51964', this.ped.handle, pvi(), rai());
117
+ return [result[0], result[1]];
118
+ }
119
+
120
+ /**
121
+ * @param p1
122
+ * @param p2
123
+ */
124
+ removeAllPedWeapons(p1: boolean, p2: boolean): void {
125
+ inv<void>('0xF25DF915FA38C5F3', this.ped.handle, p1, p2);
126
+ }
127
+
128
+ /**
129
+ * Returns eCurrentHeldWeapon
130
+ * _GET_R* - _GET_T*
131
+ *
132
+ * @returns
133
+ */
134
+ getPedCurrentHeldWeapon(): string | number {
135
+ return (inv<number>('0x8425C5F057012DAB', this.ped.handle, rai())) & 0xFFFFFFFF;
136
+ }
137
+
138
+ /**
139
+ * @param toggle
140
+ */
141
+ setForceAutoEquip(toggle: boolean): void {
142
+ inv<void>('0xBE711B14A159E84F', this.ped.handle, toggle);
143
+ }
144
+
145
+ /**
146
+ * @param componentHash
147
+ * @param weaponHash Refer to [enum: eWeaponHash]
148
+ */
149
+ removeWeaponComponentFromPed(componentHash: string | number, weaponHash: eWeaponHash): void {
150
+ inv<void>('0x19F70C4D80494FF8', this.ped.handle, _h(componentHash), weaponHash);
151
+ }
152
+
153
+ /**
154
+ * @param visible
155
+ * @param deselectWeapon
156
+ * @param p3
157
+ * @param p4
158
+ */
159
+ setPedCurrentWeaponVisible(visible: boolean, deselectWeapon: boolean, p3: boolean, p4: boolean): void {
160
+ inv<void>('0x0725A4CCFDED9A70', this.ped.handle, visible, deselectWeapon, p3, p4);
161
+ }
162
+
163
+ /**
164
+ * Old name: _DROP_CURRENT_PED_WEAPON
165
+ *
166
+ * @param p1
167
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
168
+ * @param p3
169
+ * @param p4
170
+ * @returns
171
+ */
172
+ makePedDropWeapon(p1: boolean, attachPoint: number, p3: boolean, p4: boolean): Entity | null {
173
+ return createFromHandle<Entity>('Entity', inv<number>('0xCEF4C65DE502D367', this.ped.handle, p1, attachPoint, p3, p4, rai()));
174
+ }
175
+
176
+ removeAllPedAmmo(): void {
177
+ inv<void>('0x1B83C0DEEBCBB214', this.ped.handle);
178
+ }
179
+
180
+ /**
181
+ * @param allow
182
+ */
183
+ setAllowDualWield(allow: boolean): void {
184
+ inv<void>('0x83B8D50EB9446BBA', this.ped.handle, allow);
185
+ }
186
+
187
+ /**
188
+ * Returns weaponEmoteVariation WEAPON_EMOTE_VARIATION_INVALID = -2,
189
+ * WEAPON_EMOTE_VARIATION_BASE,
190
+ * WEAPON_EMOTE_VARIATION_A,
191
+ * WEAPON_EMOTE_VARIATION_B,
192
+ * WEAPON_EMOTE_VARIATION_C,
193
+ * WEAPON_EMOTE_VARIATION_D,
194
+ * WEAPON_EMOTE_VARIATION_PREVIEW,
195
+ * WEAPON_EMOTE_NUM_VARIATIONS
196
+ *
197
+ * @param variation
198
+ * @returns
199
+ */
200
+ getWeaponEmoteVariation(variation: number): number {
201
+ return inv<number>('0x86147D05FA831D3A', this.ped.handle, variation, rai());
202
+ }
203
+
204
+ /**
205
+ * @param weaponHash Refer to [enum: eWeaponHash]
206
+ * @returns
207
+ */
208
+ isPedCarryingWeapon(weaponHash: eWeaponHash): any {
209
+ return inv<number>('0xF29A186ED428B552', this.ped.handle, weaponHash);
210
+ }
211
+
212
+ /**
213
+ * @returns
214
+ */
215
+ refillAmmoInCurrentPedWeapon(): any {
216
+ return inv<number>('0x0A2AB7B7ABC055F4', this.ped.handle);
217
+ }
218
+
219
+ /**
220
+ * Unequip current weapon and set current weapon to WEAPON_UNARMED.
221
+ * p0 usually 2 in R* scripts. Doesn't seem to have any effect if changed....
222
+ * immediately: if true it will instantly switch to unarmed
223
+ *
224
+ * @param p0
225
+ * @param immediately
226
+ */
227
+ hidePedWeapons(p0: number, immediately: boolean): void {
228
+ inv<void>('0xFCCC886EDE3C63EC', this.ped.handle, p0, immediately);
229
+ }
230
+
231
+ /**
232
+ * @param weaponHash Refer to [enum: eWeaponHash]
233
+ */
234
+ enableAmmoTypeForPed(weaponHash: eWeaponHash): void {
235
+ inv<void>('0x3B7B7908B7ADFB4B', this.ped.handle, weaponHash);
236
+ }
237
+
238
+ /**
239
+ * Returns ammoHash from weaponObject (Returned by 0x6CA484C9A7377E4F)
240
+ *
241
+ * @param weaponObject
242
+ * @returns
243
+ */
244
+ getCurrentPedWeaponAmmoType(weaponObject: Prop): string | number {
245
+ return (inv<number>('0x7E7B19A4355FEE13', this.ped.handle, weaponObject.handle, rai())) & 0xFFFFFFFF;
246
+ }
247
+
248
+ /**
249
+ * @param p1
250
+ * @param p2
251
+ * @param p3
252
+ * @returns
253
+ */
254
+ getPedWorstWeapon(p1: boolean, p2: boolean, p3: boolean): string | number {
255
+ return (inv<number>('0xDA37A053C1522F5D', this.ped.handle, p1, p2, p3, rai())) & 0xFFFFFFFF;
256
+ }
257
+
258
+ /**
259
+ * @param toggle
260
+ */
261
+ setPedDropsWeaponsWhenDead(toggle: boolean): void {
262
+ inv<void>('0x476AE72C1D19D1A8', this.ped.handle, toggle);
263
+ }
264
+
265
+ /**
266
+ * Returns ammoHash
267
+ *
268
+ * @returns Returns the [enum: eAmmoType]; weaponGuid
269
+ */
270
+ getCurrentAmmoTypeFromGuid(): [string | number, number] {
271
+ const result = inv<[number, number]>('0xAF9D167A5656D6A6', this.ped.handle, pvi(), rai());
272
+ return [result[0] & 0xFFFFFFFF, result[1]];
273
+ }
274
+
275
+ /**
276
+ * @param toggle
277
+ */
278
+ setPedInfiniteAmmoClip(toggle: boolean): void {
279
+ inv<void>('0xFBAA1E06B6BCA741', this.ped.handle, toggle);
280
+ }
281
+
282
+ /**
283
+ * returns the amount of peds that were restrained with the weapon thrown bolas
284
+ *
285
+ * @returns
286
+ */
287
+ getNumPedsRestrainedFromWeaponBolas(): any {
288
+ return inv<number>('0x46D42883E873C1D7', this.ped.handle);
289
+ }
290
+
291
+ /**
292
+ * @returns
293
+ */
294
+ getPedHogtieWeapon(): string | number {
295
+ return (inv<number>('0x90EB1CB189923587', this.ped.handle, rai())) & 0xFFFFFFFF;
296
+ }
297
+
298
+ /**
299
+ * @returns
300
+ */
301
+ enableWeaponRestore(): any {
302
+ return inv<number>('0xC395355843BE134B', this.ped.handle);
303
+ }
304
+
305
+ /**
306
+ * Returns whether the specified ped is holding a weapon with the given hash.
307
+ * only these weapons below return true
308
+ * WEAPON_BOW, WEAPON_KIT_METAL_DETECTOR, WEAPON_MELEE_CLEAVER, WEAPON_MELEE_DAVY_LANTERN, WEAPON_MELEE_HATCHET, WEAPON_MELEE_HATCHET_HUNTER, WEAPON_MELEE_KNIFE_JAWBONE, WEAPON_MELEE_LANTERN WEAPON_MELEE_TORCH, WEAPON_MOONSHINEJUG_MP, WEAPON_RIFLE_BOLTACTION, WEAPON_SHOTGUN_PUMP, WEAPON_THROWN_BOLAS, WEAPON_THROWN_MOLOTOV
309
+ *
310
+ * @param weapon
311
+ * @returns
312
+ */
313
+ isPedHoldingWeapon(weapon: string | number): boolean {
314
+ return inv<boolean>('0x07E1C35F0078C3F9', this.ped.handle, _h(weapon), rai());
315
+ }
316
+
317
+ /**
318
+ * _GET_D* - _GET_L*
319
+ *
320
+ * @returns
321
+ */
322
+ N_0x0DE0944ECCB3DF5D(): boolean {
323
+ return inv<boolean>('0x0DE0944ECCB3DF5D', this.ped.handle, rai());
324
+ }
325
+
326
+ /**
327
+ * @param flags
328
+ * @returns
329
+ */
330
+ isPedArmed(flags: number): any {
331
+ return inv<number>('0xCB690F680A3EA971', this.ped.handle, flags);
332
+ }
333
+
334
+ /**
335
+ * Returns whether the ped has a sniper p1: 0 or 1
336
+ *
337
+ * @param p1
338
+ * @returns
339
+ */
340
+ doesPedHaveSniper(p1: number): any {
341
+ return inv<number>('0x80BB243789008A82', this.ped.handle, p1);
342
+ }
343
+
344
+ /**
345
+ * Returns the ped's default unarmed weapon hash as defined in CPedModelInfo (DefaultUnarmedWeapon).
346
+ * Falls back to WEAPON_UNARMED if the ped doesn't have a valid model info pointer, or 0 if the ped doesn't exist.
347
+ *
348
+ * @returns
349
+ */
350
+ getDefaultUnarmedWeaponHash(): string | number {
351
+ return (inv<number>('0x08FF1099ED2E6E21', this.ped.handle, rai())) & 0xFFFFFFFF;
352
+ }
353
+
354
+ /**
355
+ * @param weaponHash Refer to [enum: eWeaponHash]
356
+ * @param p2
357
+ * @returns
358
+ */
359
+ getMaxAmmoInClip(weaponHash: eWeaponHash, p2: boolean): number {
360
+ return inv<number>('0xA38DCFFCEA8962FA', this.ped.handle, weaponHash, p2, rai());
361
+ }
362
+
363
+ /**
364
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
365
+ * @returns Returns the weapon entity
366
+ */
367
+ getCurrentPedWeaponEntityIndex(attachPoint: number): Entity | null {
368
+ return createFromHandle<Entity>('Entity', inv<number>('0x3B390A939AF0B5FC', this.ped.handle, attachPoint, rai()));
369
+ }
370
+
371
+ /**
372
+ * @param weaponHash Refer to [enum: eWeaponHash]
373
+ * @param ammoHash Refer to [enum: eAmmoType]
374
+ */
375
+ enableAmmoTypeForPedWeapon(weaponHash: eWeaponHash, ammoHash: eAmmoType): void {
376
+ inv<void>('0x23FB9FACA28779C1', this.ped.handle, weaponHash, ammoHash);
377
+ }
378
+
379
+ /**
380
+ * @param toggle
381
+ */
382
+ N_0x431240A58484D5D0(toggle: boolean): void {
383
+ inv<void>('0x431240A58484D5D0', this.ped.handle, toggle);
384
+ }
385
+
386
+ /**
387
+ * @param p2
388
+ * @param p3
389
+ * @returns outGUID
390
+ */
391
+ getBestPedShortarmGuid(p2: boolean, p3: boolean): number {
392
+ const result = inv<number>('0xF52BD94B47CCF736', this.ped.handle, pvi(), p2, p3);
393
+ return result;
394
+ }
395
+
396
+ /**
397
+ * @returns coords
398
+ */
399
+ getPedLastWeaponImpactCoord(): [boolean, Vector3] {
400
+ const result = inv<[boolean, number[]]>('0x6C4D0409BA1A2BC2', this.ped.handle, pvv(), rai());
401
+ return [!!result[0], Vector3.fromArray(result[1])];
402
+ }
403
+
404
+ /**
405
+ * Returns WeaponAttachPoint
406
+ *
407
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
408
+ * @returns
409
+ */
410
+ getWeaponAttachPoint(attachPoint: number): number {
411
+ return inv<number>('0xCAD4FE9398820D24', this.ped.handle, attachPoint, rai());
412
+ }
413
+
414
+ /**
415
+ * @param p2
416
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
417
+ * @param p4
418
+ * @returns weaponHash: Refer to [enum: eWeaponHash]
419
+ */
420
+ getCurrentPedWeapon(p2: boolean, attachPoint: number, p4: boolean): [boolean, number] {
421
+ const result = inv<[boolean, number]>('0x3A87E44BB9A01D54', this.ped.handle, pvi(), p2, attachPoint, p4, rai());
422
+ return [!!result[0], result[1]];
423
+ }
424
+
425
+ /**
426
+ * Returns whether the ped has a revolver p1: 0 or 1
427
+ *
428
+ * @param p1
429
+ * @returns
430
+ */
431
+ doesPedHaveRevolver(p1: number): any {
432
+ return inv<number>('0x5B235F24472F2C3B', this.ped.handle, p1);
433
+ }
434
+
435
+ /**
436
+ * Returns emote Hash
437
+ *
438
+ * @returns
439
+ */
440
+ getPedGunSpinningEquippedKitEmoteTwirl(): string | number {
441
+ return (inv<number>('0x2C4FEC3D0EFA9FC0', this.ped.handle, rai())) & 0xFFFFFFFF;
442
+ }
443
+
444
+ /**
445
+ * @param toggle
446
+ */
447
+ N_0x16D9841A85FA627E(toggle: boolean): void {
448
+ inv<void>('0x16D9841A85FA627E', this.ped.handle, toggle);
449
+ }
450
+
451
+ /**
452
+ * @param weaponHash Refer to [enum: eWeaponHash]
453
+ * @param offset
454
+ * @param ammoCount
455
+ */
456
+ setPedDropsInventoryWeapon(weaponHash: eWeaponHash, offset: Vector3, ammoCount: number): void {
457
+ inv<void>('0x208A1888007FC0E6', this.ped.handle, weaponHash, f(offset.x), f(offset.y), f(offset.z), ammoCount);
458
+ }
459
+
460
+ /**
461
+ * spinHash can be -1, 0 to disable
462
+ *
463
+ * @param weaponEmoteTrickType
464
+ * @param spin
465
+ */
466
+ setActiveGunSpinningKitEmoteTwirl(weaponEmoteTrickType: number, spin: string | number): void {
467
+ inv<void>('0x01F661BB9C71B465', this.ped.handle, weaponEmoteTrickType, _h(spin));
468
+ }
469
+
470
+ /**
471
+ * Appears to just send specified weapon to your horse holster without having to be close
472
+ * However, the weapon is not visible on the horse holster, but you can reach the weapon on the weapon wheel
473
+ *
474
+ * @param weaponHash Refer to [enum: eWeaponHash]
475
+ */
476
+ sendWeaponToInventory(weaponHash: eWeaponHash): void {
477
+ inv<void>('0xE9BD19F8121ADE3E', this.ped.handle, weaponHash);
478
+ }
479
+
480
+ /**
481
+ * If near your horse when called, weapons stored on your horse will be considered
482
+ * Returns weaponHash
483
+ *
484
+ * @param weaponGroup
485
+ * @param p2
486
+ * @param p3
487
+ * @returns
488
+ */
489
+ getBestPedWeaponInGroup(weaponGroup: string | number, p2: boolean, p3: boolean): string | number {
490
+ return (inv<number>('0x9F67929D98E7C6E8', this.ped.handle, _h(weaponGroup), p2, p3, rai())) & 0xFFFFFFFF;
491
+ }
492
+
493
+ /**
494
+ * Only used in R* SP Scripts native_son2, native_son3 and smuggler2
495
+ * Params: p2 = -1
496
+ *
497
+ * @param p1
498
+ * @param p2
499
+ */
500
+ N_0x8A779706DA5CA3DD(p1: boolean, p2: number): void {
501
+ inv<void>('0x8A779706DA5CA3DD', this.ped.handle, p1, p2);
502
+ }
503
+
504
+ /**
505
+ * @param weaponHash Refer to [enum: eWeaponHash]
506
+ * @param ammoHash Refer to [enum: eAmmoType]
507
+ */
508
+ disableAmmoTypeForPedWeapon(weaponHash: eWeaponHash, ammoHash: eAmmoType): void {
509
+ inv<void>('0xF0D728EEA3C99775', this.ped.handle, weaponHash, ammoHash);
510
+ }
511
+
512
+ /**
513
+ * @returns data; outData
514
+ */
515
+ giveWeaponToPedWithOptions(): [boolean, number, number] {
516
+ const result = inv<[boolean, number, number]>('0xBE7E42B07FD317AC', this.ped.handle, pvi(), pvi(), rai());
517
+ return [!!result[0], result[1], result[2]];
518
+ }
519
+
520
+ /**
521
+ * @returns
522
+ */
523
+ getMaxLockonDistanceOfCurrentPedWeapon(): number {
524
+ return inv<number>('0x79B1A6E780266DB0', this.ped.handle, raf());
525
+ }
526
+
527
+ /**
528
+ * @param ammoHash Refer to [enum: eAmmoType]
529
+ */
530
+ disableAmmoTypeForPed(ammoHash: eAmmoType): void {
531
+ inv<void>('0xAA5A52204E077883', this.ped.handle, ammoHash);
532
+ }
533
+
534
+ /**
535
+ * @param visible
536
+ */
537
+ setPedAllWeaponsVisibility(visible: boolean): void {
538
+ inv<void>('0x4F806A6CFED89468', this.ped.handle, visible);
539
+ }
540
+
541
+ /**
542
+ * @param weaponHash Refer to [enum: eWeaponHash]
543
+ * @param ammo
544
+ * @returns
545
+ */
546
+ setAmmoInClip(weaponHash: eWeaponHash, ammo: number): boolean {
547
+ return inv<boolean>('0xDCD2A934D65CB497', this.ped.handle, weaponHash, ammo, rai());
548
+ }
549
+
550
+ /**
551
+ * _GET_M* - _GET_PED_A*
552
+ *
553
+ * @param p1
554
+ * @returns
555
+ */
556
+ getPedWeaponObject(p1: boolean): Prop | null {
557
+ return createFromHandle<Prop>('Prop', inv<number>('0x6CA484C9A7377E4F', this.ped.handle, p1, rai()));
558
+ }
559
+
560
+ /**
561
+ * slotHash is usually just the weaponHash name, but WEAPON_* is replaced with SLOT_*
562
+ *
563
+ * @param slotHash
564
+ * @returns
565
+ */
566
+ getPedWeaponInSlot(slotHash: string | number): string | number {
567
+ return (inv<number>('0xDBC4B552B2AE9A83', this.ped.handle, _h(slotHash), rai())) & 0xFFFFFFFF;
568
+ }
569
+
570
+ /**
571
+ * Outputs cached guids
572
+ *
573
+ * @returns guidPrimary; guidSecondary
574
+ */
575
+ getPlayerPedQuickSwapWeaponByGuid(): [number, number] {
576
+ const result = inv<[number, number]>('0xB7E52A058B07C7E2', this.ped.handle, pvi(), pvi());
577
+ return [result[0], result[1]];
578
+ }
579
+
580
+ /**
581
+ * Returns true if the ped is currently holstering or unholstering a weapon
582
+ *
583
+ * @returns
584
+ */
585
+ isWeaponHolsterStateChanging(): boolean {
586
+ return inv<boolean>('0x2387D6E9C6B478AA', this.ped.handle, rai());
587
+ }
588
+
589
+ /**
590
+ * @param ammoHash Refer to [enum: eAmmoType]
591
+ * @returns
592
+ */
593
+ N_0x44C8F4908F1B2622(ammoHash: eAmmoType): boolean {
594
+ return inv<boolean>('0x44C8F4908F1B2622', this.ped.handle, ammoHash, rai());
595
+ }
596
+
597
+ /**
598
+ * @param p2
599
+ * @returns clipInventoryUid
600
+ */
601
+ refillAmmoInClip(p2: number): [any, number] {
602
+ const result = inv<[number, number]>('0xDF4A3404D022ADDE', this.ped.handle, pvi(), p2);
603
+ return [result[0], result[1]];
604
+ }
605
+
606
+ /**
607
+ * _SET_A* - _SET_B*
608
+ *
609
+ * @param p1
610
+ */
611
+ N_0x2EBF70E1D8C06683(p1: string | number): void {
612
+ inv<void>('0x2EBF70E1D8C06683', this.ped.handle, _h(p1));
613
+ }
614
+
615
+ /**
616
+ * @returns
617
+ */
618
+ isPedWeaponReadyToShoot(): boolean {
619
+ return inv<boolean>('0xB80CA294F2F26749', this.ped.handle, rai());
620
+ }
621
+
622
+ /**
623
+ * @param ammoType
624
+ * @returns
625
+ */
626
+ getPedAmmoByType(ammoType: string | number): number {
627
+ return inv<number>('0x39D22031557946C1', this.ped.handle, _h(ammoType), rai());
628
+ }
629
+
630
+ /**
631
+ * @param p1
632
+ * @param p2
633
+ * @returns
634
+ */
635
+ getBestPedWeapon(p1: boolean, p2: boolean): string | number {
636
+ return (inv<number>('0x8483E98E8B888AE2', this.ped.handle, p1, p2, rai())) & 0xFFFFFFFF;
637
+ }
638
+
639
+ /**
640
+ * @param toggle
641
+ * @param weaponHash Refer to [enum: eWeaponHash]
642
+ */
643
+ setPedInfiniteAmmo(toggle: boolean, weaponHash: eWeaponHash): void {
644
+ inv<void>('0x3EDCB0505123623B', this.ped.handle, toggle, weaponHash);
645
+ }
646
+
647
+ /**
648
+ * @param weaponHash Refer to [enum: eWeaponHash]
649
+ * @param ammoHash Refer to [enum: eAmmoType]
650
+ */
651
+ setAmmoTypeForPedWeapon(weaponHash: eWeaponHash, ammoHash: eAmmoType): void {
652
+ inv<void>('0xCC9C4393523833E2', this.ped.handle, weaponHash, ammoHash);
653
+ }
654
+
655
+ /**
656
+ * *GET_BEST** - *GET_CLOSEST**
657
+ *
658
+ * @returns weaponGuid
659
+ */
660
+ getCorrectKitEmoteTwirlGun(): [boolean, number] {
661
+ const result = inv<[boolean, number]>('0xCD356B42C57BFE01', this.ped.handle, pvi(), rai());
662
+ return [!!result[0], result[1]];
663
+ }
664
+
665
+ /**
666
+ * @param weaponHash Refer to [enum: eWeaponHash]
667
+ * @returns
668
+ */
669
+ setCurrentPedVehicleWeapon(weaponHash: eWeaponHash): boolean {
670
+ return inv<boolean>('0x75C55983C2C39DAA', this.ped.handle, weaponHash, rai());
671
+ }
672
+
673
+ /**
674
+ * Returns whether the ped has a rifle p1: 0 or 1
675
+ *
676
+ * @param p1
677
+ * @returns
678
+ */
679
+ doesPedHaveRifle(p1: number): any {
680
+ return inv<number>('0x95CA12E2C68043E5', this.ped.handle, p1);
681
+ }
682
+
683
+ /**
684
+ * Puts the gun visibly in your horse's holster without having to be close to the horse. Use `_SEND_WEAPON_TO_INVENTORY` before using this native
685
+ * _A* or _B*
686
+ *
687
+ * @param weaponHash Refer to [enum: eWeaponHash]
688
+ * @param ped
689
+ */
690
+ N_0x14FF0C2545527F9B(weaponHash: eWeaponHash, ped: Ped): void {
691
+ inv<void>('0x14FF0C2545527F9B', this.ped.handle, weaponHash, ped.handle);
692
+ }
693
+
694
+ /**
695
+ * Returns iSpinHash / iVariationSpin
696
+ *
697
+ * @param weaponEmoteVariation
698
+ * @returns
699
+ */
700
+ getPedGunSpinningHashFromWeaponEmoteVariation(weaponEmoteVariation: number): string | number {
701
+ return (inv<number>('0xF3B1620B920D1708', this.ped.handle, weaponEmoteVariation, rai())) & 0xFFFFFFFF;
702
+ }
703
+
704
+ /**
705
+ * Returns whether the ped has a repeater p1: 0 or 1
706
+ *
707
+ * @param p1
708
+ * @returns
709
+ */
710
+ doesPedHaveRepeater(p1: number): any {
711
+ return inv<number>('0x495A04CAEC263AF8', this.ped.handle, p1);
712
+ }
713
+
714
+ /**
715
+ * @param weaponCollection
716
+ */
717
+ giveWeaponCollectionToPed(weaponCollection: string | number): void {
718
+ inv<void>('0x899A04AFCC725D04', this.ped.handle, _h(weaponCollection));
719
+ }
720
+
721
+ /**
722
+ * @param toggle
723
+ */
724
+ N_0xF08D8FEB455F2C8C(toggle: boolean): void {
725
+ inv<void>('0xF08D8FEB455F2C8C', this.ped.handle, toggle);
726
+ }
727
+
728
+ /**
729
+ * @returns ammo; inventoryUid
730
+ */
731
+ getAmmoInClipByInventoryUid(): [any, number, number] {
732
+ const result = inv<[number, number, number]>('0x678F00858980F516', this.ped.handle, pvi(), pvi());
733
+ return [result[0], result[1], result[2]];
734
+ }
735
+
736
+ /**
737
+ * removeReason must be REMOVE_REASON_USED, REMOVE_REASON_GIVEN, REMOVE_REASON_DROPPED or REMOVE_REASON_DEBUG, unless amount is -1
738
+ *
739
+ * @param ammoHash Refer to [enum: eAmmoType]
740
+ * @param amount
741
+ * @param removeReason Refer to [enum: eRemoveItemReason]
742
+ */
743
+ removeAmmoFromPedByType(ammoHash: eAmmoType, amount: number, removeReason: eRemoveItemReason): void {
744
+ inv<void>('0xB6CFEC32E3742779', this.ped.handle, ammoHash, amount, removeReason);
745
+ }
746
+
747
+ /**
748
+ * Holster the holded shoulder weapon. Precisions: 0 means with anim while 1 means direct holster
749
+ *
750
+ * @param disableAnim
751
+ */
752
+ setPedWeaponOnBack(disableAnim: boolean): void {
753
+ inv<void>('0x4820A6939D7CEF28', this.ped.handle, disableAnim);
754
+ }
755
+
756
+ /**
757
+ * @param ammoType
758
+ * @param ammo
759
+ */
760
+ setPedAmmoByType(ammoType: string | number, ammo: number): void {
761
+ inv<void>('0x5FD1E1F011E76D7E', this.ped.handle, _h(ammoType), ammo);
762
+ }
763
+
764
+ /**
765
+ * @param p1
766
+ * @returns
767
+ */
768
+ getPedBackupWeapon(p1: boolean): string | number {
769
+ return (inv<number>('0xC71FE230A513C30F', this.ped.handle, p1, rai())) & 0xFFFFFFFF;
770
+ }
771
+
772
+ /**
773
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
774
+ */
775
+ setForceCurrentWeaponIntoCockedState(attachPoint: number): void {
776
+ inv<void>('0x5230D3F6EE56CFE6', this.ped.handle, attachPoint);
777
+ }
778
+
779
+ /**
780
+ * @param weaponHash Refer to [enum: eWeaponHash]
781
+ * @returns ammo
782
+ */
783
+ getAmmoInClip(weaponHash: eWeaponHash): [boolean, number] {
784
+ const result = inv<[boolean, number]>('0x2E1202248937775C', this.ped.handle, pvi(), weaponHash, rai());
785
+ return [!!result[0], result[1]];
786
+ }
787
+
788
+ /**
789
+ * Returns whether the ped has a pistol p1: 0 or 1
790
+ *
791
+ * @param p1
792
+ * @returns
793
+ */
794
+ doesPedHavePistol(p1: number): any {
795
+ return inv<number>('0xBFCA7AFABF9D7967', this.ped.handle, p1);
796
+ }
797
+
798
+ /**
799
+ * *STOP** - *TEST**
800
+ *
801
+ * @param emoteType
802
+ */
803
+ setGunSpinningInventorySlotIdActivate(emoteType: number): void {
804
+ inv<void>('0x408CF580C5E96D49', this.ped.handle, emoteType);
805
+ }
806
+
807
+ /**
808
+ * @returns weaponHash: Refer to [enum: eWeaponHash]
809
+ */
810
+ getCurrentPedVehicleWeapon(): [boolean, number] {
811
+ const result = inv<[boolean, number]>('0x1017582BCD3832DC', this.ped.handle, pvi(), rai());
812
+ return [!!result[0], result[1]];
813
+ }
814
+
815
+ /**
816
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
817
+ * @param visible
818
+ */
819
+ setPedWeaponAttachPointVisibility(attachPoint: number, visible: boolean): void {
820
+ inv<void>('0x67E21ACC5C0C970C', this.ped.handle, attachPoint, visible);
821
+ }
822
+
823
+ /**
824
+ * @param p1
825
+ * @param p2
826
+ * @param p3
827
+ * @param immediately
828
+ */
829
+ holsterPedWeapons(p1: boolean, p2: boolean, p3: boolean, immediately: boolean): void {
830
+ inv<void>('0x94A3C1B804D291EC', this.ped.handle, p1, p2, p3, immediately);
831
+ }
832
+
833
+ /**
834
+ * onlyCheckPlayerInventory: If true, it will only check the players current inventory. If false, it also checks your horse inventory
835
+ *
836
+ * @param weaponHash Refer to [enum: eWeaponHash]
837
+ * @param p2
838
+ * @param onlyCheckPlayerInventory
839
+ * @returns
840
+ */
841
+ hasPedGotWeapon(weaponHash: eWeaponHash, p2: number, onlyCheckPlayerInventory: boolean): boolean {
842
+ return inv<boolean>('0x8DECB02F88F428BC', this.ped.handle, weaponHash, p2, onlyCheckPlayerInventory, rai());
843
+ }
844
+
845
+ /**
846
+ * @returns
847
+ */
848
+ getAllowDualWield(): any {
849
+ return inv<number>('0x918990BD9CE08582', this.ped.handle);
850
+ }
851
+
852
+ /**
853
+ * Stores longarms to your horse on dismount
854
+ * Params: p2 = 0
855
+ * SET_[I - M]*
856
+ *
857
+ * @param storeLongarms
858
+ * @param p2
859
+ */
860
+ setInstantlyStoreLongarmsOnDismount(storeLongarms: boolean, p2: number): void {
861
+ inv<void>('0xB832F1A686B9B810', this.ped.handle, storeLongarms, p2);
862
+ }
863
+
864
+ /**
865
+ * @param removeReason Refer to [enum: eRemoveItemReason]
866
+ * @returns weaponGuid
867
+ */
868
+ removeWeaponFromPedByGuid(removeReason: eRemoveItemReason): number {
869
+ const result = inv<number>('0x51C3B71591811485', this.ped.handle, pvi(), removeReason);
870
+ return result;
871
+ }
872
+
873
+ /**
874
+ * attachPoint:
875
+ *
876
+ * @param weaponHash Refer to [enum: eWeaponHash]
877
+ * @param equipNow
878
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
879
+ * @param p4
880
+ * @param p5
881
+ */
882
+ setCurrentPedWeapon(weaponHash: eWeaponHash, equipNow: boolean, attachPoint: number, p4: boolean, p5: boolean): void {
883
+ inv<void>('0xADF692B254977C0C', this.ped.handle, weaponHash, equipNow, attachPoint, p4, p5);
884
+ }
885
+
886
+ /**
887
+ * Equips a weapon from a weaponItem, similar to GIVE_WEAPON_TO_PED
888
+ *
889
+ * @param p2
890
+ * @param p3
891
+ * @param p4
892
+ * @param p5
893
+ * @returns weaponUid
894
+ */
895
+ setCurrentPedWeaponByGuid(p2: boolean, p3: boolean, p4: boolean, p5: boolean): number {
896
+ const result = inv<number>('0x12FB95FE3D579238', this.ped.handle, pvi(), p2, p3, p4, p5);
897
+ return result;
898
+ }
899
+
900
+ /**
901
+ * @param componentHash
902
+ * @param weaponHash Refer to [enum: eWeaponHash]
903
+ * @returns
904
+ */
905
+ hasPedGotWeaponComponent(componentHash: string | number, weaponHash: eWeaponHash): any {
906
+ return inv<number>('0xBBC67A6F965C688A', this.ped.handle, _h(componentHash), weaponHash);
907
+ }
908
+
909
+ /**
910
+ * @param weaponHash Refer to [enum: eWeaponHash]
911
+ * @param amount The amount of ped to add to the ammo
912
+ * @param addReason Refer to [enum: eAddItemReason]
913
+ */
914
+ addAmmoToPed(weaponHash: eWeaponHash, amount: number, addReason: eAddItemReason): void {
915
+ inv<void>('0xB190BCA3F4042F95', this.ped.handle, weaponHash, amount, addReason);
916
+ }
917
+
918
+ /**
919
+ * @param ammoType
920
+ * @param amount
921
+ * @param addReason Refer to [enum: eAddItemReason]
922
+ */
923
+ addAmmoToPedByType(ammoType: string | number, amount: number, addReason: eAddItemReason): void {
924
+ inv<void>('0x106A811C6D3035F3', this.ped.handle, _h(ammoType), amount, addReason);
925
+ }
926
+
927
+ /**
928
+ * @param targetPed
929
+ * @returns
930
+ */
931
+ isTargetPedConstrainedByPedUsingBolas(targetPed: Ped): boolean {
932
+ return inv<boolean>('0x8D50F43298AB9545', this.ped.handle, targetPed.handle, rai());
933
+ }
934
+
935
+ /**
936
+ * @param p1
937
+ * @returns guidPrimary
938
+ */
939
+ getBestPedWeaponInInventory(p1: any): [any, number] {
940
+ const result = inv<[number, number]>('0x7B98500614C8E8B8', this.ped.handle, p1, pvi());
941
+ return [result[0], result[1]];
942
+ }
943
+
944
+ /**
945
+ * Returns whether the ped has a shotgun p1: 0 or 1
946
+ *
947
+ * @param p1
948
+ * @returns
949
+ */
950
+ doesPedHaveShotgun(p1: number): any {
951
+ return inv<number>('0xABC18A28BAD4B46F', this.ped.handle, p1);
952
+ }
953
+
954
+ clearPedLastWeaponDamage(): void {
955
+ inv<void>('0x087D8F4BC65F68E4', this.ped.handle);
956
+ }
957
+
958
+ /**
959
+ * Returns true if ped is on a horse while inside of a town
960
+ * Params: p1 = 0
961
+ * GET_L* - GET_MA*
962
+ *
963
+ * @param p1
964
+ * @returns
965
+ */
966
+ N_0x5A695BD328586B44(p1: number): any {
967
+ return inv<number>('0x5A695BD328586B44', this.ped.handle, p1);
968
+ }
969
+
970
+ /**
971
+ * @param weaponHash Refer to [enum: eWeaponHash]
972
+ * @param amount
973
+ * @param removeReason Refer to [enum: eRemoveItemReason]
974
+ */
975
+ removeAmmoFromPed(weaponHash: eWeaponHash, amount: number, removeReason: eRemoveItemReason): void {
976
+ inv<void>('0xF4823C813CB8277D', this.ped.handle, weaponHash, amount, removeReason);
977
+ }
978
+
979
+ /**
980
+ * @param p1
981
+ * @param p2
982
+ */
983
+ setPedAmmoToDrop(p1: number, p2: number): void {
984
+ inv<void>('0xA4EFEF9440A5B0EF', this.ped.handle, p1, p2);
985
+ }
986
+
987
+ /**
988
+ * Returns the current ammo type of the specified ped's specified weapon.
989
+ *
990
+ * @param weaponHash Refer to [enum: eWeaponHash]
991
+ * @returns
992
+ */
993
+ getPedAmmoTypeFromWeapon(weaponHash: eWeaponHash): string | number {
994
+ return (inv<number>('0x7FEAD38B326B9F74', this.ped.handle, weaponHash, rai())) & 0xFFFFFFFF;
995
+ }
996
+
997
+ /**
998
+ * @param weaponHash Refer to [enum: eWeaponHash]
999
+ * @returns ammo
1000
+ */
1001
+ getMaxAmmo(weaponHash: eWeaponHash): [boolean, number] {
1002
+ const result = inv<[boolean, number]>('0xDC16122C7A20C933', this.ped.handle, pvi(), weaponHash, rai());
1003
+ return [!!result[0], result[1]];
1004
+ }
1005
+
1006
+ /**
1007
+ * @param weaponHash Refer to [enum: eWeaponHash]
1008
+ * @param ammo
1009
+ */
1010
+ setPedAmmo(weaponHash: eWeaponHash, ammo: number): void {
1011
+ inv<void>('0x14E56BC5B5DB6A19', this.ped.handle, weaponHash, ammo);
1012
+ }
1013
+
1014
+ /**
1015
+ * Gives the ped the weapon.
1016
+ * List: https://github.com/femga/rdr3_discoveries/blob/master/weapons/weapons.lua Params: p7 is 0.5f, and p8 is 1.0f. p11 and p12 are both 0 in R* Scripts
1017
+ * permanentDegradation: default 0.5, any higher than 0 it will automatically make the weapon worn, you can also adjust the value to change the weapons maximum cleanliness
1018
+ *
1019
+ * @param weaponHash Refer to [enum: eWeaponHash]
1020
+ * @param ammoCount
1021
+ * @param bForceInHand
1022
+ * @param bForceInHolster
1023
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
1024
+ * @param bAllowMultipleCopies
1025
+ * @param p7
1026
+ * @param p8
1027
+ * @param addReason Refer to [enum: eAddItemReason]
1028
+ * @param bIgnoreUnlocks
1029
+ * @param permanentDegradation
1030
+ * @param p12
1031
+ * @returns
1032
+ */
1033
+ giveWeaponToPed(weaponHash: eWeaponHash, ammoCount: number, bForceInHand: boolean, bForceInHolster: boolean, attachPoint: number, bAllowMultipleCopies: boolean, p7: number, p8: number, addReason: eAddItemReason, bIgnoreUnlocks: boolean, permanentDegradation: number, p12: boolean): string | number {
1034
+ return (inv<number>('0x5E3BDDBCB83F3D84', this.ped.handle, weaponHash, ammoCount, bForceInHand, bForceInHolster, attachPoint, bAllowMultipleCopies, f(p7), f(p8), addReason, bIgnoreUnlocks, f(permanentDegradation), p12, rai())) & 0xFFFFFFFF;
1035
+ }
1036
+
1037
+ /**
1038
+ * @param weaponHash Refer to [enum: eWeaponHash]
1039
+ * @returns
1040
+ */
1041
+ getAmmoInPedWeapon(weaponHash: eWeaponHash): number {
1042
+ return inv<number>('0x015A522136D7F951', this.ped.handle, weaponHash, rai());
1043
+ }
1044
+
1045
+ /**
1046
+ * @param attachPoint Refer to [enum: eWeaponAttachPoint]
1047
+ * @returns weaponGuid
1048
+ */
1049
+ getPedWeaponGuidAtAttachPoint(attachPoint: number): [any, number] {
1050
+ const result = inv<[number, number]>('0x6929E22158E52265', this.ped.handle, attachPoint, pvi());
1051
+ return [result[0], result[1]];
1052
+ }
1053
+
1054
+ /**
1055
+ * emote hashes: KIT_EMOTE_TWIRL_GUN, KIT_EMOTE_TWIRL_GUN_LEFT_HOLSTER, KIT_EMOTE_TWIRL_GUN_DUAL, 0 (to unequip)
1056
+ *
1057
+ * @param emote
1058
+ */
1059
+ setActiveGunSpinningEquipKitEmoteTwirl(emote: string | number): void {
1060
+ inv<void>('0xCBCFFF805F1B4596', this.ped.handle, _h(emote));
1061
+ }
1062
+
1063
+ }