@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,4813 @@
1
+ import type { AnimScene } from '../classes/AnimScene';
2
+ import type { Entity } from '../classes/Entity';
3
+ import type { Ped } from '../classes/Ped';
4
+ import type { Pickup } from '../classes/Pickup';
5
+ import type { Player } from '../classes/Player';
6
+ import type { Prop } from '../classes/Prop';
7
+ import type { PropSet } from '../classes/PropSet';
8
+ import type { Vehicle } from '../classes/Vehicle';
9
+ import type { Volume } from '../classes/Volume';
10
+ import type { ScrHandle } from '../types/NativeAliases';
11
+ import { Vector2 } from '../types/Vector2';
12
+ import { Vector3 } from '../types/Vector3';
13
+ import { Vector4 } from '../types/Vector4';
14
+ import { Color } from '../types/Color';
15
+ import { createFromHandle } from '../types/HandleRegistry';
16
+ import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f } from '../types/NativeAliases';
17
+
18
+ export class Network {
19
+ /**
20
+ * @param contentTypeName
21
+ * @param contentId
22
+ * @param fileId
23
+ * @param fileVersion
24
+ * @param languageId
25
+ * @returns
26
+ */
27
+ static ugcRequestContentDataFromParams(contentTypeName: string | null, contentId: string | null, fileId: number, fileVersion: number, languageId: number): number {
28
+ return inv<number>('0x7FD2990AF016795E', contentTypeName, contentId, fileId, fileVersion, languageId, rai());
29
+ }
30
+
31
+ /**
32
+ * @param maxNumMissionParticipants
33
+ * @param p1
34
+ * @param instanceId
35
+ */
36
+ static setThisScriptIsNetworkScript(maxNumMissionParticipants: number, p1: boolean, instanceId: number): void {
37
+ inv<void>('0x1CA59E306ECB80A5', maxNumMissionParticipants, p1, instanceId);
38
+ }
39
+
40
+ /**
41
+ * Stadia only; always returns -1 on other platforms. p0 may be a BOOL.
42
+ *
43
+ * @param p0
44
+ * @returns
45
+ */
46
+ static N_0x3E8CCE6769DB5F34(p0: number): number {
47
+ return inv<number>('0x3E8CCE6769DB5F34', p0, rai());
48
+ }
49
+
50
+ /**
51
+ * @returns gamerHandle1; gamerHandle2
52
+ */
53
+ static arePlayersInSamePlatformParty(): [any, number, number] {
54
+ const result = inv<[number, number, number]>('0x11820D1AE80DEA39', pvi(), pvi());
55
+ return [result[0], result[1], result[2]];
56
+ }
57
+
58
+ /**
59
+ * @param hour
60
+ * @param minute
61
+ * @param second
62
+ * @param transitionTime
63
+ * @param pauseClock
64
+ * @param clockwise
65
+ */
66
+ static clockTimeOverride2(hour: number, minute: number, second: number, transitionTime: number, pauseClock: boolean, clockwise: boolean): void {
67
+ inv<void>('0xE28C13ECC36FF14E', hour, minute, second, transitionTime, pauseClock, clockwise);
68
+ }
69
+
70
+ /**
71
+ * @param player
72
+ * @returns
73
+ */
74
+ static isPlayerConcealed(player: Player): boolean {
75
+ return inv<boolean>('0x919B3C98ED8292F9', player.handle, rai());
76
+ }
77
+
78
+ /**
79
+ * @param description
80
+ * @returns
81
+ */
82
+ static ugcRequestCachedDescription(description: string | number): number {
83
+ return inv<number>('0x5E0165278F6339EE', _h(description), rai());
84
+ }
85
+
86
+ /**
87
+ * @returns
88
+ */
89
+ static sessionLeaveSession(): boolean {
90
+ return inv<boolean>('0x17C21B7319A05047', rai());
91
+ }
92
+
93
+ /**
94
+ * Hardcoded to return false.
95
+ *
96
+ * @returns
97
+ */
98
+ static isCustomUpsellEnabled(): any {
99
+ return inv<number>('0x78A9535AF83715C6');
100
+ }
101
+
102
+ /**
103
+ * @returns
104
+ */
105
+ static getNetworkTime(): number {
106
+ return inv<number>('0x7A5487FE9FAA6B48', rai());
107
+ }
108
+
109
+ /**
110
+ * @param threadId
111
+ * @returns
112
+ */
113
+ static getInstanceIdOfThread(threadId: number): number {
114
+ return inv<number>('0xFB9ECED5B68F3B78', threadId, rai());
115
+ }
116
+
117
+ /**
118
+ * @param configProperty
119
+ * @param include
120
+ * @param weight
121
+ */
122
+ static spawnConfigAddPropertyPreference(configProperty: number, include: boolean, weight: number): void {
123
+ inv<void>('0xEB6027FD1B4600D5', configProperty, include, f(weight));
124
+ }
125
+
126
+ /**
127
+ * @param p0
128
+ * @returns
129
+ */
130
+ static N_0xDCA4A74135E1DEA5(p0: any): boolean {
131
+ return inv<boolean>('0xDCA4A74135E1DEA5', p0, rai());
132
+ }
133
+
134
+ /**
135
+ * @returns gamerHandle
136
+ */
137
+ static getPlayerFromGamerHandle(): [Player | null, number] {
138
+ const result = inv<[number, number]>('0xCE5F689CF5A0A49D', pvi(), rai());
139
+ return [createFromHandle<Player>('Player', result[0]), result[1]];
140
+ }
141
+
142
+ /**
143
+ * Returns the amount of players connected in the current session. Only works when connected to a session/server.
144
+ *
145
+ * @returns
146
+ */
147
+ static getNumConnectedPlayers(): number {
148
+ return inv<number>('0xA4A79DD2D9600654', rai());
149
+ }
150
+
151
+ /**
152
+ * @param netId
153
+ * @returns
154
+ */
155
+ static getEntityFromNetworkId(netId: number): Entity | null {
156
+ return createFromHandle<Entity>('Entity', inv<number>('0xCE4E5D9B0A4FF560', netId, rai()));
157
+ }
158
+
159
+ /**
160
+ * Returns string for GET_STATUS_OF_LOAD_MISSION_CREATOR_PHOTO
161
+ *
162
+ * @param p0
163
+ * @param p1
164
+ * @param p2
165
+ * @returns
166
+ */
167
+ static ugcQueryGetCreatorPhoto(p0: any, p1: number, p2: any): string | null {
168
+ return inv<string>('0x409FE0CA6A4D1D49', p0, p1, p2, ras());
169
+ }
170
+
171
+ /**
172
+ * @param toggle
173
+ */
174
+ static setRecentGamersEnabled(toggle: boolean): void {
175
+ inv<void>('0x29FE035D35B8589C', toggle);
176
+ }
177
+
178
+ /**
179
+ * @returns
180
+ */
181
+ static getLaunchParamString(): string | null {
182
+ return inv<string>('0xC59AB6A04333C502', ras());
183
+ }
184
+
185
+ /**
186
+ * @param entity
187
+ * @param toggle
188
+ */
189
+ static setEntityRemainsWhenUnnetworked(entity: Entity, toggle: boolean): void {
190
+ inv<void>('0xD785864798258032', entity.handle, toggle);
191
+ }
192
+
193
+ /**
194
+ * @param flags
195
+ * @param userHash
196
+ * @param p2
197
+ * @returns sessionRequestId
198
+ */
199
+ static sessionRequestSessionNominated(flags: number, userHash: number, p2: number): [boolean, number] {
200
+ const result = inv<[boolean, number]>('0x4F4672457FF597D1', flags, userHash, p2, pvi(), rai());
201
+ return [!!result[0], result[1]];
202
+ }
203
+
204
+ /**
205
+ * @param description
206
+ * @returns
207
+ */
208
+ static ugcIsDescriptionRequestInProgress(description: string | number): boolean {
209
+ return inv<boolean>('0x2D5DC831176D0114', _h(description), rai());
210
+ }
211
+
212
+ /**
213
+ * @param ugcRequestId
214
+ */
215
+ static ugcClearQueryResults(ugcRequestId: number): void {
216
+ inv<void>('0xE931354FEA710038', ugcRequestId);
217
+ }
218
+
219
+ /**
220
+ * @param threadId
221
+ * @returns
222
+ */
223
+ static getHostOfThread(threadId: number): Player | null {
224
+ return createFromHandle<Player>('Player', inv<number>('0xB4A25351D79B444C', threadId, rai()));
225
+ }
226
+
227
+ /**
228
+ * @returns
229
+ */
230
+ static isGameInProgress(): boolean {
231
+ return inv<boolean>('0x10FAB35428CCC9D7', rai());
232
+ }
233
+
234
+ /**
235
+ * @param rangeStart
236
+ * @param rangeEnd
237
+ * @returns
238
+ */
239
+ static getRandomIntRanged(rangeStart: number, rangeEnd: number): number {
240
+ return inv<number>('0xE30CF56F1EFA5F43', rangeStart, rangeEnd, rai());
241
+ }
242
+
243
+ /**
244
+ * @param p0
245
+ * @returns
246
+ */
247
+ static acceptRsInvite(p0: number): any {
248
+ return inv<number>('0xB2CEA5105AAC8DDE', p0);
249
+ }
250
+
251
+ /**
252
+ * @param player
253
+ * @param toggle
254
+ */
255
+ static concealPlayer(player: Player, toggle: boolean): void {
256
+ inv<void>('0xBBDF066252829606', player.handle, toggle);
257
+ }
258
+
259
+ /**
260
+ * ^^ I attempted this by grabbing an object with GET_ENTITY_PLAYER_IS_FREE_AIMING_AT and setting this naive no matter the toggle he could still see it. pc or last gen? ^^ last-gen Old name: _NETWORK_SET_ENTITY_INVISIBLE_TO_NETWORK
261
+ *
262
+ * @param entity
263
+ * @param toggle
264
+ */
265
+ static setEntityOnlyExistsForParticipants(entity: Entity, toggle: boolean): void {
266
+ inv<void>('0xF1CA12B18AEF5298', entity.handle, toggle);
267
+ }
268
+
269
+ /**
270
+ * @param doorHash
271
+ */
272
+ static setDoorNetworked(doorHash: string | number): void {
273
+ inv<void>('0x51D99497ABF3F451', _h(doorHash));
274
+ }
275
+
276
+ /**
277
+ * @param p0
278
+ * @param index
279
+ * @returns gamerHandle
280
+ */
281
+ static ugcQueryGetCreatorHandle(p0: any, index: number): [any, number] {
282
+ const result = inv<[number, number]>('0xADB56322EEDFBDC9', p0, index, pvi());
283
+ return [result[0], result[1]];
284
+ }
285
+
286
+ /**
287
+ * @param paramName
288
+ * @returns
289
+ */
290
+ static getLaunchParamExists(paramName: string | null): any {
291
+ return inv<number>('0x02E97CE283648CD9', paramName);
292
+ }
293
+
294
+ /**
295
+ * @param entity
296
+ * @returns
297
+ */
298
+ static hasEntityBeenRegisteredWithThisThread(entity: Entity): boolean {
299
+ return inv<boolean>('0xB07D3185E11657A5', entity.handle, rai());
300
+ }
301
+
302
+ /**
303
+ * @param entity
304
+ * @param toggle
305
+ */
306
+ static setEntityGhostedToLocalPlayer(entity: Entity, toggle: boolean): void {
307
+ inv<void>('0xEE5AE9956743BA20', entity.handle, toggle);
308
+ }
309
+
310
+ /**
311
+ * @param player
312
+ * @returns weaponHash: Refer to [enum: eWeaponHash]
313
+ */
314
+ static getEntityKillerOfPlayer(player: Player): [Entity | null, number] {
315
+ const result = inv<[number, number]>('0x42B2DAA6B596F5F8', player.handle, pvi(), rai());
316
+ return [createFromHandle<Entity>('Entity', result[0]), result[1]];
317
+ }
318
+
319
+ /**
320
+ * @param p0
321
+ * @returns
322
+ */
323
+ static getNumCreatedMissionPickups(p0: boolean): number {
324
+ return inv<number>('0xD2BA051B94CA9BCC', p0, rai());
325
+ }
326
+
327
+ /**
328
+ * @param entity
329
+ * @param p1
330
+ * @param p2
331
+ * @param p3
332
+ */
333
+ static setEntityVisibleInCutscene(entity: Entity, p1: boolean, p2: boolean, p3: number): void {
334
+ inv<void>('0xE0031D3C8F36AB82', entity.handle, p1, p2, p3);
335
+ }
336
+
337
+ /**
338
+ * Hardcoded to return -1.
339
+ *
340
+ * @param p1
341
+ * @returns p0
342
+ */
343
+ static displaynamesFromHandlesStart(p1: any): [number, number] {
344
+ const result = inv<[number, number]>('0xD66C9E72B3CC4982', pvi(), p1, rai());
345
+ return [result[0], result[1]];
346
+ }
347
+
348
+ /**
349
+ * @returns
350
+ */
351
+ static N_0xCC4E72C339461ED1(): any {
352
+ return inv<number>('0xCC4E72C339461ED1');
353
+ }
354
+
355
+ /**
356
+ * nullsub, doesn't do anything
357
+ *
358
+ * @returns
359
+ */
360
+ static N_0x160F0CE6D76A39C9(): any {
361
+ return inv<number>('0x160F0CE6D76A39C9');
362
+ }
363
+
364
+ /**
365
+ * Old name: _NETWORK_GET_OLDEST_RESEND_COUNT_FOR_PLAYER
366
+ *
367
+ * @param player
368
+ * @returns
369
+ */
370
+ static getHighestReliableResendCount(player: Player): number {
371
+ return inv<number>('0x52C1EADAF7B10302', player.handle, rai());
372
+ }
373
+
374
+ /**
375
+ * Checks for session flag 'SF_PRIVATE'
376
+ *
377
+ * @returns
378
+ */
379
+ static sessionIsPrivate(): boolean {
380
+ return inv<boolean>('0xCEF70AA5B3F89BA1', rai());
381
+ }
382
+
383
+ /**
384
+ * @param toggle
385
+ */
386
+ static autoSessionSetAllowedToSplit(toggle: boolean): void {
387
+ inv<void>('0x0A428058079EE65C', toggle);
388
+ }
389
+
390
+ static N_0x19B52C20B5C4757C(): void {
391
+ inv<void>('0x19B52C20B5C4757C');
392
+ }
393
+
394
+ /**
395
+ * @returns sessionRequestId
396
+ */
397
+ static sessionIsNsrrSuccess(): [any, number] {
398
+ const result = inv<[number, number]>('0x0F44A5C78D114922', pvi());
399
+ return [result[0], result[1]];
400
+ }
401
+
402
+ /**
403
+ * @returns
404
+ */
405
+ static isPlatformInvitePending(): any {
406
+ return inv<number>('0xFC4165C9165C166F');
407
+ }
408
+
409
+ /**
410
+ * @returns
411
+ */
412
+ static isInMpCutscene(): boolean {
413
+ return inv<boolean>('0x6CC27C9FA2040220', rai());
414
+ }
415
+
416
+ /**
417
+ * @returns
418
+ */
419
+ static N_0x273E04A3A7AD1F2D(): boolean {
420
+ return inv<boolean>('0x273E04A3A7AD1F2D', rai());
421
+ }
422
+
423
+ /**
424
+ * @returns
425
+ */
426
+ static isTunableCloudRequestPending(): boolean {
427
+ return inv<boolean>('0x0467C11ED88B7D28', rai());
428
+ }
429
+
430
+ /**
431
+ * Old name: _NETWORK_IS_CONNECTION_ENDPOINT_RELAY_SERVER
432
+ *
433
+ * @param player
434
+ * @returns
435
+ */
436
+ static isConnectedViaRelay(player: Player): boolean {
437
+ return inv<boolean>('0x16D3D49902F697BB', player.handle, rai());
438
+ }
439
+
440
+ /**
441
+ * @param p0
442
+ * @param toggle
443
+ */
444
+ static setDoorUnnetworked(p0: any, toggle: boolean): void {
445
+ inv<void>('0xC1E1A3D5ED7617B8', p0, toggle);
446
+ }
447
+
448
+ /**
449
+ * @param pos
450
+ * @param heading
451
+ * @param p4
452
+ * @param p5
453
+ * @param p6
454
+ * @param p7
455
+ */
456
+ static resurrectLocalPlayer(pos: Vector3, heading: number, p4: number, p5: boolean, p6: any, p7: boolean): void {
457
+ inv<void>('0xEA23C49EAA83ACFB', f(pos.x), f(pos.y), f(pos.z), f(heading), p4, p5, p6, p7);
458
+ }
459
+
460
+ /**
461
+ * @returns sessionRequestId
462
+ */
463
+ static sessionLeftQueueOrRequestedSession(): [any, number] {
464
+ const result = inv<[number, number]>('0xECE6A0C1B59CD8BE', pvi());
465
+ return [result[0], result[1]];
466
+ }
467
+
468
+ /**
469
+ * @param flags Refer to [enum: eSessionFlags]
470
+ * @returns
471
+ */
472
+ static sessionRemoveSessionFlags(flags: number): any {
473
+ return inv<number>('0x78335E12DB0BF961', flags);
474
+ }
475
+
476
+ /**
477
+ * @returns
478
+ */
479
+ static haveRosBannedPriv(): boolean {
480
+ return inv<boolean>('0x8020A73847E0CA7D', rai());
481
+ }
482
+
483
+ /**
484
+ * @param p0
485
+ * @returns
486
+ */
487
+ static N_0xCA58D4FD20D70F24(p0: any): number {
488
+ return inv<number>('0xCA58D4FD20D70F24', p0, rai());
489
+ }
490
+
491
+ /**
492
+ * @returns
493
+ */
494
+ static refreshCurrentFriendPage(): any {
495
+ return inv<number>('0x1F51F367B710A832');
496
+ }
497
+
498
+ /**
499
+ * Same Native Handler as VEH_TO_NET, PED_TO_NET, OBJ_TO_NET and NETWORK_GET_NETWORK_ID_FROM_ENTITY
500
+ *
501
+ * @param handle
502
+ * @returns
503
+ */
504
+ static N_0xF260AF6F43953316(handle: number): number {
505
+ return inv<number>('0xF260AF6F43953316', handle, rai());
506
+ }
507
+
508
+ /**
509
+ * @returns
510
+ */
511
+ static N_0xA94ECE191D90637A(): number {
512
+ return inv<number>('0xA94ECE191D90637A', rai());
513
+ }
514
+
515
+ /**
516
+ * @param p0
517
+ * @returns
518
+ */
519
+ static getNumReservedMissionPickups(p0: boolean): number {
520
+ return inv<number>('0x62BE3ECC79FBD004', p0, rai());
521
+ }
522
+
523
+ /**
524
+ * @param toggle
525
+ */
526
+ static allowAllEntityFadingForInstances(toggle: boolean): void {
527
+ inv<void>('0x4B05B97BA46F419D', toggle);
528
+ }
529
+
530
+ /**
531
+ * @param netId
532
+ */
533
+ static preventNetworkIdMigration(netId: number): void {
534
+ inv<void>('0x7182EDDA1EE7DB5A', netId);
535
+ }
536
+
537
+ /**
538
+ * Returns whether the signed-in user has valid Rockstar Online Services (ROS) credentials.
539
+ *
540
+ * @returns
541
+ */
542
+ static hasValidRosCredentials(): boolean {
543
+ return inv<boolean>('0x85443FF4C328F53B', rai());
544
+ }
545
+
546
+ /**
547
+ * @param ped_amt
548
+ * @param vehicle_amt
549
+ * @param object_amt
550
+ * @param pickup_amt
551
+ * @returns
552
+ */
553
+ static canRegisterMissionEntities(ped_amt: number, vehicle_amt: number, object_amt: number, pickup_amt: number): boolean {
554
+ return inv<boolean>('0x69778E7564BADE6D', ped_amt, vehicle_amt, object_amt, pickup_amt, rai());
555
+ }
556
+
557
+ /**
558
+ * @param description
559
+ * @param length
560
+ * @returns
561
+ */
562
+ static ugcGetCachedDescription(description: string | number, length: number): string | null {
563
+ return inv<string>('0x40F7E66472DF3E5C', _h(description), length, ras());
564
+ }
565
+
566
+ /**
567
+ * @param toggle
568
+ */
569
+ static N_0x780A13F780A13F1B(toggle: boolean): void {
570
+ inv<void>('0x780A13F780A13F1B', toggle);
571
+ }
572
+
573
+ /**
574
+ * @param p1
575
+ * @returns gamerHandle
576
+ */
577
+ static requestPedshotTextureMultiplayerDownload(p1: number): [string | null, number] {
578
+ const result = inv<[string, number]>('0xB5C4B18B12A2AF23', pvi(), p1, ras());
579
+ return [result[0], result[1]];
580
+ }
581
+
582
+ /**
583
+ * @param setting
584
+ */
585
+ static N_0xE3AB5EEFCB6671A2(setting: number): void {
586
+ inv<void>('0xE3AB5EEFCB6671A2', setting);
587
+ }
588
+
589
+ /**
590
+ * @param p0
591
+ * @returns
592
+ */
593
+ static N_0x3AA0CDC63696166D(p0: number): boolean {
594
+ return inv<boolean>('0x3AA0CDC63696166D', p0, rai());
595
+ }
596
+
597
+ /**
598
+ * @param p0
599
+ * @param p1
600
+ * @returns
601
+ */
602
+ static N_0xE39600E50D608693(p0: any, p1: any): boolean {
603
+ return inv<boolean>('0xE39600E50D608693', p0, p1, rai());
604
+ }
605
+
606
+ /**
607
+ * @param flags Refer to [enum: eSessionFlags]
608
+ * @returns
609
+ */
610
+ static sessionAddSessionFlags(flags: number): any {
611
+ return inv<number>('0xE546BDA1B3E288EE', flags);
612
+ }
613
+
614
+ /**
615
+ * @param p0
616
+ * @param playerCount
617
+ * @returns
618
+ */
619
+ static requestRecentGamerNames(p0: number, playerCount: number): any {
620
+ return inv<number>('0x6D206D383BB5F6B1', p0, playerCount);
621
+ }
622
+
623
+ /**
624
+ * @returns
625
+ */
626
+ static getHostOfThisScript(): Player | null {
627
+ return createFromHandle<Player>('Player', inv<number>('0xC7B4D79B01FA7A5C', rai()));
628
+ }
629
+
630
+ /**
631
+ * @param animScene
632
+ * @returns
633
+ */
634
+ static hasControlOfAnimScene(animScene: AnimScene): any {
635
+ return inv<number>('0x26A5C12FACFF8724', animScene.handle);
636
+ }
637
+
638
+ /**
639
+ * Equivalent to NETWORK_REQUEST_SESSION_SEAMLESS if userHash == 0.
640
+ * Otherwise it is equivalent to NETWORK_SESSION_REQUEST_SESSION_COMPETITIVE(flags, MATCHTYPE_SEAMLESS, userHash, 0, sessionRequestId); p1 is unused
641
+ *
642
+ * @param flags
643
+ * @param seamlessType
644
+ * @param userHash
645
+ * @returns sessionRequestId
646
+ */
647
+ static sessionRequestSessionSeamless(flags: number, seamlessType: number, userHash: number): [any, number] {
648
+ const result = inv<[number, number]>('0x2989E131FDE37E97', flags, seamlessType, userHash, pvi());
649
+ return [result[0], result[1]];
650
+ }
651
+
652
+ /**
653
+ * @returns
654
+ */
655
+ static hasCompletedMpIntroFlowOnCurrentSlot(): any {
656
+ return inv<number>('0xDD73C9838CE7181D');
657
+ }
658
+
659
+ /**
660
+ * @param configProperty
661
+ * @param include
662
+ */
663
+ static spawnConfigAddPropertyScripted(configProperty: number, include: boolean): void {
664
+ inv<void>('0x44D59EC597BBF348', configProperty, include);
665
+ }
666
+
667
+ /**
668
+ * @param p0
669
+ * @returns
670
+ */
671
+ static N_0xA2837A5E21FB5A58(p0: any): boolean {
672
+ return inv<boolean>('0xA2837A5E21FB5A58', p0, rai());
673
+ }
674
+
675
+ /**
676
+ * @returns
677
+ */
678
+ static N_0x0E54D4DA6018FF8E(): boolean {
679
+ return inv<boolean>('0x0E54D4DA6018FF8E', rai());
680
+ }
681
+
682
+ /**
683
+ * Returns the entity associated with the given network ID.
684
+ *
685
+ * @param networkId
686
+ * @returns
687
+ */
688
+ static N_0x4538EE7C321590BC(networkId: number): Entity | null {
689
+ return createFromHandle<Entity>('Entity', inv<number>('0x4538EE7C321590BC', networkId, rai()));
690
+ }
691
+
692
+ /**
693
+ * @param p0
694
+ * @param p1
695
+ * @returns
696
+ */
697
+ static N_0x271F95E55C663B8B(p0: any, p1: any): any {
698
+ return inv<number>('0x271F95E55C663B8B', p0, p1);
699
+ }
700
+
701
+ /**
702
+ * @returns
703
+ */
704
+ static sessionGetSessionFlags(): number {
705
+ return inv<number>('0x51F33DBC1A41CBFD', rai());
706
+ }
707
+
708
+ /**
709
+ * Note: this native was added in build 1311.23
710
+ *
711
+ * @returns
712
+ */
713
+ static N_0x039AD6B57D5179FF(): number {
714
+ return inv<number>('0x039AD6B57D5179FF', rai());
715
+ }
716
+
717
+ /**
718
+ * Old name: _NETWORK_GET_NUM_UNACKED_FOR_PLAYER
719
+ *
720
+ * @param player
721
+ * @returns
722
+ */
723
+ static getNumUnackedReliables(player: Player): number {
724
+ return inv<number>('0xFF8FCF9FFC458A1C', player.handle, rai());
725
+ }
726
+
727
+ /**
728
+ * @param entity
729
+ * @param toggle
730
+ */
731
+ static allowEntityFadingForInstances(entity: Entity, toggle: boolean): void {
732
+ inv<void>('0xF3354D6CA46F419D', entity.handle, toggle);
733
+ }
734
+
735
+ /**
736
+ * Only used in R* Script startup_clip
737
+ */
738
+ static N_0xFD4272A137703449(): void {
739
+ inv<void>('0xFD4272A137703449');
740
+ }
741
+
742
+ /**
743
+ * @param player
744
+ * @param type
745
+ */
746
+ static N_0x51951DE06C0D1C40(player: Player, type: number): void {
747
+ inv<void>('0x51951DE06C0D1C40', player.handle, type);
748
+ }
749
+
750
+ /**
751
+ * @param p0
752
+ * @returns
753
+ */
754
+ static N_0x5ED39DA62BEB1330(p0: number): any {
755
+ return inv<number>('0x5ED39DA62BEB1330', p0);
756
+ }
757
+
758
+ /**
759
+ * @param p0
760
+ * @param index
761
+ * @returns
762
+ */
763
+ static ugcQueryGetName(p0: any, index: number): string | null {
764
+ return inv<string>('0x2D053EA815702DD1', p0, index, ras());
765
+ }
766
+
767
+ /**
768
+ * @param p0
769
+ * @param index
770
+ * @returns
771
+ */
772
+ static ugcQueryGetBookMarked(p0: any, index: number): any {
773
+ return inv<number>('0x98539FC453AEA639', p0, index);
774
+ }
775
+
776
+ /**
777
+ * @param entity
778
+ * @param timer
779
+ * @param p2
780
+ */
781
+ static setNetworkRespotTimer(entity: Entity, timer: number, p2: boolean): void {
782
+ inv<void>('0x442B4347B6EC36E8', entity.handle, timer, p2);
783
+ }
784
+
785
+ /**
786
+ * @returns gamerHandle
787
+ */
788
+ static getGamertagFromFriend(): [string | null, number] {
789
+ const result = inv<[string, number]>('0x5659D87BE674AB17', pvi(), ras());
790
+ return [result[0], result[1]];
791
+ }
792
+
793
+ /**
794
+ * @param player
795
+ * @returns
796
+ */
797
+ static getPlayerWaypointIsActive(player: Player): any {
798
+ return inv<number>('0xDCC4B7F7112E8AB7', player.handle);
799
+ }
800
+
801
+ /**
802
+ * @param inviteIndex
803
+ * @returns
804
+ */
805
+ static N_0x981146E5C9CE9250(inviteIndex: number): boolean {
806
+ return inv<boolean>('0x981146E5C9CE9250', inviteIndex, rai());
807
+ }
808
+
809
+ /**
810
+ * @param netID
811
+ */
812
+ static disableProximityMigration(netID: number): void {
813
+ inv<void>('0x407091CF6037118E', netID);
814
+ }
815
+
816
+ /**
817
+ * @param p0
818
+ * @param p1
819
+ * @param dataSize
820
+ * @returns outData
821
+ */
822
+ static getRecentGamerNames(p0: number, p1: number, dataSize: number): [any, number] {
823
+ const result = inv<[number, number]>('0xFEFCC345CE357453', p0, p1, pvi(), dataSize);
824
+ return [result[0], result[1]];
825
+ }
826
+
827
+ /**
828
+ * _NETWORK_GET_A* - _NETWORK_GET_D*
829
+ *
830
+ * @param player
831
+ * @param ped
832
+ * @returns p2
833
+ */
834
+ static N_0x236321F1178A5446(player: Player, ped: Ped): [boolean, number] {
835
+ const result = inv<[boolean, number]>('0x236321F1178A5446', player.handle, ped.handle, pvi(), rai());
836
+ return [!!result[0], result[1]];
837
+ }
838
+
839
+ /**
840
+ * Must be called from a background script, otherwise it will do nothing.
841
+ *
842
+ * @param entity
843
+ * @param p1
844
+ */
845
+ static N_0x979765465A6F25FC(entity: Entity, p1: boolean): void {
846
+ inv<void>('0x979765465A6F25FC', entity.handle, p1);
847
+ }
848
+
849
+ /**
850
+ * @param player
851
+ * @param p1
852
+ */
853
+ static N_0x5A91BCEF74944E93(player: Player, p1: number): void {
854
+ inv<void>('0x5A91BCEF74944E93', player.handle, f(p1));
855
+ }
856
+
857
+ /**
858
+ * @param params
859
+ */
860
+ static setLaunchParamString(params: string | null): void {
861
+ inv<void>('0xDFFC15AA63D04AAB', params);
862
+ }
863
+
864
+ /**
865
+ * Note: this native was added in build 1311.23
866
+ *
867
+ * @param p0
868
+ * @param p1
869
+ */
870
+ static N_0x0D183D8490EE4366(p0: number, p1: number): void {
871
+ inv<void>('0x0D183D8490EE4366', p0, p1);
872
+ }
873
+
874
+ /**
875
+ * Note: this native was added in build 1311.23
876
+ *
877
+ * @param p0
878
+ * @returns
879
+ */
880
+ static N_0xF8DC69DC1AD19072(p0: boolean): number {
881
+ return inv<number>('0xF8DC69DC1AD19072', p0, rai());
882
+ }
883
+
884
+ /**
885
+ * @returns
886
+ */
887
+ static N_0xA47D48D06AA5A188(): boolean {
888
+ return inv<boolean>('0xA47D48D06AA5A188', rai());
889
+ }
890
+
891
+ /**
892
+ * @returns
893
+ */
894
+ static getCloudTimeAsInt(): number {
895
+ return inv<number>('0x9A73240B49945C76', rai());
896
+ }
897
+
898
+ /**
899
+ * *GET_LAUNCH_PARAM*(RESPOT?)*
900
+ * Name is probably invalid since this native only reads data from parsed entity.
901
+ *
902
+ * @param entity
903
+ * @returns
904
+ */
905
+ static N_0x26A867C0B7A456D1(entity: Entity): boolean {
906
+ return inv<boolean>('0x26A867C0B7A456D1', entity.handle, rai());
907
+ }
908
+
909
+ /**
910
+ * @param netHandle
911
+ * @returns
912
+ */
913
+ static netToVeh(netHandle: number): Vehicle | null {
914
+ return createFromHandle<Vehicle>('Vehicle', inv<number>('0x367B936610BA360C', netHandle, rai()));
915
+ }
916
+
917
+ /**
918
+ * @returns sessionRequestId
919
+ */
920
+ static N_0xAFA14F98327791CE(): [boolean, number] {
921
+ const result = inv<[boolean, number]>('0xAFA14F98327791CE', pvi(), rai());
922
+ return [!!result[0], result[1]];
923
+ }
924
+
925
+ /**
926
+ * @returns
927
+ */
928
+ static N_0xDA1BFED8582F61F0(): boolean {
929
+ return inv<boolean>('0xDA1BFED8582F61F0', rai());
930
+ }
931
+
932
+ /**
933
+ * Note: this native was added in build 1311.23
934
+ *
935
+ * @param p0
936
+ * @returns
937
+ */
938
+ static N_0xBAF7E2979442B29F(p0: boolean): number {
939
+ return inv<number>('0xBAF7E2979442B29F', p0, rai());
940
+ }
941
+
942
+ /**
943
+ * @returns
944
+ */
945
+ static isCloudAvailable(): boolean {
946
+ return inv<boolean>('0x9A4CF4F48AD77302', rai());
947
+ }
948
+
949
+ /**
950
+ * @param p0
951
+ * @param p1
952
+ * @param p2
953
+ */
954
+ static registerPlayerBroadcastVariables(p0: any, p1: any, p2: any): void {
955
+ inv<void>('0x3364AA97340CA215', p0, p1, p2);
956
+ }
957
+
958
+ /**
959
+ * _NETWORK_IS_T* - _NETWORK_RE*
960
+ *
961
+ * @returns
962
+ */
963
+ static isPreviousUploadPending(): any {
964
+ return inv<number>('0xA21E3BAD0A42D199');
965
+ }
966
+
967
+ /**
968
+ * @returns
969
+ */
970
+ static N_0x18B94666CF610AEB(): boolean {
971
+ return inv<boolean>('0x18B94666CF610AEB', rai());
972
+ }
973
+
974
+ /**
975
+ * p0 appears to be for MP
976
+ *
977
+ * @param p0
978
+ * @returns
979
+ */
980
+ static getNumReservedMissionObjects(p0: boolean): number {
981
+ return inv<number>('0xAA81B5F10BC43AC2', p0, rai());
982
+ }
983
+
984
+ /**
985
+ * @returns
986
+ */
987
+ static hasSocialClubAccount(): boolean {
988
+ return inv<boolean>('0x67A5589628E0CFF6', rai());
989
+ }
990
+
991
+ /**
992
+ * gets the ped id of a network id
993
+ *
994
+ * @param netHandle
995
+ * @returns
996
+ */
997
+ static netToPed(netHandle: number): Ped | null {
998
+ return createFromHandle<Ped>('Ped', inv<number>('0xBDCD95FC216A8B3E', netHandle, rai()));
999
+ }
1000
+
1001
+ /**
1002
+ * 0 = succeeded
1003
+ * 1 = pending
1004
+ * 2 = failed
1005
+ *
1006
+ * @param textureDownloadId
1007
+ * @returns
1008
+ */
1009
+ static getStatusOfTextureDownload(textureDownloadId: number): number {
1010
+ return inv<number>('0x8BD6C6DEA20E82C6', textureDownloadId, rai());
1011
+ }
1012
+
1013
+ /**
1014
+ * @returns gamerHandle
1015
+ */
1016
+ static N_0xF23A6D6C11D8EC15(): [boolean, number] {
1017
+ const result = inv<[boolean, number]>('0xF23A6D6C11D8EC15', pvi(), rai());
1018
+ return [!!result[0], result[1]];
1019
+ }
1020
+
1021
+ /**
1022
+ * Always returns 40
1023
+ *
1024
+ * @returns
1025
+ */
1026
+ static getMaxNumNetworkVehicles(): number {
1027
+ return inv<number>('0x0AFCE529F69B21FF', rai());
1028
+ }
1029
+
1030
+ /**
1031
+ * @param netId
1032
+ * @param p1
1033
+ * @param p2
1034
+ */
1035
+ static keepNetworkIdInFastInstance(netId: number, p1: boolean, p2: number): void {
1036
+ inv<void>('0xE1BC73D6815BA361', netId, p1, p2);
1037
+ }
1038
+
1039
+ /**
1040
+ * @returns gamerHandle
1041
+ */
1042
+ static isHandleValid(): [boolean, number] {
1043
+ const result = inv<[boolean, number]>('0x6F79B93B0A8E4133', pvi(), rai());
1044
+ return [!!result[0], result[1]];
1045
+ }
1046
+
1047
+ /**
1048
+ * @param p0
1049
+ * @returns p1
1050
+ */
1051
+ static N_0x691E4DE5309EAEFC(p0: any): number {
1052
+ const result = inv<number>('0x691E4DE5309EAEFC', p0, pvi());
1053
+ return result;
1054
+ }
1055
+
1056
+ /**
1057
+ * @param entity
1058
+ * @returns
1059
+ */
1060
+ static getNetworkIdFromEntity(entity: Entity): number {
1061
+ return inv<number>('0xA11700682F3AD45C', entity.handle, rai());
1062
+ }
1063
+
1064
+ /**
1065
+ * Only used in SP R* Script dominoes_sp: p1 = 0
1066
+ *
1067
+ * @param player
1068
+ * @param p1
1069
+ */
1070
+ static N_0x02C4C6C2900D84DF(player: Player, p1: any): void {
1071
+ inv<void>('0x02C4C6C2900D84DF', player.handle, p1);
1072
+ }
1073
+
1074
+ /**
1075
+ * @returns
1076
+ */
1077
+ static isSessionActive(): boolean {
1078
+ return inv<boolean>('0xD83C2B94E7508980', rai());
1079
+ }
1080
+
1081
+ /**
1082
+ * @param animScene
1083
+ * @returns
1084
+ */
1085
+ static animSceneToNet(animScene: AnimScene): number {
1086
+ return inv<number>('0xE0D73CDDEA79DDCD', animScene.handle, rai());
1087
+ }
1088
+
1089
+ /**
1090
+ * @returns
1091
+ */
1092
+ static getRank(): number {
1093
+ return inv<number>('0x32C90CDFAF40514C', rai());
1094
+ }
1095
+
1096
+ /**
1097
+ * @param message
1098
+ * @returns gamerHandle
1099
+ */
1100
+ static addFriend(message: string | null): [boolean, number] {
1101
+ const result = inv<[boolean, number]>('0x8E02D73914064223', pvi(), message, rai());
1102
+ return [!!result[0], result[1]];
1103
+ }
1104
+
1105
+ /**
1106
+ * @returns
1107
+ */
1108
+ static N_0xB389289F031F059A(): number {
1109
+ return inv<number>('0xB389289F031F059A', rai());
1110
+ }
1111
+
1112
+ /**
1113
+ * Subtracts the first argument from the second, then returns whether the result is negative.
1114
+ *
1115
+ * @param timeA
1116
+ * @param timeB
1117
+ * @returns
1118
+ */
1119
+ static isTimeMoreThan(timeA: number, timeB: number): boolean {
1120
+ return inv<boolean>('0xDE350F8651E4346C', timeA, timeB, rai());
1121
+ }
1122
+
1123
+ /**
1124
+ * @returns
1125
+ */
1126
+ static pedmugshotRequestSend(): any {
1127
+ return inv<number>('0xFBC30B70B3CDB87E');
1128
+ }
1129
+
1130
+ /**
1131
+ * Old name: _NETWORK_SET_PASSIVE_MODE_OPTION
1132
+ *
1133
+ * @param toggle
1134
+ */
1135
+ static setPlayerIsPassive(toggle: boolean): void {
1136
+ inv<void>('0x9C25E8EC4C535FBD', toggle);
1137
+ }
1138
+
1139
+ /**
1140
+ * Seems to always return 0, but it's used in quite a few loops. for (num3 = 0; num3 < NETWORK::0xCCD8C02D(); num3++)
1141
+ * {
1142
+ * if (NETWORK::NETWORK_IS_PARTICIPANT_ACTIVE(PLAYER::0x98F3B274(num3)) != 0)
1143
+ * {
1144
+ * var num5 = NETWORK::NETWORK_GET_PLAYER_INDEX(PLAYER::0x98F3B274(num3));
1145
+ *
1146
+ * @returns
1147
+ */
1148
+ static getMaxNumParticipants(): number {
1149
+ return inv<number>('0xA6C90FBC38E395EE', rai());
1150
+ }
1151
+
1152
+ /**
1153
+ * @param ropeId
1154
+ * @returns
1155
+ */
1156
+ static getNetworkIdFromRopeId(ropeId: number): number {
1157
+ return inv<number>('0x42871327315EDAE8', ropeId, rai());
1158
+ }
1159
+
1160
+ /**
1161
+ * @param ugcRequestId
1162
+ * @returns
1163
+ */
1164
+ static ugcQueryWasForceCancelled(ugcRequestId: number): any {
1165
+ return inv<number>('0xF8F0705E77A0E705', ugcRequestId);
1166
+ }
1167
+
1168
+ /**
1169
+ * @param p0
1170
+ */
1171
+ static ugcSetQueryDataFromOffline(p0: boolean): void {
1172
+ inv<void>('0xF98DDE0A8ED09323', p0);
1173
+ }
1174
+
1175
+ /**
1176
+ * @returns gamerHandle
1177
+ */
1178
+ static isFriendHandleInSameTitle(): [boolean, number] {
1179
+ const result = inv<[boolean, number]>('0x665161D250850A9F', pvi(), rai());
1180
+ return [!!result[0], result[1]];
1181
+ }
1182
+
1183
+ /**
1184
+ * @param p0
1185
+ * @returns
1186
+ */
1187
+ static N_0xE8E633215471BB5D(p0: any): number {
1188
+ return inv<number>('0xE8E633215471BB5D', p0, rai());
1189
+ }
1190
+
1191
+ /**
1192
+ * Note: this native was added in build 1311.23
1193
+ *
1194
+ * @param p0
1195
+ * @returns
1196
+ */
1197
+ static N_0x917AD74BDCF8B6E9(p0: boolean): number {
1198
+ return inv<number>('0x917AD74BDCF8B6E9', p0, rai());
1199
+ }
1200
+
1201
+ /**
1202
+ * nullsub, doesn't do anything
1203
+ *
1204
+ * @param p0
1205
+ */
1206
+ static N_0x0CC28C08613BA9E5(p0: number): void {
1207
+ inv<void>('0x0CC28C08613BA9E5', p0);
1208
+ }
1209
+
1210
+ /**
1211
+ * Old name: _IS_ENTITY_GHOSTED_TO_LOCAL_PLAYER
1212
+ *
1213
+ * @param entity
1214
+ * @returns
1215
+ */
1216
+ static isEntityAGhost(entity: Entity): boolean {
1217
+ return inv<boolean>('0x21D04D7BC538C146', entity.handle, rai());
1218
+ }
1219
+
1220
+ static clearGetGamerStatus(): void {
1221
+ inv<void>('0x86E0660E4F5C956D');
1222
+ }
1223
+
1224
+ /**
1225
+ * @param player
1226
+ * @param entity
1227
+ * @returns p2
1228
+ */
1229
+ static getAssistedDamageOfEntity(player: Player, entity: Entity): [boolean, number] {
1230
+ const result = inv<[boolean, number]>('0x4CACA84440FA26F6', player.handle, entity.handle, pvi(), rai());
1231
+ return [!!result[0], result[1]];
1232
+ }
1233
+
1234
+ /**
1235
+ * flags:
1236
+ * enum eSessionRequestOptionFlags
1237
+ * {
1238
+ * SESSION_REQUEST_OPTION_FLAG_INCLUDE_GANG_MEMBERS = (1 << 1),
1239
+ * SESSION_REQUEST_OPTION_FLAG_LEADER_KEEPS_GANG = (1 << 7),
1240
+ * }; seamlessType:
1241
+ * enum eSeamlessType
1242
+ * {
1243
+ * SEAMLESS_TYPE_NORMAL,
1244
+ * SEAMLESS_TYPE_PVE,
1245
+ * SEAMLESS_TYPE_DEV,
1246
+ * SEAMLESS_TYPE_NO_SEAMLESS
1247
+ * };
1248
+ *
1249
+ * @param flags
1250
+ * @param seamlessType
1251
+ * @returns sessionRequestId
1252
+ */
1253
+ static requestSessionSeamless(flags: number, seamlessType: number): [any, number] {
1254
+ const result = inv<[number, number]>('0x04019AE4956D4393', flags, seamlessType, pvi());
1255
+ return [result[0], result[1]];
1256
+ }
1257
+
1258
+ /**
1259
+ * Note: this native was added in build 1311.23
1260
+ *
1261
+ * @param p0
1262
+ * @returns
1263
+ */
1264
+ static N_0x4835413EA6F9C9CD(p0: boolean): number {
1265
+ return inv<number>('0x4835413EA6F9C9CD', p0, rai());
1266
+ }
1267
+
1268
+ /**
1269
+ * Returns ugcRequestId
1270
+ *
1271
+ * @param contentId
1272
+ * @param latestVersion
1273
+ * @param contentTypeName
1274
+ * @returns
1275
+ */
1276
+ static ugcQueryByContentId(contentId: string | null, latestVersion: boolean, contentTypeName: string | null): number {
1277
+ return inv<number>('0x69D22E183580113F', contentId, latestVersion, contentTypeName, rai());
1278
+ }
1279
+
1280
+ /**
1281
+ * @param p0
1282
+ */
1283
+ static N_0x3034C77C79A58880(p0: boolean): void {
1284
+ inv<void>('0x3034C77C79A58880', p0);
1285
+ }
1286
+
1287
+ /**
1288
+ * @param paramName
1289
+ * @returns
1290
+ */
1291
+ static getLaunchParamValue(paramName: string | null): string | null {
1292
+ return inv<string>('0x65E65CA6A0FE59D4', paramName, ras());
1293
+ }
1294
+
1295
+ /**
1296
+ * @param p0
1297
+ */
1298
+ static N_0xCF23AB5BD47B384D(p0: any): void {
1299
+ inv<void>('0xCF23AB5BD47B384D', p0);
1300
+ }
1301
+
1302
+ /**
1303
+ * Note: this native was added in build 1311.23
1304
+ *
1305
+ * @param p0
1306
+ * @param p1
1307
+ * @param p2
1308
+ */
1309
+ static N_0x3CBD6565D9C3B133(p0: number, p1: number, p2: number): void {
1310
+ inv<void>('0x3CBD6565D9C3B133', p0, p1, f(p2));
1311
+ }
1312
+
1313
+ /**
1314
+ * @returns
1315
+ */
1316
+ static hasReceivedHostBroadcastData(): boolean {
1317
+ return inv<boolean>('0x5D10B3795F3FC886', rai());
1318
+ }
1319
+
1320
+ /**
1321
+ * @param languageId
1322
+ * @returns
1323
+ */
1324
+ static ugcIsLanguageSupported(languageId: number): boolean {
1325
+ return inv<boolean>('0xF53E48461B71EECB', languageId, rai());
1326
+ }
1327
+
1328
+ /**
1329
+ * @returns
1330
+ */
1331
+ static actionPlatformInvite(): any {
1332
+ return inv<number>('0x3B82ACC3F4B6240C');
1333
+ }
1334
+
1335
+ /**
1336
+ * nullsub, doesn't do anything
1337
+ *
1338
+ * @returns
1339
+ */
1340
+ static dumpNetIfConfig(): any {
1341
+ return inv<number>('0xAEDF1BC1C133D6E3');
1342
+ }
1343
+
1344
+ /**
1345
+ * @returns
1346
+ */
1347
+ static sessionIsTransitioning(): any {
1348
+ return inv<number>('0xF2CBC969C4F090C7');
1349
+ }
1350
+
1351
+ /**
1352
+ * @param p0
1353
+ * @param index
1354
+ * @param p2
1355
+ * @returns
1356
+ */
1357
+ static ugcQueryGetVersion(p0: any, index: number, p2: number): number {
1358
+ return inv<number>('0x63E9DCBC8B0931ED', p0, index, p2, rai());
1359
+ }
1360
+
1361
+ /**
1362
+ * @param p0
1363
+ * @param p1
1364
+ */
1365
+ static N_0x3F0ABAE38A0515AD(p0: number, p1: number): void {
1366
+ inv<void>('0x3F0ABAE38A0515AD', p0, p1);
1367
+ }
1368
+
1369
+ /**
1370
+ * Subtracts the second argument from the first, then returns whether the result is negative.
1371
+ *
1372
+ * @param timeA
1373
+ * @param timeB
1374
+ * @returns
1375
+ */
1376
+ static isTimeLessThan(timeA: number, timeB: number): boolean {
1377
+ return inv<boolean>('0xCB2CF5148012C8D0', timeA, timeB, rai());
1378
+ }
1379
+
1380
+ /**
1381
+ * Old name: _NETWORK_GET_UNRELIABLE_RESEND_COUNT_FOR_PLAYER
1382
+ *
1383
+ * @param player
1384
+ * @returns
1385
+ */
1386
+ static getUnreliableResendCount(player: Player): number {
1387
+ return inv<number>('0x3765C3A3E8192E10', player.handle, rai());
1388
+ }
1389
+
1390
+ /**
1391
+ * Note: this native was added in build 1311.23
1392
+ *
1393
+ * @param p0
1394
+ * @returns
1395
+ */
1396
+ static N_0x106CBDD5077DEDE1(p0: boolean): number {
1397
+ return inv<number>('0x106CBDD5077DEDE1', p0, rai());
1398
+ }
1399
+
1400
+ /**
1401
+ * @param p0
1402
+ * @param index
1403
+ * @param p2
1404
+ * @returns
1405
+ */
1406
+ static N_0x5F0E99071582DECA(p0: any, index: number, p2: number): any {
1407
+ return inv<number>('0x5F0E99071582DECA', p0, index, p2);
1408
+ }
1409
+
1410
+ /**
1411
+ * @param p1
1412
+ * @param p2
1413
+ * @param p3
1414
+ * @param p4
1415
+ * @param p5
1416
+ * @param p6
1417
+ * @param p7
1418
+ * @param p8
1419
+ * @param p9
1420
+ * @param p10
1421
+ * @param p11
1422
+ * @param p12
1423
+ * @param p13
1424
+ * @param p14
1425
+ * @returns p0
1426
+ */
1427
+ static N_0x7E300B5B86AB1D1A(p1: number, p2: number, p3: number, p4: number, p5: number, p6: number, p7: number, p8: number, p9: number, p10: number, p11: number, p12: number, p13: number, p14: number): number {
1428
+ const result = inv<number>('0x7E300B5B86AB1D1A', pvi(), p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14);
1429
+ return result;
1430
+ }
1431
+
1432
+ /**
1433
+ * Must be called from a background script, otherwise it will do nothing.
1434
+ *
1435
+ * @returns p0
1436
+ */
1437
+ static debugRequestEntityPosition(): number {
1438
+ const result = inv<number>('0xFA38B52F91B59075', pvi());
1439
+ return result;
1440
+ }
1441
+
1442
+ /**
1443
+ * @returns gamerHandle
1444
+ */
1445
+ static isGamerInMySession(): [boolean, number] {
1446
+ const result = inv<[boolean, number]>('0x0F10B05DDF8D16E9', pvi(), rai());
1447
+ return [!!result[0], result[1]];
1448
+ }
1449
+
1450
+ /**
1451
+ * @param player
1452
+ * @param toggle
1453
+ */
1454
+ static setPlayerInvisibleLocally(player: Player, toggle: boolean): void {
1455
+ inv<void>('0x12B37D54667DB0B8', player.handle, toggle);
1456
+ }
1457
+
1458
+ /**
1459
+ * @returns
1460
+ */
1461
+ static getSessionHost(): Player | null {
1462
+ return createFromHandle<Player>('Player', inv<number>('0x8DC9AA3B508B1A85', rai()));
1463
+ }
1464
+
1465
+ /**
1466
+ * @param toggle
1467
+ */
1468
+ static preventMigrationOfEntitiesInFastInstanceForLocalPlayer(toggle: boolean): void {
1469
+ inv<void>('0x89D803CD48622150', toggle);
1470
+ }
1471
+
1472
+ /**
1473
+ * @param player
1474
+ * @returns
1475
+ */
1476
+ static hashFromPlayerHandle(player: Player): string | number {
1477
+ return (inv<number>('0xBC1D768F2F5D6C05', player.handle, rai())) & 0xFFFFFFFF;
1478
+ }
1479
+
1480
+ /**
1481
+ * Used in Script Function NET_ACE_CLIENT_VERIFY_ENTITY_RESERVATIONS
1482
+ * Coords: Slot world position Old name: _GET_RESERVATIONS_FOR_SLOT_WORLD_POSITION
1483
+ *
1484
+ * @param pos
1485
+ * @param p3
1486
+ * @returns peds; vehicles; objects; pickups
1487
+ */
1488
+ static getReservedMissionEntitiesInArea(pos: Vector3, p3: boolean): [number, number, number, number] {
1489
+ const result = inv<[number, number, number, number]>('0x5E71E72A94985214', f(pos.x), f(pos.y), f(pos.z), p3, pvi(), pvi(), pvi(), pvi());
1490
+ return [result[0], result[1], result[2], result[3]];
1491
+ }
1492
+
1493
+ /**
1494
+ * @param amount
1495
+ * @returns
1496
+ */
1497
+ static canRegisterMissionPickups(amount: number): any {
1498
+ return inv<number>('0xF0460C7BF80011EA', amount);
1499
+ }
1500
+
1501
+ /**
1502
+ * @param player
1503
+ * @returns
1504
+ */
1505
+ static isPlayerInSpectatorMode(player: Player): boolean {
1506
+ return inv<boolean>('0x5B709519997ECF0F', player.handle, rai());
1507
+ }
1508
+
1509
+ /**
1510
+ * _SET_PLAYER_V* - _SET_S*
1511
+ *
1512
+ * @param player
1513
+ * @param disabled
1514
+ */
1515
+ static setPlayerVisibilityToLocalPlayerDisabled(player: Player, disabled: boolean): void {
1516
+ inv<void>('0xDCA6ABDB9288FBE4', player.handle, disabled);
1517
+ }
1518
+
1519
+ /**
1520
+ * @param pickup
1521
+ * @returns
1522
+ */
1523
+ static hasControlOfPickup(pickup: Pickup): boolean {
1524
+ return inv<boolean>('0x5BC9495F0B3B6FA6', pickup.handle, rai());
1525
+ }
1526
+
1527
+ /**
1528
+ * @returns
1529
+ */
1530
+ static N_0x67CCDF74C4DF7169(): boolean {
1531
+ return inv<boolean>('0x67CCDF74C4DF7169', rai());
1532
+ }
1533
+
1534
+ /**
1535
+ * @param textureDownloadId
1536
+ * @returns
1537
+ */
1538
+ static textureDownloadGetName(textureDownloadId: number): string | null {
1539
+ return inv<string>('0x3448505B6E35262D', textureDownloadId, ras());
1540
+ }
1541
+
1542
+ /**
1543
+ * Note: this native was added in build 1311.16
1544
+ *
1545
+ * @returns
1546
+ */
1547
+ static getNumPeerNegotiationResponses(): number {
1548
+ return inv<number>('0x4FE932E84FE932E8', rai());
1549
+ }
1550
+
1551
+ /**
1552
+ * nullsub, doesn't do anything
1553
+ */
1554
+ static showPsnUgcRestriction(): void {
1555
+ inv<void>('0x5C497525F803486B');
1556
+ }
1557
+
1558
+ /**
1559
+ * @param p0
1560
+ * @param p1
1561
+ * @returns
1562
+ */
1563
+ static ugcQueryGetPosixUpdatedDate(p0: any, p1: any): number {
1564
+ return inv<number>('0x21A99A72B00D8002', p0, p1, rai());
1565
+ }
1566
+
1567
+ /**
1568
+ * @param index
1569
+ * @returns
1570
+ */
1571
+ static hasRosPrivilege(index: number): boolean {
1572
+ return inv<boolean>('0xA699957E60D80214', index, rai());
1573
+ }
1574
+
1575
+ /**
1576
+ * @returns
1577
+ */
1578
+ static isSessionStarted(): boolean {
1579
+ return inv<boolean>('0x9DE624D2FC4B603F', rai());
1580
+ }
1581
+
1582
+ /**
1583
+ * @param toggle
1584
+ */
1585
+ static setLocalPlayerSyncLookAt(toggle: boolean): void {
1586
+ inv<void>('0x524FF0AEFF9C3973', toggle);
1587
+ }
1588
+
1589
+ /**
1590
+ * @returns gamerHandle
1591
+ */
1592
+ static showProfileUi(): number {
1593
+ const result = inv<number>('0x859ED1CEA343FCA8', pvi());
1594
+ return result;
1595
+ }
1596
+
1597
+ /**
1598
+ * @param player
1599
+ * @param toggle
1600
+ */
1601
+ static setPlayerVisibleLocally(player: Player, toggle: boolean): void {
1602
+ inv<void>('0xFAA10F1FAFB11AF2', player.handle, toggle);
1603
+ }
1604
+
1605
+ /**
1606
+ * *NETWORK_SPAWN_CONFIG**
1607
+ *
1608
+ * @param nsctf
1609
+ */
1610
+ static N_0x5D3C528B7A7DF836(nsctf: string | number): void {
1611
+ inv<void>('0x5D3C528B7A7DF836', _h(nsctf));
1612
+ }
1613
+
1614
+ /**
1615
+ * @returns
1616
+ */
1617
+ static autoSessionIsAutoWarpDisabled(): any {
1618
+ return inv<number>('0xE258570E0C116A66');
1619
+ }
1620
+
1621
+ /**
1622
+ * @returns
1623
+ */
1624
+ static didGetGamerStatusSucceed(): any {
1625
+ return inv<number>('0x5AE17C6B0134B7F1');
1626
+ }
1627
+
1628
+ /**
1629
+ * @param p0
1630
+ * @param p1
1631
+ * @param p2
1632
+ * @param p3
1633
+ * @param p4
1634
+ * @returns
1635
+ */
1636
+ static isSphereVisibleToAnotherMachine(p0: any, p1: any, p2: any, p3: any, p4: any): boolean {
1637
+ return inv<boolean>('0xD82CF8E64C8729D8', p0, p1, p2, p3, p4, rai());
1638
+ }
1639
+
1640
+ /**
1641
+ * @param p0
1642
+ * @returns
1643
+ */
1644
+ static checkCommunicationPrivileges(p0: number): boolean {
1645
+ return inv<boolean>('0x83F28CE49FBBFFBA', p0, rai());
1646
+ }
1647
+
1648
+ /**
1649
+ * Note: this native was added in build 1355.30
1650
+ */
1651
+ static N_0x40FEDB13870042F1(): void {
1652
+ inv<void>('0x40FEDB13870042F1');
1653
+ }
1654
+
1655
+ /**
1656
+ * @param player1
1657
+ * @param player2
1658
+ * @returns
1659
+ */
1660
+ static N_0xFE53B1F8D43F19BF(player1: Player, player2: Player): number {
1661
+ return inv<number>('0xFE53B1F8D43F19BF', player1.handle, player2.handle, rai());
1662
+ }
1663
+
1664
+ /**
1665
+ * @param id
1666
+ * @returns
1667
+ */
1668
+ static cloudDidRequestSucceed(id: number): boolean {
1669
+ return inv<boolean>('0x3A3D5568AF297CD5', id, rai());
1670
+ }
1671
+
1672
+ /**
1673
+ * @param player
1674
+ * @returns
1675
+ */
1676
+ static isPlayerConnected(player: Player): boolean {
1677
+ return inv<boolean>('0x93DC1BE4E1ABE9D1', player.handle, rai());
1678
+ }
1679
+
1680
+ /**
1681
+ * @param description
1682
+ * @returns
1683
+ */
1684
+ static ugcDidDescriptionRequestSucceed(description: string | number): boolean {
1685
+ return inv<boolean>('0x162C23CA83ED0A62', _h(description), rai());
1686
+ }
1687
+
1688
+ /**
1689
+ * @returns
1690
+ */
1691
+ static getGameMode(): number {
1692
+ return inv<number>('0x225640E09EFFDC3F', rai());
1693
+ }
1694
+
1695
+ /**
1696
+ * @param amount
1697
+ */
1698
+ static reserveNetworkClientMissionPeds(amount: number): void {
1699
+ inv<void>('0x807E119F80231732', amount);
1700
+ }
1701
+
1702
+ /**
1703
+ * @param p0
1704
+ * @param p1
1705
+ * @param p2
1706
+ * @param p3
1707
+ */
1708
+ static setInMpCutscene(p0: boolean, p1: boolean, p2: number, p3: boolean): void {
1709
+ inv<void>('0x9CA5DE655269FEC4', p0, p1, p2, p3);
1710
+ }
1711
+
1712
+ /**
1713
+ * @param toggle
1714
+ * @param playerPed
1715
+ */
1716
+ static setInSpectatorMode(toggle: boolean, playerPed: Ped): void {
1717
+ inv<void>('0x423DE3854BB50894', toggle, playerPed.handle);
1718
+ }
1719
+
1720
+ /**
1721
+ * @param p0
1722
+ */
1723
+ static N_0x3E74A687A73979C6(p0: boolean): void {
1724
+ inv<void>('0x3E74A687A73979C6', p0);
1725
+ }
1726
+
1727
+ /**
1728
+ * @returns sessionRequestId
1729
+ */
1730
+ static sessionIsRequestPendingTransition(): [any, number] {
1731
+ const result = inv<[number, number]>('0xCCF878D50F8AB10D', pvi());
1732
+ return [result[0], result[1]];
1733
+ }
1734
+
1735
+ /**
1736
+ * @param offset
1737
+ */
1738
+ static spawnConfigSetGroundToRootOffset(offset: number): void {
1739
+ inv<void>('0x59577799F6AE2F34', f(offset));
1740
+ }
1741
+
1742
+ /**
1743
+ * @returns
1744
+ */
1745
+ static checkAccessAndAlertIfFail(): any {
1746
+ return inv<number>('0x2A8112A974DE1EF6');
1747
+ }
1748
+
1749
+ /**
1750
+ * Note: this native was added in build 1311.23
1751
+ *
1752
+ * @returns
1753
+ */
1754
+ static N_0xFB3205788F8AFA3F(): number {
1755
+ return inv<number>('0xFB3205788F8AFA3F', rai());
1756
+ }
1757
+
1758
+ /**
1759
+ * @returns
1760
+ */
1761
+ static getNumRecentGamers(): number {
1762
+ return inv<number>('0x37A834AEC6A4F74A', rai());
1763
+ }
1764
+
1765
+ /**
1766
+ * @returns
1767
+ */
1768
+ static N_0xD3A3C8B9F3BDEF81(): any {
1769
+ return inv<number>('0xD3A3C8B9F3BDEF81');
1770
+ }
1771
+
1772
+ /**
1773
+ * Returns the entity's network ID.
1774
+ *
1775
+ * @param entity
1776
+ * @returns
1777
+ */
1778
+ static N_0xF302AB9D978352EE(entity: Entity): number {
1779
+ return inv<number>('0xF302AB9D978352EE', entity.handle, rai());
1780
+ }
1781
+
1782
+ static disableRealtimeMultiplayer(): void {
1783
+ inv<void>('0x236905C700FDB54D');
1784
+ }
1785
+
1786
+ /**
1787
+ * @param volume
1788
+ */
1789
+ static spawnConfigRemoveExclusionVolume(volume: Volume): void {
1790
+ inv<void>('0xA35E7BF20FA269E0', volume.handle);
1791
+ }
1792
+
1793
+ /**
1794
+ * @param tunableContext
1795
+ * @param tunableName
1796
+ * @returns
1797
+ */
1798
+ static doesTunableExist(tunableContext: string | number, tunableName: string | number): boolean {
1799
+ return inv<boolean>('0x85E5F8B9B898B20A', _h(tunableContext), _h(tunableName), rai());
1800
+ }
1801
+
1802
+ /**
1803
+ * Note: this native was added in build 1311.23
1804
+ *
1805
+ * @param p0
1806
+ * @returns
1807
+ */
1808
+ static N_0x982D7AD755B8F62C(p0: boolean): number {
1809
+ return inv<number>('0x982D7AD755B8F62C', p0, rai());
1810
+ }
1811
+
1812
+ static startSoloTutorialSession(): void {
1813
+ inv<void>('0x17E0198B3882C2CB');
1814
+ }
1815
+
1816
+ /**
1817
+ * @param p0
1818
+ * @param p2
1819
+ * @param p3
1820
+ * @returns p1
1821
+ */
1822
+ static setRichPresence(p0: number, p2: number, p3: number): number {
1823
+ const result = inv<number>('0x1DCCACDCFC569362', p0, pvi(), p2, p3);
1824
+ return result;
1825
+ }
1826
+
1827
+ /**
1828
+ * @returns
1829
+ */
1830
+ static pedmugshotTake(): any {
1831
+ return inv<number>('0xCD954F330693F5F2');
1832
+ }
1833
+
1834
+ /**
1835
+ * @param entity
1836
+ */
1837
+ static N_0xBB1EC8C2EEF33BAA(entity: Entity): void {
1838
+ inv<void>('0xBB1EC8C2EEF33BAA', entity.handle);
1839
+ }
1840
+
1841
+ /**
1842
+ * @returns
1843
+ */
1844
+ static haveOnlinePrivileges(): boolean {
1845
+ return inv<boolean>('0x25CB5A9F37BFD063', rai());
1846
+ }
1847
+
1848
+ /**
1849
+ * @param p0
1850
+ * @param index
1851
+ * @returns
1852
+ */
1853
+ static ugcQueryGetRootContentId(p0: any, index: number): string | null {
1854
+ return inv<string>('0x566CEB0542EF5ECF', p0, index, ras());
1855
+ }
1856
+
1857
+ /**
1858
+ * @returns
1859
+ */
1860
+ static didFindGamersSucceed(): any {
1861
+ return inv<number>('0xF9B83B77929D8863');
1862
+ }
1863
+
1864
+ static N_0x0BF90CBB6B72977B(): void {
1865
+ inv<void>('0x0BF90CBB6B72977B');
1866
+ }
1867
+
1868
+ /**
1869
+ * @returns gamerHandle
1870
+ */
1871
+ static getLocalHandle(): number {
1872
+ const result = inv<number>('0xE86051786B66CD8E', pvi());
1873
+ return result;
1874
+ }
1875
+
1876
+ /**
1877
+ * nullsub, doesn't do anything
1878
+ *
1879
+ * @param p0
1880
+ */
1881
+ static N_0x2C4E98DDA475364F(p0: string | null): void {
1882
+ inv<void>('0x2C4E98DDA475364F', p0);
1883
+ }
1884
+
1885
+ /**
1886
+ * @param entity
1887
+ * @returns
1888
+ */
1889
+ static getGlobalEntityFlags(entity: Entity): number {
1890
+ return inv<number>('0xDD7806FD0543BC3D', entity.handle, rai());
1891
+ }
1892
+
1893
+ /**
1894
+ * @param description
1895
+ * @returns
1896
+ */
1897
+ static ugcHasDescriptionRequestFinished(description: string | number): boolean {
1898
+ return inv<boolean>('0xEBFA8D50ADDC54C4', _h(description), rai());
1899
+ }
1900
+
1901
+ /**
1902
+ * @returns
1903
+ */
1904
+ static canSessionEnd(): boolean {
1905
+ return inv<boolean>('0x4EEBC3694E49C572', rai());
1906
+ }
1907
+
1908
+ /**
1909
+ * @returns
1910
+ */
1911
+ static hasCurrentGetGamerStatusStarted(): any {
1912
+ return inv<number>('0x25189F9908E9CD65');
1913
+ }
1914
+
1915
+ /**
1916
+ * @param enabled
1917
+ * @param flagIndex
1918
+ * @returns
1919
+ */
1920
+ static setMpMissionFlagOnCurrentSlot(enabled: boolean, flagIndex: number): any {
1921
+ return inv<number>('0x86FD10251A7118A4', enabled, flagIndex);
1922
+ }
1923
+
1924
+ /**
1925
+ * Hardcoded to return false.
1926
+ *
1927
+ * @returns
1928
+ */
1929
+ static isInPlatformPartyChat(): boolean {
1930
+ return inv<boolean>('0xFD8B834A8BA05048', rai());
1931
+ }
1932
+
1933
+ /**
1934
+ * @param friendIndex
1935
+ * @returns gamerHandle
1936
+ */
1937
+ static handleFromFriend(friendIndex: number): number {
1938
+ const result = inv<number>('0xD45CB817D7E177D2', friendIndex, pvi());
1939
+ return result;
1940
+ }
1941
+
1942
+ /**
1943
+ * @returns
1944
+ */
1945
+ static commerceStoreIsEnabled(): boolean {
1946
+ return inv<boolean>('0xDBC754CB6CCB9378', rai());
1947
+ }
1948
+
1949
+ /**
1950
+ * @param p0
1951
+ */
1952
+ static N_0xA95470DA137587F5(p0: boolean): void {
1953
+ inv<void>('0xA95470DA137587F5', p0);
1954
+ }
1955
+
1956
+ /**
1957
+ * @param netId
1958
+ * @returns
1959
+ */
1960
+ static hasControlOfNetworkId(netId: number): boolean {
1961
+ return inv<boolean>('0x4D36070FE0215186', netId, rai());
1962
+ }
1963
+
1964
+ /**
1965
+ * @param flags
1966
+ */
1967
+ static spawnConfigSetFlags(flags: number): void {
1968
+ inv<void>('0xF94A0D5B254375DF', flags);
1969
+ }
1970
+
1971
+ /**
1972
+ * Same as NETWORK_GET_AVERAGE_LATENCY (0xD414BE129BB81B32) Old name: _NETWORK_GET_AVERAGE_LATENCY_FOR_PLAYER_2
1973
+ *
1974
+ * @param player
1975
+ * @returns
1976
+ */
1977
+ static getAveragePing(player: Player): number {
1978
+ return inv<number>('0x0E3A041ED6AC2B45', player.handle, raf());
1979
+ }
1980
+
1981
+ /**
1982
+ * @param p0
1983
+ * @returns
1984
+ */
1985
+ static getNumCreatedMissionObjects(p0: boolean): number {
1986
+ return inv<number>('0x12B6281B6C6706C0', p0, rai());
1987
+ }
1988
+
1989
+ /**
1990
+ * Note: this native was added in build 1311.16 GET_NUM_*
1991
+ *
1992
+ * @returns
1993
+ */
1994
+ static N_0x02B3CDD652B3CDD6(): number {
1995
+ return inv<number>('0x02B3CDD652B3CDD6', rai());
1996
+ }
1997
+
1998
+ /**
1999
+ * nullsub, doesn't do anything
2000
+ */
2001
+ static N_0x2CD41AC000E6F611(): void {
2002
+ inv<void>('0x2CD41AC000E6F611');
2003
+ }
2004
+
2005
+ /**
2006
+ * @returns
2007
+ */
2008
+ static sessionGetSessionType(): number {
2009
+ return inv<number>('0xF0C0C94B404206FA', rai());
2010
+ }
2011
+
2012
+ /**
2013
+ * @returns
2014
+ */
2015
+ static isClockTimeOverridden(): boolean {
2016
+ return inv<boolean>('0xD7C95D322FF57522', rai());
2017
+ }
2018
+
2019
+ /**
2020
+ * @param player
2021
+ * @returns gamerHandle
2022
+ */
2023
+ static handleFromPlayer(player: Player): number {
2024
+ const result = inv<number>('0x388EB2B86C73B6B3', player.handle, pvi());
2025
+ return result;
2026
+ }
2027
+
2028
+ /**
2029
+ * Note: this native was added in build 1311.23, but was only used after build 1436.25
2030
+ */
2031
+ static requestCloudTunables(): void {
2032
+ inv<void>('0x42FB3B532D526E6C');
2033
+ }
2034
+
2035
+ /**
2036
+ * @param toggle
2037
+ */
2038
+ static setScriptReadyForEvents(toggle: boolean): void {
2039
+ inv<void>('0x7AC752103856FB20', toggle);
2040
+ }
2041
+
2042
+ /**
2043
+ * @param amount
2044
+ * @returns
2045
+ */
2046
+ static canRegisterMissionPeds(amount: number): boolean {
2047
+ return inv<boolean>('0xBCBF4FEF9FA5D781', amount, rai());
2048
+ }
2049
+
2050
+ /**
2051
+ * @returns gamerHandle1; gamerHandle2
2052
+ */
2053
+ static areHandlesTheSame(): [boolean, number, number] {
2054
+ const result = inv<[boolean, number, number]>('0x57DBA049E110F217', pvi(), pvi(), rai());
2055
+ return [!!result[0], result[1], result[2]];
2056
+ }
2057
+
2058
+ /**
2059
+ * Old name: _SET_LOCAL_PLAYER_AS_GHOST
2060
+ *
2061
+ * @param toggle
2062
+ */
2063
+ static setLocalPlayerAsGhost(toggle: boolean): void {
2064
+ inv<void>('0x5FFE9B4144F9712F', toggle);
2065
+ }
2066
+
2067
+ /**
2068
+ * Example: char displayName[64];
2069
+ * if (_NETWORK_GET_DISPLAY_NAME_FROM_HANDLE(handle, displayName))
2070
+ * {
2071
+ * // use displayName
2072
+ * }
2073
+ *
2074
+ * @param displayName
2075
+ * @returns gamerHandle
2076
+ */
2077
+ static getDisplayNameFromHandle(displayName: string | null): [any, number] {
2078
+ const result = inv<[number, number]>('0x7FEE4F07C54B6B3C', pvi(), displayName);
2079
+ return [result[0], result[1]];
2080
+ }
2081
+
2082
+ static endTutorialSession(): void {
2083
+ inv<void>('0xD0AFAFF5A51D72F7');
2084
+ }
2085
+
2086
+ /**
2087
+ * @param p0
2088
+ * @param p2
2089
+ * @returns p1
2090
+ */
2091
+ static isPlayerAParticipantOnScript(p0: Player, p2: any): [boolean, number] {
2092
+ const result = inv<[boolean, number]>('0x1AD5B71586B94820', p0.handle, pvi(), p2, rai());
2093
+ return [!!result[0], result[1]];
2094
+ }
2095
+
2096
+ /**
2097
+ * @returns
2098
+ */
2099
+ static getTotalNumFriends(): number {
2100
+ return inv<number>('0xDB7ABDD203FA3704', rai());
2101
+ }
2102
+
2103
+ /**
2104
+ * Returns ugcRequestId
2105
+ *
2106
+ * @param p0
2107
+ * @param maxGet
2108
+ * @param contentTypeName
2109
+ * @param p3
2110
+ * @param p4
2111
+ * @param p5
2112
+ * @returns
2113
+ */
2114
+ static ugcQueryByContentType(p0: number, maxGet: number, contentTypeName: string | null, p3: number, p4: number, p5: number): number {
2115
+ return inv<number>('0xF40EF49B3099E98E', p0, maxGet, contentTypeName, p3, p4, p5, rai());
2116
+ }
2117
+
2118
+ /**
2119
+ * @param p0
2120
+ * @param index
2121
+ * @param p2
2122
+ * @returns
2123
+ */
2124
+ static ugcQueryGetRating(p0: any, index: number, p2: number): number {
2125
+ return inv<number>('0x24CD8FAEA1368379', p0, index, p2, raf());
2126
+ }
2127
+
2128
+ /**
2129
+ * @param player
2130
+ */
2131
+ static N_0xD78A26024BB13E08(player: Player): void {
2132
+ inv<void>('0xD78A26024BB13E08', player.handle);
2133
+ }
2134
+
2135
+ /**
2136
+ * Only used in R* Script fm_race_controller
2137
+ *
2138
+ * @param p0
2139
+ */
2140
+ static N_0x71FA2D1880C48032(p0: boolean): void {
2141
+ inv<void>('0x71FA2D1880C48032', p0);
2142
+ }
2143
+
2144
+ /**
2145
+ * Note: this native was added in build 1311.23
2146
+ *
2147
+ * @param p0
2148
+ * @param p1
2149
+ * @param p2
2150
+ * @param p3
2151
+ * @returns
2152
+ */
2153
+ static N_0x5F328FC909F0E0FF(p0: number, p1: number, p2: number, p3: number): boolean {
2154
+ return inv<boolean>('0x5F328FC909F0E0FF', p0, p1, p2, p3, rai());
2155
+ }
2156
+
2157
+ /**
2158
+ * Old name: _NETWORK_SET_VEHICLE_WHEELS_DESTRUCTIBLE
2159
+ *
2160
+ * @param entity
2161
+ * @param p1
2162
+ */
2163
+ static triggerDamageEventForZeroDamage(entity: Entity, p1: boolean): void {
2164
+ inv<void>('0x0C8BC052AE87D744', entity.handle, p1);
2165
+ }
2166
+
2167
+ /**
2168
+ * nullsub, doesn't do anything
2169
+ *
2170
+ * @returns
2171
+ */
2172
+ static getNetStatisticsInfo(): any {
2173
+ return inv<number>('0x6FD992C4A1C1B986');
2174
+ }
2175
+
2176
+ /**
2177
+ * nullsub, doesn't do anything
2178
+ */
2179
+ static N_0xFC6FCF4C03F1BBF6(): void {
2180
+ inv<void>('0xFC6FCF4C03F1BBF6');
2181
+ }
2182
+
2183
+ static N_0x43CF999205084B4B(): void {
2184
+ inv<void>('0x43CF999205084B4B');
2185
+ }
2186
+
2187
+ /**
2188
+ * p0 appears to be for MP
2189
+ *
2190
+ * @param p0
2191
+ * @returns
2192
+ */
2193
+ static getNumReservedMissionVehicles(p0: boolean): number {
2194
+ return inv<number>('0xCF3A965906452031', p0, rai());
2195
+ }
2196
+
2197
+ /**
2198
+ * @param name
2199
+ * @returns
2200
+ */
2201
+ static textureDownloadTextureNameIsValid(name: string | null): any {
2202
+ return inv<number>('0xE2C3CEC3C0903A00', name);
2203
+ }
2204
+
2205
+ /**
2206
+ * @param scriptName
2207
+ * @param p1
2208
+ * @param p2
2209
+ * @param p3
2210
+ * @returns
2211
+ */
2212
+ static isScriptActive(scriptName: string | null, p1: number, p2: boolean, p3: number): boolean {
2213
+ return inv<boolean>('0x9D40DF90FAD26098', scriptName, p1, p2, p3, rai());
2214
+ }
2215
+
2216
+ /**
2217
+ * @param p0
2218
+ */
2219
+ static N_0x5CB8B0C846D0F30B(p0: any): void {
2220
+ inv<void>('0x5CB8B0C846D0F30B', p0);
2221
+ }
2222
+
2223
+ /**
2224
+ * @returns loadingState
2225
+ */
2226
+ static canAccessMultiplayer(): [boolean, number] {
2227
+ const result = inv<[boolean, number]>('0xAF50DA1A3F8B1BA4', pvi(), rai());
2228
+ return [!!result[0], result[1]];
2229
+ }
2230
+
2231
+ /**
2232
+ * @returns p0
2233
+ */
2234
+ static getCurrentFriendPageData(): [any, number] {
2235
+ const result = inv<[number, number]>('0xA3EEC0A5AFF3FC5B', pvi());
2236
+ return [result[0], result[1]];
2237
+ }
2238
+
2239
+ /**
2240
+ * @returns p0
2241
+ */
2242
+ static getSizeOfHostBroadcastDataStorage(): [number, number] {
2243
+ const result = inv<[number, number]>('0xBA24095EA96DFE17', pvi(), rai());
2244
+ return [result[0], result[1]];
2245
+ }
2246
+
2247
+ /**
2248
+ * @returns
2249
+ */
2250
+ static getInstanceIdOfThisScript(): number {
2251
+ return inv<number>('0x638A3A81733086DB', rai());
2252
+ }
2253
+
2254
+ /**
2255
+ * @param p0
2256
+ * @returns
2257
+ */
2258
+ static awardHasReachedMaxclaim(p0: any): any {
2259
+ return inv<number>('0xFBE782B3165AC8EC', p0);
2260
+ }
2261
+
2262
+ /**
2263
+ * @param p0
2264
+ * @returns
2265
+ */
2266
+ static N_0xBB697756309D77EE(p0: boolean): any {
2267
+ return inv<number>('0xBB697756309D77EE', p0);
2268
+ }
2269
+
2270
+ /**
2271
+ * @returns
2272
+ */
2273
+ static autoSessionIsInstancedSession(): any {
2274
+ return inv<number>('0x277865A734918AE6');
2275
+ }
2276
+
2277
+ /**
2278
+ * @param p0
2279
+ * @param p1
2280
+ * @returns
2281
+ */
2282
+ static resetPopulation(p0: boolean, p1: number): any {
2283
+ return inv<number>('0x101F538C25ABB39A', p0, p1);
2284
+ }
2285
+
2286
+ /**
2287
+ * Returns the network ID of the given ped.
2288
+ *
2289
+ * @param ped
2290
+ * @returns
2291
+ */
2292
+ static pedToNet(ped: Ped): number {
2293
+ return inv<number>('0x0EDEC3C276198689', ped.handle, rai());
2294
+ }
2295
+
2296
+ /**
2297
+ * @param p0
2298
+ * @returns
2299
+ */
2300
+ static N_0x27B1AE4D8C652F08(p0: number): number {
2301
+ return inv<number>('0x27B1AE4D8C652F08', p0, rai());
2302
+ }
2303
+
2304
+ /**
2305
+ * @returns gamerHandle
2306
+ */
2307
+ static canReceiveInviteFromHandle(): [any, number] {
2308
+ const result = inv<[number, number]>('0xF23D6475640D29EB', pvi());
2309
+ return [result[0], result[1]];
2310
+ }
2311
+
2312
+ /**
2313
+ * @param player
2314
+ * @param p1
2315
+ */
2316
+ static addPlayerToRecentGamersList(player: Player, p1: number): void {
2317
+ inv<void>('0x157D8F3DE12B307F', player.handle, p1);
2318
+ }
2319
+
2320
+ /**
2321
+ * @returns
2322
+ */
2323
+ static N_0x232E1EB23CDB313C(): boolean {
2324
+ return inv<boolean>('0x232E1EB23CDB313C', rai());
2325
+ }
2326
+
2327
+ /**
2328
+ * Note: this native was added in build 1311.23
2329
+ *
2330
+ * @returns sessionId1; sessionId2
2331
+ */
2332
+ static sessionAreSessionIdsEqual(): [boolean, number, number] {
2333
+ const result = inv<[boolean, number, number]>('0x4DEC5000F7B508F0', pvi(), pvi(), rai());
2334
+ return [!!result[0], result[1], result[2]];
2335
+ }
2336
+
2337
+ /**
2338
+ * @returns
2339
+ */
2340
+ static isTutorialSessionChangePending(): boolean {
2341
+ return inv<boolean>('0x35F0B98A8387274D', rai());
2342
+ }
2343
+
2344
+ static ugcReleaseAllCachedDescriptions(): void {
2345
+ inv<void>('0x68103E2247887242');
2346
+ }
2347
+
2348
+ /**
2349
+ * @param animScene
2350
+ * @returns
2351
+ */
2352
+ static requestControlOfAnimScene(animScene: AnimScene): any {
2353
+ return inv<number>('0xAAA92B631B13F614', animScene.handle);
2354
+ }
2355
+
2356
+ static setMissionFinished(): void {
2357
+ inv<void>('0x3B3D11CD9FFCDFC9');
2358
+ }
2359
+
2360
+ /**
2361
+ * Note: this native was added in build 1311.23
2362
+ *
2363
+ * @param p0
2364
+ * @returns
2365
+ */
2366
+ static N_0x1E4E097D71D449FB(p0: boolean): number {
2367
+ return inv<number>('0x1E4E097D71D449FB', p0, rai());
2368
+ }
2369
+
2370
+ /**
2371
+ * Note: this native was added in build 1311.23
2372
+ *
2373
+ * @param p0
2374
+ */
2375
+ static N_0xC1968045EEB563B7(p0: number): void {
2376
+ inv<void>('0xC1968045EEB563B7', p0);
2377
+ }
2378
+
2379
+ /**
2380
+ * Old name: _CLEAR_LAUNCH_PARAMS
2381
+ */
2382
+ static clearServiceEventArguments(): void {
2383
+ inv<void>('0x966DD84FB6A46017');
2384
+ }
2385
+
2386
+ /**
2387
+ * Old name: _NETWORK_ALLOW_LOCAL_ENTITY_ATTACHMENT
2388
+ *
2389
+ * @param entity
2390
+ * @param toggle
2391
+ */
2392
+ static allowRemoteAttachmentModification(entity: Entity, toggle: boolean): void {
2393
+ inv<void>('0x267C78C60E806B9A', entity.handle, toggle);
2394
+ }
2395
+
2396
+ /**
2397
+ * @param volume
2398
+ */
2399
+ static spawnConfigAddExclusionVolume(volume: Volume): void {
2400
+ inv<void>('0xEEB7818B1D307212', volume.handle);
2401
+ }
2402
+
2403
+ /**
2404
+ * Note: this native was added in build 1436.31
2405
+ *
2406
+ * @param p0
2407
+ * @returns
2408
+ */
2409
+ static N_0x78271BC02AE9AF83(p0: number): number {
2410
+ return inv<number>('0x78271BC02AE9AF83', p0, rai());
2411
+ }
2412
+
2413
+ /**
2414
+ * @param netID
2415
+ * @returns
2416
+ */
2417
+ static isDamageTrackerActiveOnNetworkId(netID: number): boolean {
2418
+ return inv<boolean>('0x6E192E33AD436366', netID, rai());
2419
+ }
2420
+
2421
+ /**
2422
+ * Always returns -1. Seems to be XB1 specific.
2423
+ *
2424
+ * @returns gamerHandle
2425
+ */
2426
+ static startUserContentPermissionsCheck(): [number, number] {
2427
+ const result = inv<[number, number]>('0xDEB2B99A1AF1A2A6', pvi(), rai());
2428
+ return [result[0], result[1]];
2429
+ }
2430
+
2431
+ /**
2432
+ * gets the object id of a network id
2433
+ *
2434
+ * @param netHandle
2435
+ * @returns
2436
+ */
2437
+ static netToObj(netHandle: number): Prop | null {
2438
+ return createFromHandle<Prop>('Prop', inv<number>('0xD8515F5FEA14CB3F', netHandle, rai()));
2439
+ }
2440
+
2441
+ /**
2442
+ * Note: this native was added in build 1311.23
2443
+ *
2444
+ * @param ctx
2445
+ * @param ec
2446
+ * @param ex
2447
+ * @param ro
2448
+ */
2449
+ static N_0x19447FCAE97704DC(ctx: string | number, ec: number, ex: boolean, ro: boolean): void {
2450
+ inv<void>('0x19447FCAE97704DC', _h(ctx), ec, ex, ro);
2451
+ }
2452
+
2453
+ /**
2454
+ * Hardcoded to return zero.
2455
+ *
2456
+ * @returns
2457
+ */
2458
+ static getPromotionDlgSeenCount(): number {
2459
+ return inv<number>('0x2FB53C631A49BE92', rai());
2460
+ }
2461
+
2462
+ /**
2463
+ * @param waterDepthLevel
2464
+ */
2465
+ static spawnConfigSetLevelWaterDepth(waterDepthLevel: number): void {
2466
+ inv<void>('0xBDCC671B911040F9', waterDepthLevel);
2467
+ }
2468
+
2469
+ /**
2470
+ * @returns
2471
+ */
2472
+ static N_0x41452E8A3B9C0C4B(): number {
2473
+ return inv<number>('0x41452E8A3B9C0C4B', rai());
2474
+ }
2475
+
2476
+ /**
2477
+ * If you are host, returns true else returns false.
2478
+ *
2479
+ * @returns
2480
+ */
2481
+ static isHost(): boolean {
2482
+ return inv<boolean>('0x8DB296B814EDDA07', rai());
2483
+ }
2484
+
2485
+ /**
2486
+ * @returns p0
2487
+ */
2488
+ static N_0xA6F1BAABFF6AD7B9(): number {
2489
+ const result = inv<number>('0xA6F1BAABFF6AD7B9', pvi());
2490
+ return result;
2491
+ }
2492
+
2493
+ /**
2494
+ * @returns
2495
+ */
2496
+ static spawnConfigSearchInProgress(): any {
2497
+ return inv<number>('0x89EC2FC89ECB1005');
2498
+ }
2499
+
2500
+ /**
2501
+ * @param pos
2502
+ */
2503
+ static N_0x2686BD9566B65EDA(pos: Vector3): void {
2504
+ inv<void>('0x2686BD9566B65EDA', f(pos.x), f(pos.y), f(pos.z));
2505
+ }
2506
+
2507
+ /**
2508
+ * Note: this native was added in build 1311.23
2509
+ *
2510
+ * @param p0
2511
+ * @returns
2512
+ */
2513
+ static N_0x9E5A47744C0F0376(p0: number): boolean {
2514
+ return inv<boolean>('0x9E5A47744C0F0376', p0, rai());
2515
+ }
2516
+
2517
+ /**
2518
+ * @param p0
2519
+ * @param p1
2520
+ * @param p2
2521
+ * @returns
2522
+ */
2523
+ static N_0xC0CFFDA87C2C163D(p0: number, p1: any, p2: number): any {
2524
+ return inv<number>('0xC0CFFDA87C2C163D', p0, p1, p2);
2525
+ }
2526
+
2527
+ /**
2528
+ * @param amount
2529
+ */
2530
+ static reserveNetworkMissionPickups(amount: number): void {
2531
+ inv<void>('0x4D40E7D749BC6E6D', amount);
2532
+ }
2533
+
2534
+ /**
2535
+ * Note: this native was added in build 1311.23
2536
+ *
2537
+ * @param p0
2538
+ */
2539
+ static N_0xD3B6EBC6C3D77D44(p0: number): void {
2540
+ inv<void>('0xD3B6EBC6C3D77D44', p0);
2541
+ }
2542
+
2543
+ /**
2544
+ * @param p1
2545
+ * @param p2
2546
+ * @param p3
2547
+ * @param p5
2548
+ * @returns p0; p4
2549
+ */
2550
+ static ugcTextureDownloadRequest(p1: any, p2: any, p3: any, p5: boolean): [number, number, number] {
2551
+ const result = inv<[number, number, number]>('0x308F96458B7087CC', pvi(), p1, p2, p3, pvi(), p5, rai());
2552
+ return [result[0], result[1], result[2]];
2553
+ }
2554
+
2555
+ /**
2556
+ * p0 appears to be for MP
2557
+ *
2558
+ * @param p0
2559
+ * @returns
2560
+ */
2561
+ static getNumReservedMissionPeds(p0: boolean): number {
2562
+ return inv<number>('0x1F13D5AE5CB17E17', p0, rai());
2563
+ }
2564
+
2565
+ /**
2566
+ * @returns
2567
+ */
2568
+ static isInSession(): boolean {
2569
+ return inv<boolean>('0xCA97246103B63917', rai());
2570
+ }
2571
+
2572
+ /**
2573
+ * Old name: _NETWORK_GET_AVERAGE_PACKET_LOSS_FOR_PLAYER
2574
+ *
2575
+ * @param player
2576
+ * @returns
2577
+ */
2578
+ static getAveragePacketLoss(player: Player): number {
2579
+ return inv<number>('0x350C23949E43686C', player.handle, raf());
2580
+ }
2581
+
2582
+ /**
2583
+ * @returns hour; minute; second
2584
+ */
2585
+ static getGlobalClock(): [boolean, number, number, number] {
2586
+ const result = inv<[boolean, number, number, number]>('0x11A7ADCD629E170F', pvi(), pvi(), pvi(), rai());
2587
+ return [!!result[0], result[1], result[2], result[3]];
2588
+ }
2589
+
2590
+ /**
2591
+ * @param player
2592
+ * @returns
2593
+ */
2594
+ static isPlayerAParticipant(player: Player): boolean {
2595
+ return inv<boolean>('0x3CA58F6CB7CBD784', player.handle, rai());
2596
+ }
2597
+
2598
+ /**
2599
+ * @returns
2600
+ */
2601
+ static getXp(): number {
2602
+ return inv<number>('0xDB438CC9BC6F4022', rai());
2603
+ }
2604
+
2605
+ /**
2606
+ * @param p0
2607
+ * @param index
2608
+ * @returns
2609
+ */
2610
+ static ugcQueryGetPlaylistName(p0: any, index: number): string | null {
2611
+ return inv<string>('0xCAF50048C8D0FBA0', p0, index, ras());
2612
+ }
2613
+
2614
+ static N_0xD39A72AE5EBD57E5(): void {
2615
+ inv<void>('0xD39A72AE5EBD57E5');
2616
+ }
2617
+
2618
+ /**
2619
+ * @param p0
2620
+ */
2621
+ static N_0xD42C543F73233041(p0: boolean): void {
2622
+ inv<void>('0xD42C543F73233041', p0);
2623
+ }
2624
+
2625
+ static N_0xE5FF65CFF5160752(): void {
2626
+ inv<void>('0xE5FF65CFF5160752');
2627
+ }
2628
+
2629
+ /**
2630
+ * @param player
2631
+ * @param reportType
2632
+ * @param description
2633
+ * @param horseName
2634
+ */
2635
+ static reportPlayer(player: Player, reportType: number, description: string | null, horseName: string | null): void {
2636
+ inv<void>('0xA197C35F73AC0F12', player.handle, reportType, description, horseName);
2637
+ }
2638
+
2639
+ /**
2640
+ * @returns p0
2641
+ */
2642
+ static getSizeOfPlayerBroadcastDataStorage(): [number, number] {
2643
+ const result = inv<[number, number]>('0x690806BC83BC8CA2', pvi(), rai());
2644
+ return [result[0], result[1]];
2645
+ }
2646
+
2647
+ /**
2648
+ * @returns
2649
+ */
2650
+ static N_0x3E4A16BC669E71B3(): boolean {
2651
+ return inv<boolean>('0x3E4A16BC669E71B3', rai());
2652
+ }
2653
+
2654
+ /**
2655
+ * @returns
2656
+ */
2657
+ static getNumParticipants(): number {
2658
+ return inv<number>('0x18D0456E86604654', rai());
2659
+ }
2660
+
2661
+ static autoSessionFinishInstance(): void {
2662
+ inv<void>('0xBB51299166B844F3');
2663
+ }
2664
+
2665
+ /**
2666
+ * @returns
2667
+ */
2668
+ static getThisScriptIsNetworkScript(): boolean {
2669
+ return inv<boolean>('0x2910669969E9535E', rai());
2670
+ }
2671
+
2672
+ /**
2673
+ * @param p0
2674
+ * @param index
2675
+ * @returns p2
2676
+ */
2677
+ static ugcQueryGetDate(p0: any, index: number): number {
2678
+ const result = inv<number>('0xE0CB4AB15CB32710', p0, index, pvi());
2679
+ return result;
2680
+ }
2681
+
2682
+ /**
2683
+ * @param amount
2684
+ */
2685
+ static reserveNetworkMissionVehicles(amount: number): void {
2686
+ inv<void>('0x76B02E21ED27A469', amount);
2687
+ }
2688
+
2689
+ /**
2690
+ * @param player1
2691
+ * @param player2
2692
+ * @returns
2693
+ */
2694
+ static N_0x862C5040F4888741(player1: Player, player2: Player): boolean {
2695
+ return inv<boolean>('0x862C5040F4888741', player1.handle, player2.handle, rai());
2696
+ }
2697
+
2698
+ /**
2699
+ * @param player
2700
+ * @param damageMultiplier
2701
+ */
2702
+ static setLocalPlayerDamageMultiplierForPlayer(player: Player, damageMultiplier: number): void {
2703
+ inv<void>('0xD041A32992A55F84', player.handle, f(damageMultiplier));
2704
+ }
2705
+
2706
+ /**
2707
+ * @param toggle
2708
+ */
2709
+ static disableLeaveRemotePedBehind(toggle: boolean): void {
2710
+ inv<void>('0xC505036A35AFD01B', toggle);
2711
+ }
2712
+
2713
+ /**
2714
+ * @param netHandle
2715
+ * @param p1
2716
+ */
2717
+ static N_0x894B5ECAB45D2342(netHandle: number, p1: any): void {
2718
+ inv<void>('0x894B5ECAB45D2342', netHandle, p1);
2719
+ }
2720
+
2721
+ /**
2722
+ * @param name
2723
+ */
2724
+ static textureDownloadReleaseByName(name: string | null): void {
2725
+ inv<void>('0x7A17B7981560FFA5', name);
2726
+ }
2727
+
2728
+ /**
2729
+ * @param ugcRequestId
2730
+ * @returns
2731
+ */
2732
+ static ugcIsRequestPending(ugcRequestId: number): any {
2733
+ return inv<number>('0xF4AC4FA844FD559A', ugcRequestId);
2734
+ }
2735
+
2736
+ /**
2737
+ * Only used in fm_race_controller R* Script (PROCESS_LOCAL_PLAYER_INIT)
2738
+ *
2739
+ * @param p0
2740
+ */
2741
+ static N_0xBC7D36946D19E60E(p0: boolean): void {
2742
+ inv<void>('0xBC7D36946D19E60E', p0);
2743
+ }
2744
+
2745
+ /**
2746
+ * @param setting
2747
+ */
2748
+ static N_0x704F92B3AF20D857(setting: boolean): void {
2749
+ inv<void>('0x704F92B3AF20D857', setting);
2750
+ }
2751
+
2752
+ /**
2753
+ * @param p0
2754
+ * @param p1
2755
+ * @returns
2756
+ */
2757
+ static ugcQueryGetPosixPublishedDate(p0: any, p1: any): number {
2758
+ return inv<number>('0x104080CA9E519B00', p0, p1, rai());
2759
+ }
2760
+
2761
+ /**
2762
+ * @returns
2763
+ */
2764
+ static getSocialMatchmakingAllowed(): any {
2765
+ return inv<number>('0xD0541EF28E9C4783');
2766
+ }
2767
+
2768
+ /**
2769
+ * @param toggle
2770
+ */
2771
+ static setSocialMatchmakingAllowed(toggle: boolean): void {
2772
+ inv<void>('0x777D0571A466B520', toggle);
2773
+ }
2774
+
2775
+ /**
2776
+ * @param p0
2777
+ * @param p1
2778
+ * @param p2
2779
+ * @returns
2780
+ */
2781
+ static N_0x77B299E8799B1332(p0: any, p1: any, p2: any): any {
2782
+ return inv<number>('0x77B299E8799B1332', p0, p1, p2);
2783
+ }
2784
+
2785
+ /**
2786
+ * @param p0
2787
+ * @returns
2788
+ */
2789
+ static N_0xE59F4924BD3A718D(p0: number): string | null {
2790
+ return inv<string>('0xE59F4924BD3A718D', p0, ras());
2791
+ }
2792
+
2793
+ /**
2794
+ * @param p0
2795
+ * @returns
2796
+ */
2797
+ static checkUserContentPrivileges(p0: number): boolean {
2798
+ return inv<boolean>('0x595F028698072DD9', p0, rai());
2799
+ }
2800
+
2801
+ /**
2802
+ * @param player
2803
+ * @returns
2804
+ */
2805
+ static getPlayerFastInstanceId(player: Player): number {
2806
+ return inv<number>('0xD9267375834C5EAB', player.handle, rai());
2807
+ }
2808
+
2809
+ /**
2810
+ * @returns hours; minutes; seconds
2811
+ */
2812
+ static getGlobalMultiplayerClock(): [number, number, number] {
2813
+ const result = inv<[number, number, number]>('0x6D03BFBD643B2A02', pvi(), pvi(), pvi());
2814
+ return [result[0], result[1], result[2]];
2815
+ }
2816
+
2817
+ /**
2818
+ * @returns
2819
+ */
2820
+ static didRecentGamerNamesRequestSucceed(): any {
2821
+ return inv<number>('0x12AEB56B489415C5');
2822
+ }
2823
+
2824
+ /**
2825
+ * @returns sessionRequestId
2826
+ */
2827
+ static sessionCancelRequest(): [any, number] {
2828
+ const result = inv<[number, number]>('0xE72E5C1289BD1F40', pvi());
2829
+ return [result[0], result[1]];
2830
+ }
2831
+
2832
+ /**
2833
+ * @param message
2834
+ * @returns gamerHandle
2835
+ */
2836
+ static N_0x5759160AC17C13CE(message: string | null): number {
2837
+ const result = inv<number>('0x5759160AC17C13CE', pvi(), message);
2838
+ return result;
2839
+ }
2840
+
2841
+ /**
2842
+ * @param id
2843
+ * @returns
2844
+ */
2845
+ static cloudHasRequestCompleted(id: number): boolean {
2846
+ return inv<boolean>('0x4C61B39930D045DA', id, rai());
2847
+ }
2848
+
2849
+ /**
2850
+ * nullsub, doesn't do anything
2851
+ */
2852
+ static N_0xACC44768AF229042(): void {
2853
+ inv<void>('0xACC44768AF229042');
2854
+ }
2855
+
2856
+ /**
2857
+ * Hardcoded to return zero. ==== PS4 specific info ==== Returns some sort of unavailable reason:
2858
+ * -1 = REASON_INVALID
2859
+ * 0 = REASON_OTHER
2860
+ * 1 = REASON_SYSTEM_UPDATE
2861
+ * 2 = REASON_GAME_UPDATE
2862
+ * 3 = REASON_SIGNED_OUT
2863
+ * 4 = REASON_AGE
2864
+ * 5 = REASON_CONNECTION =================================
2865
+ *
2866
+ * @returns
2867
+ */
2868
+ static getNpUnavailableReason(): number {
2869
+ return inv<number>('0x74FB3E29E6D10FA9', rai());
2870
+ }
2871
+
2872
+ /**
2873
+ * @param netId
2874
+ * @returns
2875
+ */
2876
+ static netToPropset(netId: number): PropSet | null {
2877
+ return createFromHandle<PropSet>('PropSet', inv<number>('0xD08066E00D26C448', netId, rai()));
2878
+ }
2879
+
2880
+ /**
2881
+ * @param paramName
2882
+ */
2883
+ static clearLaunchParam(paramName: string | null): void {
2884
+ inv<void>('0x782C94DB6469634D', paramName);
2885
+ }
2886
+
2887
+ /**
2888
+ * @param p0
2889
+ */
2890
+ static N_0x603469298A4308AF(p0: boolean): void {
2891
+ inv<void>('0x603469298A4308AF', p0);
2892
+ }
2893
+
2894
+ /**
2895
+ * @param player
2896
+ * @returns
2897
+ */
2898
+ static isAimCamActive(player: Player): any {
2899
+ return inv<number>('0x8E7CE19219669AEB', player.handle);
2900
+ }
2901
+
2902
+ /**
2903
+ * Note: scripts seem to indicate that this was renamed to NETWORK_IS_PLAYER_IN_MP_FAST_INSTANCE
2904
+ *
2905
+ * @param player
2906
+ * @returns
2907
+ */
2908
+ static isPlayerInMpCutscene(player: Player): boolean {
2909
+ return inv<boolean>('0x63F9EE203C3619F2', player.handle, rai());
2910
+ }
2911
+
2912
+ /**
2913
+ * @param time
2914
+ */
2915
+ static setLocalPlayerInvincibleTime(time: number): void {
2916
+ inv<void>('0x2D95C7E2D7E07307', time);
2917
+ }
2918
+
2919
+ /**
2920
+ * @param p0
2921
+ * @returns
2922
+ */
2923
+ static N_0x3F2EE18A3E294801(p0: number): number {
2924
+ return inv<number>('0x3F2EE18A3E294801', p0, rai());
2925
+ }
2926
+
2927
+ /**
2928
+ * @param player
2929
+ */
2930
+ static N_0x7B3FF2D193628126(player: Player): void {
2931
+ inv<void>('0x7B3FF2D193628126', player.handle);
2932
+ }
2933
+
2934
+ /**
2935
+ * @param milliseconds
2936
+ */
2937
+ static clearClockOverrideOvertime(milliseconds: number): void {
2938
+ inv<void>('0x65F040D91001ED4B', milliseconds);
2939
+ }
2940
+
2941
+ /**
2942
+ * @param player
2943
+ * @returns
2944
+ */
2945
+ static getPlayerTutorialSessionInstance(player: Player): number {
2946
+ return inv<number>('0x3B39236746714134', player.handle, rai());
2947
+ }
2948
+
2949
+ /**
2950
+ * @param amount
2951
+ * @returns
2952
+ */
2953
+ static canRegisterMissionVehicles(amount: number): boolean {
2954
+ return inv<boolean>('0x7277F1F2E085EE74', amount, rai());
2955
+ }
2956
+
2957
+ /**
2958
+ * Takes the specified time and writes it to the structure specified in the second argument. struct date_time
2959
+ * {
2960
+ * int year;
2961
+ * int PADDING1;
2962
+ * int month;
2963
+ * int PADDING2;
2964
+ * int day;
2965
+ * int PADDING3;
2966
+ * int hour;
2967
+ * int PADDING4;
2968
+ * int minute;
2969
+ * int PADDING5;
2970
+ * int second;
2971
+ * int PADDING6;
2972
+ * };
2973
+ *
2974
+ * @param posixTime
2975
+ * @returns timeStructure
2976
+ */
2977
+ static convertPosixTime(posixTime: number): number {
2978
+ const result = inv<number>('0xAC97AF97FA68E5D5', posixTime, pvi());
2979
+ return result;
2980
+ }
2981
+
2982
+ /**
2983
+ * @param ugcRequestId
2984
+ * @returns
2985
+ */
2986
+ static N_0xCD53E6CBF609C012(ugcRequestId: number): boolean {
2987
+ return inv<boolean>('0xCD53E6CBF609C012', ugcRequestId, rai());
2988
+ }
2989
+
2990
+ /**
2991
+ * @param p0
2992
+ * @param index
2993
+ * @returns
2994
+ */
2995
+ static ugcQueryGetMissionDescHash(p0: any, index: number): string | number {
2996
+ return (inv<number>('0xA6BF569956C60A60', p0, index, rai())) & 0xFFFFFFFF;
2997
+ }
2998
+
2999
+ /**
3000
+ * Note: this native was added in build 1311.23
3001
+ *
3002
+ * @param p0
3003
+ */
3004
+ static N_0x335AF56613CA0F49(p0: number): void {
3005
+ inv<void>('0x335AF56613CA0F49', p0);
3006
+ }
3007
+
3008
+ /**
3009
+ * @param p0
3010
+ * @returns
3011
+ */
3012
+ static N_0xE10F2D7715ABABEC(p0: any): any {
3013
+ return inv<number>('0xE10F2D7715ABABEC', p0);
3014
+ }
3015
+
3016
+ /**
3017
+ * Note: this native was added in build 1311.23
3018
+ */
3019
+ static N_0xFD8112109A96877C(): void {
3020
+ inv<void>('0xFD8112109A96877C');
3021
+ }
3022
+
3023
+ /**
3024
+ * Always returns 80
3025
+ *
3026
+ * @returns
3027
+ */
3028
+ static getMaxNumNetworkPickups(): number {
3029
+ return inv<number>('0xA72835064DD63E4C', rai());
3030
+ }
3031
+
3032
+ /**
3033
+ * Old name: _NETWORK_GET_AVERAGE_LATENCY_FOR_PLAYER
3034
+ *
3035
+ * @param player
3036
+ * @returns
3037
+ */
3038
+ static getAverageLatency(player: Player): number {
3039
+ return inv<number>('0xD414BE129BB81B32', player.handle, raf());
3040
+ }
3041
+
3042
+ /**
3043
+ * @param netId
3044
+ * @param toggle
3045
+ */
3046
+ static setNetworkIdExistsOnAllMachines(netId: number, toggle: boolean): void {
3047
+ inv<void>('0xE05E81A888FA63C8', netId, toggle);
3048
+ }
3049
+
3050
+ /**
3051
+ * @param completed
3052
+ * @returns
3053
+ */
3054
+ static setCompletedMpIntroFlowOnCurrentSlot(completed: boolean): any {
3055
+ return inv<number>('0x2C5BD9A43987AA27', completed);
3056
+ }
3057
+
3058
+ /**
3059
+ * Only used in R* SP Script map_app_event_handler
3060
+ *
3061
+ * @param p1
3062
+ * @returns gamerHandle
3063
+ */
3064
+ static requestPedshotTextureLocalDownload(p1: number): [string | null, number] {
3065
+ const result = inv<[string, number]>('0xCAF4CA2F87779F8F', pvi(), p1, ras());
3066
+ return [result[0], result[1]];
3067
+ }
3068
+
3069
+ /**
3070
+ * @returns
3071
+ */
3072
+ static autoSessionIsProcessingSessionSplit(): any {
3073
+ return inv<number>('0xA021095C983F20D8');
3074
+ }
3075
+
3076
+ /**
3077
+ * @returns
3078
+ */
3079
+ static N_0x1413B6BF27AB7A95(): number {
3080
+ return inv<number>('0x1413B6BF27AB7A95', rai());
3081
+ }
3082
+
3083
+ /**
3084
+ * nullsub, doesn't do anything
3085
+ *
3086
+ * @param player
3087
+ */
3088
+ static showChatRestrictionMsc(player: Player): void {
3089
+ inv<void>('0x6BFF5F84102DF80A', player.handle);
3090
+ }
3091
+
3092
+ /**
3093
+ * Returns false if pedshot push failed
3094
+ *
3095
+ * @param texture
3096
+ * @param personaPhotoType
3097
+ * @param formatIndex
3098
+ * @returns
3099
+ */
3100
+ static personaPhotoWriteScProfile(texture: string | null, personaPhotoType: number, formatIndex: number): any {
3101
+ return inv<number>('0xB72999D3120599DF', texture, personaPhotoType, formatIndex);
3102
+ }
3103
+
3104
+ static N_0x9B39B0555CC692B5(): void {
3105
+ inv<void>('0x9B39B0555CC692B5');
3106
+ }
3107
+
3108
+ /**
3109
+ * @param p0
3110
+ * @returns
3111
+ */
3112
+ static N_0xE79BA3BC265895DA(p0: number): string | null {
3113
+ return inv<string>('0xE79BA3BC265895DA', p0, ras());
3114
+ }
3115
+
3116
+ /**
3117
+ * @param netPlaylistActivity
3118
+ */
3119
+ static activitySetCurrent(netPlaylistActivity: number): void {
3120
+ inv<void>('0x9ADAC065D9F6706F', netPlaylistActivity);
3121
+ }
3122
+
3123
+ /**
3124
+ * @param queueGroup
3125
+ * @returns
3126
+ */
3127
+ static sessionIsRequestInProgressByQueueGroup(queueGroup: number): any {
3128
+ return inv<number>('0x9E762A595CF88E4A', queueGroup);
3129
+ }
3130
+
3131
+ /**
3132
+ * @returns
3133
+ */
3134
+ static pedmugshotGetStatus(): number {
3135
+ return inv<number>('0xCBAC13F065C47596', rai());
3136
+ }
3137
+
3138
+ /**
3139
+ * @returns
3140
+ */
3141
+ static getTunableCloudCrc(): number {
3142
+ return inv<number>('0x10BD227A753B0D84', rai());
3143
+ }
3144
+
3145
+ /**
3146
+ * Returns true if the passed value is less than 32.
3147
+ *
3148
+ * @param player
3149
+ * @returns
3150
+ */
3151
+ static isPlayerIndexValid(player: Player): any {
3152
+ return inv<number>('0x255A5EF65EDA9167', player.handle);
3153
+ }
3154
+
3155
+ /**
3156
+ * @param entity
3157
+ * @returns
3158
+ */
3159
+ static getEntityIsNetworked(entity: Entity): boolean {
3160
+ return inv<boolean>('0xC7827959479DCC78', entity.handle, rai());
3161
+ }
3162
+
3163
+ /**
3164
+ * Returns the network ID of the given vehicle.
3165
+ *
3166
+ * @param vehicle
3167
+ * @returns
3168
+ */
3169
+ static vehToNet(vehicle: Vehicle): number {
3170
+ return inv<number>('0xB4C94523F023419C', vehicle.handle, rai());
3171
+ }
3172
+
3173
+ /**
3174
+ * Only used in R* SP Scripts
3175
+ *
3176
+ * @param player
3177
+ * @param personaPhotoLocalCacheType
3178
+ * @returns
3179
+ */
3180
+ static requestPedshotTextureLocalBackupDownload(player: number, personaPhotoLocalCacheType: number): string | null {
3181
+ return inv<string>('0x356F9FB0698C1FEB', player, personaPhotoLocalCacheType, ras());
3182
+ }
3183
+
3184
+ /**
3185
+ * @param p0
3186
+ */
3187
+ static N_0xE5634491A58C2703(p0: number): void {
3188
+ inv<void>('0xE5634491A58C2703', f(p0));
3189
+ }
3190
+
3191
+ /**
3192
+ * @param p0
3193
+ * @param p1
3194
+ * @param p2
3195
+ * @param p3
3196
+ * @returns
3197
+ */
3198
+ static N_0x64A36BA85CE01A81(p0: any, p1: any, p2: any, p3: any): any {
3199
+ return inv<number>('0x64A36BA85CE01A81', p0, p1, p2, p3);
3200
+ }
3201
+
3202
+ /**
3203
+ * @returns sessionRequestId
3204
+ */
3205
+ static sessionIsSessionRequestIdValid(): [any, number] {
3206
+ const result = inv<[number, number]>('0x2F54B146D3EDCE4D', pvi());
3207
+ return [result[0], result[1]];
3208
+ }
3209
+
3210
+ /**
3211
+ * @returns
3212
+ */
3213
+ static isResettingPopulation(): any {
3214
+ return inv<number>('0x1BB50CD340A996E6');
3215
+ }
3216
+
3217
+ /**
3218
+ * Note: this native was added in build 1311.23
3219
+ *
3220
+ * @param p0
3221
+ * @returns
3222
+ */
3223
+ static N_0x039B692B3318FAB6(p0: boolean): number {
3224
+ return inv<number>('0x039B692B3318FAB6', p0, rai());
3225
+ }
3226
+
3227
+ /**
3228
+ * Always returns 60
3229
+ *
3230
+ * @returns
3231
+ */
3232
+ static getMaxNumNetworkObjects(): number {
3233
+ return inv<number>('0xC7BE335216B5EC7C', rai());
3234
+ }
3235
+
3236
+ /**
3237
+ * Checks if the user has ROS privilege 14.
3238
+ *
3239
+ * @returns
3240
+ */
3241
+ static ugcHasPrivilege(): any {
3242
+ return inv<number>('0x6506BFA755FB209C');
3243
+ }
3244
+
3245
+ /**
3246
+ * @param networkId
3247
+ * @param bStopCloning
3248
+ */
3249
+ static setNetworkIdStopCloning(networkId: number, bStopCloning: boolean): void {
3250
+ inv<void>('0x9ED3108D6847760A', networkId, bStopCloning);
3251
+ }
3252
+
3253
+ /**
3254
+ * Returns CGameConfig->ConfigOnlineServices->RosTitleName (see gameconfig.xml)
3255
+ *
3256
+ * @returns
3257
+ */
3258
+ static getRosTitleName(): string | null {
3259
+ return inv<string>('0xAC6153A0722F524C', ras());
3260
+ }
3261
+
3262
+ /**
3263
+ * @returns
3264
+ */
3265
+ static getScriptStatus(): number {
3266
+ return inv<number>('0x57D158647A6BFABF', rai());
3267
+ }
3268
+
3269
+ /**
3270
+ * @param p0
3271
+ * @param p1
3272
+ * @param p2
3273
+ * @param p3
3274
+ */
3275
+ static setNetworkIdVisibleInCutscene(p0: any, p1: any, p2: any, p3: any): void {
3276
+ inv<void>('0xA6928482543022B4', p0, p1, p2, p3);
3277
+ }
3278
+
3279
+ /**
3280
+ * @param amount
3281
+ */
3282
+ static reserveNetworkMissionObjects(amount: number): void {
3283
+ inv<void>('0x4E5C93BD0C32FBF8', amount);
3284
+ }
3285
+
3286
+ /**
3287
+ * @param entity
3288
+ * @param player
3289
+ * @returns p2
3290
+ */
3291
+ static N_0x75FC34A2BA345BD1(entity: Entity, player: Player): [boolean, number] {
3292
+ const result = inv<[boolean, number]>('0x75FC34A2BA345BD1', entity.handle, player.handle, pvi(), rai());
3293
+ return [!!result[0], result[1]];
3294
+ }
3295
+
3296
+ /**
3297
+ * @returns
3298
+ */
3299
+ static autoSessionIsAllowedToMerge(): any {
3300
+ return inv<number>('0xAADED99A6B268A27');
3301
+ }
3302
+
3303
+ /**
3304
+ * @param p0
3305
+ * @param p1
3306
+ * @param p2
3307
+ * @returns
3308
+ */
3309
+ static N_0x7A8E8DF782B47EB0(p0: any, p1: any, p2: any): any {
3310
+ return inv<number>('0x7A8E8DF782B47EB0', p0, p1, p2);
3311
+ }
3312
+
3313
+ /**
3314
+ * Hardcoded to return false.
3315
+ *
3316
+ * @returns
3317
+ */
3318
+ static shouldShowPromotionDlg(): any {
3319
+ return inv<number>('0xDA4B1A479C414FB2');
3320
+ }
3321
+
3322
+ /**
3323
+ * @param amount
3324
+ */
3325
+ static reserveNetworkMissionPeds(amount: number): void {
3326
+ inv<void>('0xB60FEBA45333D36F', amount);
3327
+ }
3328
+
3329
+ /**
3330
+ * @param pos
3331
+ * @param heading
3332
+ */
3333
+ static spawnConfigAddSpawnPoint(pos: Vector3, heading: number): void {
3334
+ inv<void>('0xFD1AC0B3858F224C', f(pos.x), f(pos.y), f(pos.z), f(heading));
3335
+ }
3336
+
3337
+ /**
3338
+ * @param paramName
3339
+ * @param value
3340
+ */
3341
+ static setLaunchParamValue(paramName: string | null, value: string | null): void {
3342
+ inv<void>('0x668AF6E4933AC13F', paramName, value);
3343
+ }
3344
+
3345
+ /**
3346
+ * @returns gamerHandle
3347
+ */
3348
+ static canViewGamerUserContent(): [any, number] {
3349
+ const result = inv<[number, number]>('0x246545C37C27A717', pvi());
3350
+ return [result[0], result[1]];
3351
+ }
3352
+
3353
+ /**
3354
+ * @param p0
3355
+ * @returns
3356
+ */
3357
+ static isParticipantActive(p0: number): boolean {
3358
+ return inv<boolean>('0x6FF8FF40B6357D45', p0, rai());
3359
+ }
3360
+
3361
+ /**
3362
+ * @param p0
3363
+ * @returns
3364
+ */
3365
+ static getNumCreatedMissionPeds(p0: boolean): number {
3366
+ return inv<number>('0xCB215C4B56A7FAE7', p0, rai());
3367
+ }
3368
+
3369
+ /**
3370
+ * @returns
3371
+ */
3372
+ static isInTutorialSession(): boolean {
3373
+ return inv<boolean>('0xADA24309FE08DACF', rai());
3374
+ }
3375
+
3376
+ /**
3377
+ * @param tunableContext
3378
+ * @param tunableName
3379
+ * @returns value
3380
+ */
3381
+ static accessTunableInt(tunableContext: string | number, tunableName: string | number): [boolean, number] {
3382
+ const result = inv<[boolean, number]>('0x8BE1146DFD5D4468', _h(tunableContext), _h(tunableName), pvi(), rai());
3383
+ return [!!result[0], result[1]];
3384
+ }
3385
+
3386
+ /**
3387
+ * @param tunableContext
3388
+ * @param tunableName
3389
+ * @param defaultValue
3390
+ * @returns
3391
+ */
3392
+ static tryAccessTunableIntHash(tunableContext: string | number, tunableName: string | number, defaultValue: number): number {
3393
+ return inv<number>('0xA25E006B36719774', _h(tunableContext), _h(tunableName), defaultValue, rai());
3394
+ }
3395
+
3396
+ /**
3397
+ * @param tunableContext
3398
+ * @param tunableName
3399
+ * @param defaultValue
3400
+ * @returns
3401
+ */
3402
+ static tryAccessTunableBoolHash(tunableContext: string | number, tunableName: string | number, defaultValue: boolean): boolean {
3403
+ return inv<boolean>('0xB2AD5D29A99D4B26', _h(tunableContext), _h(tunableName), defaultValue, rai());
3404
+ }
3405
+
3406
+ /**
3407
+ * @param seed
3408
+ */
3409
+ static seedRandomNumberGenerator(seed: number): void {
3410
+ inv<void>('0xF1B84178F8674195', seed);
3411
+ }
3412
+
3413
+ /**
3414
+ * @param netId
3415
+ * @returns
3416
+ */
3417
+ static isNetworkIdOwnedByParticipant(netId: number): boolean {
3418
+ return inv<boolean>('0xA1607996431332DF', netId, rai());
3419
+ }
3420
+
3421
+ /**
3422
+ * @param scriptName
3423
+ * @param p1
3424
+ * @param p2
3425
+ * @returns
3426
+ */
3427
+ static getHostOfScript(scriptName: string | null, p1: number, p2: number): Player | null {
3428
+ return createFromHandle<Player>('Player', inv<number>('0x1D6A14F1F9A736FC', scriptName, p1, p2, rai()));
3429
+ }
3430
+
3431
+ static spawnConfigSetCancelSearch(): void {
3432
+ inv<void>('0x765E60A1DCB8B1CE');
3433
+ }
3434
+
3435
+ /**
3436
+ * @param player
3437
+ * @returns
3438
+ */
3439
+ static getPlayerIndex(player: Player): number {
3440
+ return inv<number>('0x24FB80D107371267', player.handle, rai());
3441
+ }
3442
+
3443
+ /**
3444
+ * @param ugcRequestId
3445
+ * @returns
3446
+ */
3447
+ static ugcQueryGetContentNum(ugcRequestId: number): number {
3448
+ return inv<number>('0x76160E0396142765', ugcRequestId, rai());
3449
+ }
3450
+
3451
+ /**
3452
+ * @param ctx
3453
+ * @param lh
3454
+ * @param ec
3455
+ * @param h
3456
+ */
3457
+ static alert(ctx: string | number, lh: string | number, ec: number, h: number): void {
3458
+ inv<void>('0x1BAA028F52EED310', _h(ctx), _h(lh), ec, h);
3459
+ }
3460
+
3461
+ /**
3462
+ * @param contentId
3463
+ * @returns
3464
+ */
3465
+ static ugcIsBookMarked(contentId: string | null): boolean {
3466
+ return inv<boolean>('0xE42D1042F09865FE', contentId, rai());
3467
+ }
3468
+
3469
+ /**
3470
+ * @returns p0
3471
+ */
3472
+ static autoSessionCanSplitSession(): [any, number] {
3473
+ const result = inv<[number, number]>('0xE404BFF0ABA23CDC', pvi());
3474
+ return [result[0], result[1]];
3475
+ }
3476
+
3477
+ /**
3478
+ * _NETWORK_A* - _NETWORK_C*
3479
+ *
3480
+ * @param p0
3481
+ */
3482
+ static N_0x34BC1E79546BA543(p0: boolean): void {
3483
+ inv<void>('0x34BC1E79546BA543', p0);
3484
+ }
3485
+
3486
+ /**
3487
+ * @param count
3488
+ * @returns data
3489
+ */
3490
+ static getGamerSessionFromHandle(count: number): [any, number] {
3491
+ const result = inv<[number, number]>('0xFBDFE1C1356E12E8', pvi(), count);
3492
+ return [result[0], result[1]];
3493
+ }
3494
+
3495
+ /**
3496
+ * @param p0
3497
+ * @param p1
3498
+ * @param p2
3499
+ */
3500
+ static registerHostBroadcastVariables(p0: any, p1: any, p2: any): void {
3501
+ inv<void>('0x3E9B2F01C50DF595', p0, p1, p2);
3502
+ }
3503
+
3504
+ /**
3505
+ * _NETWORK_GET_A* - _NETWORK_GET_D*
3506
+ *
3507
+ * @param ped
3508
+ * @returns p1
3509
+ */
3510
+ static N_0x6CF82A7F65A5AD5F(ped: Ped): [Player | null, number] {
3511
+ const result = inv<[number, number]>('0x6CF82A7F65A5AD5F', ped.handle, pvi(), rai());
3512
+ return [createFromHandle<Player>('Player', result[0]), result[1]];
3513
+ }
3514
+
3515
+ /**
3516
+ * @param p1
3517
+ * @returns gamerHandle
3518
+ */
3519
+ static getGamerStatus(p1: number): [number, number] {
3520
+ const result = inv<[number, number]>('0xDDAEB478E58F8DEA', pvi(), p1, rai());
3521
+ return [result[0], result[1]];
3522
+ }
3523
+
3524
+ /**
3525
+ * Returns result of session request:
3526
+ * 0 - NOT_FOUND
3527
+ * 1 - IN_PROGRESS
3528
+ * 2 - TIMEOUT
3529
+ * 3 - PLAYER_OFFLINE
3530
+ * 4 - GANG_MEMBERS_CHANGED
3531
+ * 5 - PLAYER_CANCELLED
3532
+ * 6 - PLAYER_SET_TOO_LARGE
3533
+ * 7 - MATCH_ACCEPTED
3534
+ * 8 - OTHER
3535
+ *
3536
+ * @returns sessionRequestId; p1
3537
+ */
3538
+ static sessionGetSessionRequestResult(): [number, number, number] {
3539
+ const result = inv<[number, number, number]>('0x0DD051B1BF4B8BD6', pvi(), pvi(), rai());
3540
+ return [result[0], result[1], result[2]];
3541
+ }
3542
+
3543
+ static N_0xA63E4F050F20021F(): void {
3544
+ inv<void>('0xA63E4F050F20021F');
3545
+ }
3546
+
3547
+ /**
3548
+ * @param amount
3549
+ * @returns
3550
+ */
3551
+ static canRegisterMissionObjects(amount: number): boolean {
3552
+ return inv<boolean>('0x800DD4721A8B008B', amount, rai());
3553
+ }
3554
+
3555
+ /**
3556
+ * @param description
3557
+ * @returns
3558
+ */
3559
+ static ugcReleaseCachedDescription(description: string | number): boolean {
3560
+ return inv<boolean>('0x5A34CD9C3C5BEC44', _h(description), rai());
3561
+ }
3562
+
3563
+ /**
3564
+ * @param toggle
3565
+ */
3566
+ static setFriendlyFireOption(toggle: boolean): void {
3567
+ inv<void>('0xF808475FA571D823', toggle);
3568
+ }
3569
+
3570
+ /**
3571
+ * @returns sessionRequestId
3572
+ */
3573
+ static sessionTransitionToSession(): [any, number] {
3574
+ const result = inv<[number, number]>('0xF20B18A330E6DB5C', pvi());
3575
+ return [result[0], result[1]];
3576
+ }
3577
+
3578
+ /**
3579
+ * Hardcoded to return false.
3580
+ *
3581
+ * @returns
3582
+ */
3583
+ static isPromotionEnabled(): any {
3584
+ return inv<number>('0x8FF6059DA26E688A');
3585
+ }
3586
+
3587
+ /**
3588
+ * @param playersToTake
3589
+ * @param maxInstancePlayers
3590
+ * @param sessionFlags
3591
+ * @param bucketId
3592
+ * @returns
3593
+ */
3594
+ static autoSessionSplitSession(playersToTake: number, maxInstancePlayers: number, sessionFlags: number, bucketId: number): any {
3595
+ return inv<number>('0xC223D299C670413D', playersToTake, maxInstancePlayers, sessionFlags, bucketId);
3596
+ }
3597
+
3598
+ /**
3599
+ * @param p0
3600
+ * @returns
3601
+ */
3602
+ static N_0x923346025512DFB7(p0: any): any {
3603
+ return inv<number>('0x923346025512DFB7', p0);
3604
+ }
3605
+
3606
+ /**
3607
+ * @returns args
3608
+ */
3609
+ static resurrectLocalPlayer2(): number {
3610
+ const result = inv<number>('0x4154B7D8C75E5DCF', pvi());
3611
+ return result;
3612
+ }
3613
+
3614
+ /**
3615
+ * Only used in R* Script net_stable_manager
3616
+ *
3617
+ * @param threadId
3618
+ * @returns pedMax; vehicleMax; unkMax; pedMin; vehicleMin; unkMin
3619
+ */
3620
+ static getReservedMissionEntitiesForThread(threadId: number): [number, number, number, number, number, number] {
3621
+ const result = inv<[number, number, number, number, number, number]>('0x99AAC89C510DEB0D', threadId, pvi(), pvi(), pvi(), pvi(), pvi(), pvi());
3622
+ return [result[0], result[1], result[2], result[3], result[4], result[5]];
3623
+ }
3624
+
3625
+ /**
3626
+ * @param p0
3627
+ * @returns
3628
+ */
3629
+ static N_0xD7BAD4062074B9C1(p0: any): boolean {
3630
+ return inv<boolean>('0xD7BAD4062074B9C1', p0, rai());
3631
+ }
3632
+
3633
+ /**
3634
+ * @param hour
3635
+ * @param minute
3636
+ * @param second
3637
+ * @param transitionTime
3638
+ * @param pauseClock
3639
+ */
3640
+ static clockTimeOverride(hour: number, minute: number, second: number, transitionTime: number, pauseClock: boolean): void {
3641
+ inv<void>('0x669E223E64B1903C', hour, minute, second, transitionTime, pauseClock);
3642
+ }
3643
+
3644
+ /**
3645
+ * @param netId
3646
+ * @param player
3647
+ * @param toggle
3648
+ */
3649
+ static setNetworkIdAlwaysExistsForPlayer(netId: number, player: Player, toggle: boolean): void {
3650
+ inv<void>('0xA8A024587329F36A', netId, player.handle, toggle);
3651
+ }
3652
+
3653
+ /**
3654
+ * @param p0
3655
+ * @returns gamerHandle
3656
+ */
3657
+ static N_0x16EFB123C4451032(p0: number): [boolean, number] {
3658
+ const result = inv<[boolean, number]>('0x16EFB123C4451032', p0, pvi(), rai());
3659
+ return [!!result[0], result[1]];
3660
+ }
3661
+
3662
+ /**
3663
+ * Return the local Participant ID
3664
+ *
3665
+ * @returns
3666
+ */
3667
+ static participantId(): Player | null {
3668
+ return createFromHandle<Player>('Player', inv<number>('0x90986E8876CE0A83', rai()));
3669
+ }
3670
+
3671
+ static N_0x97BCE4C4B3191228(): void {
3672
+ inv<void>('0x97BCE4C4B3191228');
3673
+ }
3674
+
3675
+ /**
3676
+ * @param volume
3677
+ * @param p1
3678
+ * @param originalWeight
3679
+ * @param p3
3680
+ * @param p4
3681
+ */
3682
+ static N_0x13F592FC3BF0EA84(volume: Volume, p1: boolean, originalWeight: number, p3: any, p4: any): void {
3683
+ inv<void>('0x13F592FC3BF0EA84', volume.handle, p1, f(originalWeight), p3, p4);
3684
+ }
3685
+
3686
+ /**
3687
+ * @returns
3688
+ */
3689
+ static N_0xBF8276E51761F9DA(): number {
3690
+ return inv<number>('0xBF8276E51761F9DA', rai());
3691
+ }
3692
+
3693
+ /**
3694
+ * Note: this native was added in build 1311.23
3695
+ *
3696
+ * @returns
3697
+ */
3698
+ static N_0x316FD416C432C761(): boolean {
3699
+ return inv<boolean>('0x316FD416C432C761', rai());
3700
+ }
3701
+
3702
+ /**
3703
+ * nullsub, doesn't do anything
3704
+ *
3705
+ * @returns
3706
+ */
3707
+ static N_0xEC089F84A9C16C62(): any {
3708
+ return inv<number>('0xEC089F84A9C16C62');
3709
+ }
3710
+
3711
+ /**
3712
+ * @param netId
3713
+ * @returns
3714
+ */
3715
+ static getRopeIdFromNetworkId(netId: number): number {
3716
+ return inv<number>('0xEB1A4DD8352EC828', netId, rai());
3717
+ }
3718
+
3719
+ /**
3720
+ * @param ugcRequestId
3721
+ * @returns
3722
+ */
3723
+ static ugcDidRequestSucceed(ugcRequestId: number): any {
3724
+ return inv<number>('0x0B6009A90B8495F1', ugcRequestId);
3725
+ }
3726
+
3727
+ /**
3728
+ * @returns
3729
+ */
3730
+ static getNetworkTimeAccurate(): number {
3731
+ return inv<number>('0x89023FBBF9200E9F', rai());
3732
+ }
3733
+
3734
+ /**
3735
+ * @param p0
3736
+ * @returns
3737
+ */
3738
+ static getNumCreatedMissionVehicles(p0: boolean): number {
3739
+ return inv<number>('0x0CD9AB83489430EA', p0, rai());
3740
+ }
3741
+
3742
+ static showAccountUpgradeUi(): void {
3743
+ inv<void>('0x83FE8D7229593017');
3744
+ }
3745
+
3746
+ /**
3747
+ * Hardcoded to return false.
3748
+ *
3749
+ * @returns
3750
+ */
3751
+ static isInSessionLobby(): any {
3752
+ return inv<number>('0xC5196C42DE19F646');
3753
+ }
3754
+
3755
+ /**
3756
+ * Always returns a null string.
3757
+ *
3758
+ * @returns gamerHandle
3759
+ */
3760
+ static getGamertagFromHandle(): [string | null, number] {
3761
+ const result = inv<[string, number]>('0x426141162EBE5CDB', pvi(), ras());
3762
+ return [result[0], result[1]];
3763
+ }
3764
+
3765
+ /**
3766
+ * Returns the network ID of the given object.
3767
+ *
3768
+ * @param object
3769
+ * @returns
3770
+ */
3771
+ static objToNet(object: Prop): number {
3772
+ return inv<number>('0x99BFDC94A603E541', object.handle, rai());
3773
+ }
3774
+
3775
+ /**
3776
+ * @param p0
3777
+ * @returns
3778
+ */
3779
+ static requestJoin(p0: any): number {
3780
+ return inv<number>('0xE483BB6BE686F632', p0, rai());
3781
+ }
3782
+
3783
+ /**
3784
+ * Note: this native was added in build 1311.16
3785
+ *
3786
+ * @returns
3787
+ */
3788
+ static isObjectReassignmentInProgress(): boolean {
3789
+ return inv<boolean>('0x8FE9EB11EC9CC23A', rai());
3790
+ }
3791
+
3792
+ /**
3793
+ * @param scriptName
3794
+ * @param instanceId
3795
+ * @param position
3796
+ * @returns
3797
+ */
3798
+ static getNumScriptParticipants(scriptName: string | null, instanceId: number, position: string | number): number {
3799
+ return inv<number>('0x3658E8CD94FC121A', scriptName, instanceId, _h(position), rai());
3800
+ }
3801
+
3802
+ /**
3803
+ * @param p0
3804
+ * @returns
3805
+ */
3806
+ static N_0x6C27442A225A241A(p0: number): number {
3807
+ return inv<number>('0x6C27442A225A241A', p0, rai());
3808
+ }
3809
+
3810
+ /**
3811
+ * @param p0
3812
+ * @param p1
3813
+ */
3814
+ static spawnConfigSetTuningFloat(p0: string | number, p1: number): void {
3815
+ inv<void>('0x0608326F7B98C08D', _h(p0), f(p1));
3816
+ }
3817
+
3818
+ /**
3819
+ * @param p1
3820
+ * @returns outData
3821
+ */
3822
+ static N_0x7BCA0A3972708436(p1: number): [number, number] {
3823
+ const result = inv<[number, number]>('0x7BCA0A3972708436', pvi(), p1, rai());
3824
+ return [result[0], result[1]];
3825
+ }
3826
+
3827
+ /**
3828
+ * Hardcoded to return zero.
3829
+ *
3830
+ * @param p0
3831
+ * @param p1
3832
+ * @param p2
3833
+ * @returns
3834
+ */
3835
+ static getDisplaynamesFromHandles(p0: any, p1: any, p2: any): number {
3836
+ return inv<number>('0x58CC181719256197', p0, p1, p2, rai());
3837
+ }
3838
+
3839
+ /**
3840
+ * @returns
3841
+ */
3842
+ static isHostOfThisScript(): boolean {
3843
+ return inv<boolean>('0x83CD99A1E6061AB5', rai());
3844
+ }
3845
+
3846
+ /**
3847
+ * @param p0
3848
+ * @param index
3849
+ * @returns
3850
+ */
3851
+ static ugcQueryGetLanguage(p0: any, index: number): number {
3852
+ return inv<number>('0x97764E8AC6487A9A', p0, index, rai());
3853
+ }
3854
+
3855
+ /**
3856
+ * Note: this native was added in build 1355.30
3857
+ *
3858
+ * @param p0
3859
+ */
3860
+ static N_0x422F9D6D6C7BC290(p0: number): void {
3861
+ inv<void>('0x422F9D6D6C7BC290', p0);
3862
+ }
3863
+
3864
+ /**
3865
+ * @param propSet
3866
+ * @returns
3867
+ */
3868
+ static propsetToNet(propSet: PropSet): number {
3869
+ return inv<number>('0x74F99EF7EF503398', propSet.handle, rai());
3870
+ }
3871
+
3872
+ /**
3873
+ * @param p0
3874
+ */
3875
+ static N_0x5CD3AAD8FF9ED121(p0: any): void {
3876
+ inv<void>('0x5CD3AAD8FF9ED121', p0);
3877
+ }
3878
+
3879
+ /**
3880
+ * @param netId
3881
+ * @returns
3882
+ */
3883
+ static netToAnimScene(netId: number): AnimScene | null {
3884
+ return createFromHandle<AnimScene>('AnimScene', inv<number>('0xD7F6781A0ABAF6FB', netId, rai()));
3885
+ }
3886
+
3887
+ /**
3888
+ * @param p0
3889
+ * @param index
3890
+ * @returns
3891
+ */
3892
+ static ugcQueryGetContentHasPlayerRecord(p0: any, index: number): any {
3893
+ return inv<number>('0xF794765390A6DCA5', p0, index);
3894
+ }
3895
+
3896
+ static N_0x814729078AED6D30(): void {
3897
+ inv<void>('0x814729078AED6D30');
3898
+ }
3899
+
3900
+ /**
3901
+ * @returns
3902
+ */
3903
+ static isSignedOnline(): boolean {
3904
+ return inv<boolean>('0x1077788E268557C2', rai());
3905
+ }
3906
+
3907
+ /**
3908
+ * @returns
3909
+ */
3910
+ static isInSpectatorMode(): boolean {
3911
+ return inv<boolean>('0x048746E388762E11', rai());
3912
+ }
3913
+
3914
+ /**
3915
+ * @param featureId
3916
+ * @returns
3917
+ */
3918
+ static isFeatureSupported(featureId: number): any {
3919
+ return inv<number>('0x9C725D149622BFDE', featureId);
3920
+ }
3921
+
3922
+ /**
3923
+ * On PC this returns true if gamerHandle is a valid handle.
3924
+ *
3925
+ * @returns gamerHandle
3926
+ */
3927
+ static canAddFriend(): [any, number] {
3928
+ const result = inv<[number, number]>('0x99ABE9BF9DADA162', pvi());
3929
+ return [result[0], result[1]];
3930
+ }
3931
+
3932
+ /**
3933
+ * Note: this native was added in build 1311.23
3934
+ */
3935
+ static N_0x7673C0D2C5CDAC55(): void {
3936
+ inv<void>('0x7673C0D2C5CDAC55');
3937
+ }
3938
+
3939
+ /**
3940
+ * Always returns 110
3941
+ *
3942
+ * @returns
3943
+ */
3944
+ static getMaxNumNetworkPeds(): number {
3945
+ return inv<number>('0x0C1F7D49C39D2289', rai());
3946
+ }
3947
+
3948
+ /**
3949
+ * Returns textureDownloadId
3950
+ *
3951
+ * @param p1
3952
+ * @param name
3953
+ * @param p3
3954
+ * @returns gamerHandle
3955
+ */
3956
+ static mugshotTextureDownloadRequest(p1: number, name: string | null, p3: boolean): [number, number] {
3957
+ const result = inv<[number, number]>('0x9B5DB6CEAFAA10BB', pvi(), p1, name, p3, rai());
3958
+ return [result[0], result[1]];
3959
+ }
3960
+
3961
+ /**
3962
+ * @returns gamerHandle
3963
+ */
3964
+ static isFriend(): [boolean, number] {
3965
+ const result = inv<[boolean, number]>('0x1A24A179F9B31654', pvi(), rai());
3966
+ return [!!result[0], result[1]];
3967
+ }
3968
+
3969
+ /**
3970
+ * @returns
3971
+ */
3972
+ static isRecentGamerNamesRequestInProgress(): any {
3973
+ return inv<number>('0x4664D213A0CCAF40');
3974
+ }
3975
+
3976
+ /**
3977
+ * @param scriptHash
3978
+ * @param p1
3979
+ * @param p2
3980
+ * @param p3
3981
+ * @returns
3982
+ */
3983
+ static isScriptActiveByHash(scriptHash: string | number, p1: number, p2: boolean, p3: number): any {
3984
+ return inv<number>('0x1B89BC43B6E69107', _h(scriptHash), p1, p2, p3);
3985
+ }
3986
+
3987
+ static N_0x564552C6AF1EEAB1(): void {
3988
+ inv<void>('0x564552C6AF1EEAB1');
3989
+ }
3990
+
3991
+ /**
3992
+ * @returns
3993
+ */
3994
+ static hasPendingInviteFailure(): any {
3995
+ return inv<number>('0xD0498AD30E16B6BD');
3996
+ }
3997
+
3998
+ /**
3999
+ * @param entity
4000
+ * @returns
4001
+ */
4002
+ static requestControlOfEntity(entity: Entity): boolean {
4003
+ return inv<boolean>('0xB69317BF5E782347', entity.handle, rai());
4004
+ }
4005
+
4006
+ /**
4007
+ * @param p0
4008
+ * @returns
4009
+ */
4010
+ static N_0xD7D0DF27CB1765B5(p0: number): boolean {
4011
+ return inv<boolean>('0xD7D0DF27CB1765B5', p0, rai());
4012
+ }
4013
+
4014
+ /**
4015
+ * @returns
4016
+ */
4017
+ static canRefreshFriendPage(): any {
4018
+ return inv<number>('0x1AF5E28E64A76A9F');
4019
+ }
4020
+
4021
+ /**
4022
+ * Old name: _NETWORK_IS_PLAYER_EQUAL_TO_INDEX
4023
+ *
4024
+ * @param player
4025
+ * @param index
4026
+ * @returns
4027
+ */
4028
+ static arePlayersInSameTutorialSession(player: Player, index: number): boolean {
4029
+ return inv<boolean>('0x9DE986FC9A87C474', player.handle, index, rai());
4030
+ }
4031
+
4032
+ static clearFoundGamers(): void {
4033
+ inv<void>('0x6D14CCEE1B40381A');
4034
+ }
4035
+
4036
+ static preventScriptHostMigration(): void {
4037
+ inv<void>('0x2302C0264EA58D31');
4038
+ }
4039
+
4040
+ static N_0x49CF17A564918E8D(): void {
4041
+ inv<void>('0x49CF17A564918E8D');
4042
+ }
4043
+
4044
+ /**
4045
+ * Returns ugcRequestId
4046
+ *
4047
+ * @param categoryType
4048
+ * @param p1
4049
+ * @param maxGet
4050
+ * @param contentTypeName
4051
+ * @param p4
4052
+ * @param p5
4053
+ * @returns
4054
+ */
4055
+ static ugcQueryByCategory(categoryType: number, p1: number, maxGet: number, contentTypeName: string | null, p4: number, p5: boolean): number {
4056
+ return inv<number>('0x8C109958C9BB559D', categoryType, p1, maxGet, contentTypeName, p4, p5, rai());
4057
+ }
4058
+
4059
+ /**
4060
+ * category:
4061
+ * enum eOnCallType
4062
+ * {
4063
+ * NETWORK_SESSION_REQUEST_ON_CALL_TYPE_STORY = 2,
4064
+ * NETWORK_SESSION_REQUEST_ON_CALL_TYPE_MATCH = 3
4065
+ * };
4066
+ *
4067
+ * @param flags
4068
+ * @param category
4069
+ * @param userHash
4070
+ * @returns p2; sessionRequestId
4071
+ */
4072
+ static sessionRequestSessionOnCall(flags: number, category: number, userHash: number): [any, number, number] {
4073
+ const result = inv<[number, number, number]>('0x23D9C1F2E4098EDC', flags, category, pvi(), userHash, pvi());
4074
+ return [result[0], result[1], result[2]];
4075
+ }
4076
+
4077
+ /**
4078
+ * @param p0
4079
+ * @param p1
4080
+ * @param p2
4081
+ * @returns
4082
+ */
4083
+ static N_0xD4022C7286B0DFA2(p0: string | null, p1: number, p2: number): any {
4084
+ return inv<number>('0xD4022C7286B0DFA2', p0, p1, p2);
4085
+ }
4086
+
4087
+ static N_0xB131E686BD97B3F8(): void {
4088
+ inv<void>('0xB131E686BD97B3F8');
4089
+ }
4090
+
4091
+ /**
4092
+ * @param netId
4093
+ * @returns
4094
+ */
4095
+ static getPlayerOwnerOfNetworkId(netId: number): Player | null {
4096
+ return createFromHandle<Player>('Player', inv<number>('0xA6C0787443C9583E', netId, rai()));
4097
+ }
4098
+
4099
+ /**
4100
+ * @param toggle
4101
+ */
4102
+ static autoSessionSetAutoWarpEnabled(toggle: boolean): void {
4103
+ inv<void>('0x4440FEE3EFE78F54', toggle);
4104
+ }
4105
+
4106
+ /**
4107
+ * @returns
4108
+ */
4109
+ static autoSessionIsObjectCreationPaused(): any {
4110
+ return inv<number>('0x0E2C3AEE6CE603B7');
4111
+ }
4112
+
4113
+ /**
4114
+ * matchType:
4115
+ * enum eMatchType
4116
+ * {
4117
+ * MATCHTYPE_DEPRECATED,
4118
+ * MATCHTYPE_UGCPLAYLIST,
4119
+ * MATCHTYPE_UGCMISSION,
4120
+ * MATCHTYPE_MINIGAME,
4121
+ * MATCHTYPE_SEAMLESS,
4122
+ * MATCHTYPE_PRIVATE_DO_NOT_USE
4123
+ * };
4124
+ *
4125
+ * @param flags
4126
+ * @param matchType
4127
+ * @param userHash
4128
+ * @param p3
4129
+ * @returns sessionRequestId
4130
+ */
4131
+ static sessionRequestSessionCompetitive(flags: number, matchType: number, userHash: number, p3: number): [any, number] {
4132
+ const result = inv<[number, number]>('0x309BBEBEA8A3986C', flags, matchType, userHash, p3, pvi());
4133
+ return [result[0], result[1]];
4134
+ }
4135
+
4136
+ /**
4137
+ * @param netId
4138
+ * @returns
4139
+ */
4140
+ static requestControlOfNetworkId(netId: number): boolean {
4141
+ return inv<boolean>('0xA670B3662FAFFBD0', netId, rai());
4142
+ }
4143
+
4144
+ /**
4145
+ * @param volume
4146
+ * @param p1
4147
+ * @param p2
4148
+ * @param p3
4149
+ */
4150
+ static N_0x405DDEFB1F531B18(volume: Volume, p1: boolean, p2: any, p3: any): void {
4151
+ inv<void>('0x405DDEFB1F531B18', volume.handle, p1, p2, p3);
4152
+ }
4153
+
4154
+ /**
4155
+ * Related to container entity (RANSACK_ATTACHED_LOCKBOX / RANSACK_ATTACHED_CHEST)
4156
+ *
4157
+ * @param p0
4158
+ * @returns
4159
+ */
4160
+ static N_0x950ACD8F05B7B9DF(p0: any): any {
4161
+ return inv<number>('0x950ACD8F05B7B9DF', p0);
4162
+ }
4163
+
4164
+ /**
4165
+ * Only used in R* Script net_rolling_playlist
4166
+ */
4167
+ static sessionPlaylistGetUpcomingContent(): void {
4168
+ inv<void>('0x8F9DB6CD03B42B58');
4169
+ }
4170
+
4171
+ /**
4172
+ * @param p0
4173
+ */
4174
+ static N_0x455156F47DC6B78C(p0: boolean): void {
4175
+ inv<void>('0x455156F47DC6B78C', p0);
4176
+ }
4177
+
4178
+ /**
4179
+ * @param amount
4180
+ */
4181
+ static reserveNetworkClientMissionObjects(amount: number): void {
4182
+ inv<void>('0xE7DDA8BD3BCF751C', amount);
4183
+ }
4184
+
4185
+ /**
4186
+ * @returns
4187
+ */
4188
+ static commerceStoreIsOpen(): boolean {
4189
+ return inv<boolean>('0xCE5E79D9E303628E', rai());
4190
+ }
4191
+
4192
+ /**
4193
+ * @param flags
4194
+ * @returns
4195
+ */
4196
+ static sessionRemovePlayerFlags(flags: number): any {
4197
+ return inv<number>('0x3215BBE34D3418C5', flags);
4198
+ }
4199
+
4200
+ /**
4201
+ * @returns
4202
+ */
4203
+ static getTimeoutTime(): number {
4204
+ return inv<number>('0x5ED0356A0CE3A34F', rai());
4205
+ }
4206
+
4207
+ /**
4208
+ * @param p0
4209
+ */
4210
+ static setLocalPlayerInvisibleLocally(p0: boolean): void {
4211
+ inv<void>('0xE5F773C1A1D9D168', p0);
4212
+ }
4213
+
4214
+ /**
4215
+ * @param threadId
4216
+ * @returns
4217
+ */
4218
+ static isThreadActive(threadId: number): any {
4219
+ return inv<number>('0x31DAD2CD6D49546E', threadId);
4220
+ }
4221
+
4222
+ /**
4223
+ * Returns false if pedshot push failed
4224
+ *
4225
+ * @param texture
4226
+ * @param playerSlot
4227
+ * @param p2
4228
+ * @param personaPhotoLocalCacheType
4229
+ * @returns
4230
+ */
4231
+ static personaPhotoWriteLocal(texture: string | null, playerSlot: number, p2: number, personaPhotoLocalCacheType: number): any {
4232
+ return inv<number>('0x2A48D9567940598F', texture, playerSlot, p2, personaPhotoLocalCacheType);
4233
+ }
4234
+
4235
+ /**
4236
+ * @param index
4237
+ * @returns
4238
+ */
4239
+ static getParticipantIndex(index: number): number {
4240
+ return inv<number>('0x1B84DF6AF2A46938', index, rai());
4241
+ }
4242
+
4243
+ /**
4244
+ * @param p0
4245
+ */
4246
+ static N_0xD637D327080CD86E(p0: number): void {
4247
+ inv<void>('0xD637D327080CD86E', p0);
4248
+ }
4249
+
4250
+ /**
4251
+ * @returns
4252
+ */
4253
+ static sessionIsAnyRequestInProgress(): any {
4254
+ return inv<number>('0xBAFFDE5F953720D9');
4255
+ }
4256
+
4257
+ /**
4258
+ * @param p0
4259
+ * @param p1
4260
+ * @param p2
4261
+ * @param p3
4262
+ * @param p4
4263
+ * @param p5
4264
+ * @returns
4265
+ */
4266
+ static isSphereVisibleToPlayer(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any): boolean {
4267
+ return inv<boolean>('0xDC3A310219E5DA62', p0, p1, p2, p3, p4, p5, rai());
4268
+ }
4269
+
4270
+ /**
4271
+ * gets the entity id of a network id
4272
+ *
4273
+ * @param netHandle
4274
+ * @returns
4275
+ */
4276
+ static netToEnt(netHandle: number): Entity | null {
4277
+ return createFromHandle<Entity>('Entity', inv<number>('0xBFFEAB45A9A9094A', netHandle, rai()));
4278
+ }
4279
+
4280
+ /**
4281
+ * Note: this native was added in build 1311.23
4282
+ *
4283
+ * @returns
4284
+ */
4285
+ static N_0x062842D61D0D53FD(): boolean {
4286
+ return inv<boolean>('0x062842D61D0D53FD', rai());
4287
+ }
4288
+
4289
+ /**
4290
+ * @param p0
4291
+ */
4292
+ static N_0xFF36F36B07E69059(p0: any): void {
4293
+ inv<void>('0xFF36F36B07E69059', p0);
4294
+ }
4295
+
4296
+ /**
4297
+ * @param flags
4298
+ * @returns
4299
+ */
4300
+ static sessionSetPlayerFlags(flags: number): any {
4301
+ return inv<number>('0x0AE241A4A9ADEEEC', flags);
4302
+ }
4303
+
4304
+ /**
4305
+ * @param contentId
4306
+ * @param dataSize
4307
+ * @param p4
4308
+ * @param flags
4309
+ * @returns gamerHandle; data
4310
+ */
4311
+ static sendSessionInvite(contentId: string | null, dataSize: number, p4: number, flags: number): [any, number, number] {
4312
+ const result = inv<[number, number, number]>('0xE47001B7CB8B98AE', pvi(), contentId, pvi(), dataSize, p4, flags);
4313
+ return [result[0], result[1], result[2]];
4314
+ }
4315
+
4316
+ static N_0x61BFBAA795E712AD(): void {
4317
+ inv<void>('0x61BFBAA795E712AD');
4318
+ }
4319
+
4320
+ /**
4321
+ * @param playerSlot
4322
+ * @param personaPhotoLocalCacheType
4323
+ * @returns
4324
+ */
4325
+ static localPlayerPedshotTextureDownloadRequest(playerSlot: number, personaPhotoLocalCacheType: number): number {
4326
+ return inv<number>('0x6E2FD8CF7EB10E53', playerSlot, personaPhotoLocalCacheType, rai());
4327
+ }
4328
+
4329
+ static clearClockTimeOverride(): void {
4330
+ inv<void>('0xD972DF67326F966E');
4331
+ }
4332
+
4333
+ static N_0xC8B6D18E22484643(): void {
4334
+ inv<void>('0xC8B6D18E22484643');
4335
+ }
4336
+
4337
+ /**
4338
+ * @param p0
4339
+ * @param p1
4340
+ */
4341
+ static N_0xDC6AD5C046F33AB4(p0: boolean, p1: boolean): void {
4342
+ inv<void>('0xDC6AD5C046F33AB4', p0, p1);
4343
+ }
4344
+
4345
+ /**
4346
+ * @param entity
4347
+ * @returns
4348
+ */
4349
+ static hasControlOfEntity(entity: Entity): boolean {
4350
+ return inv<boolean>('0x01BF60A500E28887', entity.handle, rai());
4351
+ }
4352
+
4353
+ /**
4354
+ * @param player
4355
+ * @returns
4356
+ */
4357
+ static getUniqueIntForPlayer(player: Player): number {
4358
+ return inv<number>('0x07F723401B9D921C', player.handle, rai());
4359
+ }
4360
+
4361
+ /**
4362
+ * @param tunableContext
4363
+ * @param tunableName
4364
+ * @returns
4365
+ */
4366
+ static accessTunableBool(tunableContext: string | number, tunableName: string | number): boolean {
4367
+ return inv<boolean>('0xAA6A47A573ABB75A', _h(tunableContext), _h(tunableName), rai());
4368
+ }
4369
+
4370
+ /**
4371
+ * @returns gamerHandle
4372
+ */
4373
+ static removeFriend(): [any, number] {
4374
+ const result = inv<[number, number]>('0x55F618F68AB854D3', pvi());
4375
+ return [result[0], result[1]];
4376
+ }
4377
+
4378
+ static N_0x6C7E04E9DE451789(): void {
4379
+ inv<void>('0x6C7E04E9DE451789');
4380
+ }
4381
+
4382
+ /**
4383
+ * @returns
4384
+ */
4385
+ static N_0x0B6B4507AC5EA8B8(): boolean {
4386
+ return inv<boolean>('0x0B6B4507AC5EA8B8', rai());
4387
+ }
4388
+
4389
+ /**
4390
+ * @param netID
4391
+ * @param toggle
4392
+ */
4393
+ static activateDamageTrackerOnNetworkId(netID: number, toggle: boolean): void {
4394
+ inv<void>('0xD45B1FFCCD52FF19', netID, toggle);
4395
+ }
4396
+
4397
+ /**
4398
+ * *NETWORK_SPAWN_CONFIG**
4399
+ */
4400
+ static N_0x6CEE2E30021DAEC6(): void {
4401
+ inv<void>('0x6CEE2E30021DAEC6');
4402
+ }
4403
+
4404
+ static N_0x5B9C6AC118FD4774(): void {
4405
+ inv<void>('0x5B9C6AC118FD4774');
4406
+ }
4407
+
4408
+ /**
4409
+ * @param player
4410
+ * @param trackedPlayer
4411
+ * @returns
4412
+ */
4413
+ static isTrackedPlayerVisible(player: Player, trackedPlayer: Player): any {
4414
+ return inv<number>('0xE525878A35B9EEBD', player.handle, trackedPlayer.handle);
4415
+ }
4416
+
4417
+ static activityResetToIdle(): void {
4418
+ inv<void>('0x3FE141FDB990E3D1');
4419
+ }
4420
+
4421
+ /**
4422
+ * @param p0
4423
+ * @returns
4424
+ */
4425
+ static hasControlOfPickupPlacement(p0: any): boolean {
4426
+ return inv<boolean>('0x51EABCF2786515AB', p0, rai());
4427
+ }
4428
+
4429
+ /**
4430
+ * Converts the specified entity into a local entity, removing it from the networked pool. This will only work if you're the owner of the entity.
4431
+ *
4432
+ * @param entity The entity to un-network
4433
+ */
4434
+ static unregisterNetworkedEntity(entity: Entity): void {
4435
+ inv<void>('0xE31A04513237DC89', entity.handle);
4436
+ }
4437
+
4438
+ /**
4439
+ * Hardcoded to return zero.
4440
+ *
4441
+ * @returns
4442
+ */
4443
+ static N_0x5133CF81924F1129(): number {
4444
+ return inv<number>('0x5133CF81924F1129', rai());
4445
+ }
4446
+
4447
+ /**
4448
+ * Returns the Player associated to a given Ped when in an online session.
4449
+ *
4450
+ * @param ped
4451
+ * @returns
4452
+ */
4453
+ static getPlayerIndexFromPed(ped: Ped): Player | null {
4454
+ return createFromHandle<Player>('Player', inv<number>('0x6C0E2E0125610278', ped.handle, rai()));
4455
+ }
4456
+
4457
+ /**
4458
+ * @param netID
4459
+ * @returns
4460
+ */
4461
+ static doesNetworkIdExist(netID: number): boolean {
4462
+ return inv<boolean>('0x38CE16C96BD11344', netID, rai());
4463
+ }
4464
+
4465
+ /**
4466
+ * @param local
4467
+ * @param remote
4468
+ * @param instanceId
4469
+ */
4470
+ static setLocalPlayerVisibleInCutscene(local: boolean, remote: boolean, instanceId: number): void {
4471
+ inv<void>('0xD1065D68947E7B6E', local, remote, instanceId);
4472
+ }
4473
+
4474
+ /**
4475
+ * Params: p5 = 50.f, p6 = 0 in R* Script net_fetch (NET_FETCH_CLIENT_UPDATE_PED_ROLE_CLUE_IDLE)
4476
+ *
4477
+ * @param pos
4478
+ * @param p5
4479
+ * @param p6
4480
+ * @returns p0; p1
4481
+ */
4482
+ static N_0x880A7202301E282B(pos: Vector3, p5: number, p6: any): [boolean, number, number] {
4483
+ const result = inv<[boolean, number, number]>('0x880A7202301E282B', pvi(), pvi(), f(pos.x), f(pos.y), f(pos.z), f(p5), p6, rai());
4484
+ return [!!result[0], result[1], result[2]];
4485
+ }
4486
+
4487
+ /**
4488
+ * Note: this native was added in build 1491.50
4489
+ *
4490
+ * @param p0
4491
+ * @returns
4492
+ */
4493
+ static N_0xDBDF80673BBA3D65(p0: number): boolean {
4494
+ return inv<boolean>('0xDBDF80673BBA3D65', p0, rai());
4495
+ }
4496
+
4497
+ /**
4498
+ * @param p0
4499
+ */
4500
+ static N_0x9F24A34863FD35DA(p0: any): void {
4501
+ inv<void>('0x9F24A34863FD35DA', p0);
4502
+ }
4503
+
4504
+ static clearPlatformInvite(): void {
4505
+ inv<void>('0xA4484173759749B1');
4506
+ }
4507
+
4508
+ /**
4509
+ * @param toggle
4510
+ * @param p2
4511
+ * @returns p1
4512
+ */
4513
+ static autoSessionSetAllowedToMerge(toggle: boolean, p2: number): number {
4514
+ const result = inv<number>('0x63246A24F5747510', toggle, pvi(), p2);
4515
+ return result;
4516
+ }
4517
+
4518
+ /**
4519
+ * @returns
4520
+ */
4521
+ static getTotalNumPlayers(): number {
4522
+ return inv<number>('0xCF61D4B4702EE9EB', rai());
4523
+ }
4524
+
4525
+ /**
4526
+ * Note: this native was added in build 1311.23
4527
+ *
4528
+ * @param p0
4529
+ * @returns
4530
+ */
4531
+ static N_0x744BFBB0CA908161(p0: boolean): number {
4532
+ return inv<number>('0x744BFBB0CA908161', p0, rai());
4533
+ }
4534
+
4535
+ /**
4536
+ * @param player
4537
+ * @returns
4538
+ */
4539
+ static isPlayerActive(player: Player): boolean {
4540
+ return inv<boolean>('0xB8DFD30D6973E135', player.handle, rai());
4541
+ }
4542
+
4543
+ /**
4544
+ * @returns
4545
+ */
4546
+ static getPlatformInviteId(): number {
4547
+ return inv<number>('0x9BCF28FB5D65A9BE', rai());
4548
+ }
4549
+
4550
+ /**
4551
+ * @param p0
4552
+ * @param index
4553
+ * @returns
4554
+ */
4555
+ static ugcQueryGetOwnerId(p0: any, index: number): string | null {
4556
+ return inv<string>('0xF9F0B3028431967B', p0, index, ras());
4557
+ }
4558
+
4559
+ /**
4560
+ * @param tunableContext
4561
+ * @param tunableName
4562
+ * @param defaultValue
4563
+ * @returns
4564
+ */
4565
+ static tryAccessTunableFloatHash(tunableContext: string | number, tunableName: string | number, defaultValue: number): number {
4566
+ return inv<number>('0xA18393089C05E49C', _h(tunableContext), _h(tunableName), f(defaultValue), raf());
4567
+ }
4568
+
4569
+ /**
4570
+ * @returns
4571
+ */
4572
+ static hasNetworkTimeStarted(): boolean {
4573
+ return inv<boolean>('0x46718ACEEDEAFC84', rai());
4574
+ }
4575
+
4576
+ /**
4577
+ * Hardcoded to return false.
4578
+ *
4579
+ * @returns
4580
+ */
4581
+ static isInPlatformParty(): boolean {
4582
+ return inv<boolean>('0x2FC5650B0271CB57', rai());
4583
+ }
4584
+
4585
+ /**
4586
+ * Return the local Participant ID. This native is exactly the same as 'PARTICIPANT_ID' native.
4587
+ *
4588
+ * @returns
4589
+ */
4590
+ static participantIdToInt(): number {
4591
+ return inv<number>('0x57A3BDDAD8E5AA0A', rai());
4592
+ }
4593
+
4594
+ /**
4595
+ * @param toggle
4596
+ * @param pos
4597
+ */
4598
+ static setInStaticSpectatorMode(toggle: boolean, pos: Vector3): void {
4599
+ inv<void>('0xFBF1ECFB39A77B5F', toggle, f(pos.x), f(pos.y), f(pos.z));
4600
+ }
4601
+
4602
+ /**
4603
+ * @param p0
4604
+ * @returns
4605
+ */
4606
+ static requestControlOfPickupPlacement(p0: any): boolean {
4607
+ return inv<boolean>('0x56ED2C48558DAB78', p0, rai());
4608
+ }
4609
+
4610
+ /**
4611
+ * @param entity
4612
+ */
4613
+ static registerEntityAsNetworked(entity: Entity): void {
4614
+ inv<void>('0x06FAACD625D80CAA', entity.handle);
4615
+ }
4616
+
4617
+ /**
4618
+ * Session flag 'SF_PRIVATE' is set internally
4619
+ * p1 represents max amount of players in private session
4620
+ *
4621
+ * @param flags
4622
+ * @param numPlayers
4623
+ * @param userHash
4624
+ * @returns sessionRequestId
4625
+ */
4626
+ static sessionRequestSessionPrivate(flags: number, numPlayers: number, userHash: number): [any, number] {
4627
+ const result = inv<[number, number]>('0x39A8EF7AF29A192C', flags, numPlayers, userHash, pvi());
4628
+ return [result[0], result[1]];
4629
+ }
4630
+
4631
+ /**
4632
+ * @param textureDownloadId
4633
+ */
4634
+ static textureDownloadRelease(textureDownloadId: number): void {
4635
+ inv<void>('0x487EB90B98E9FB19', textureDownloadId);
4636
+ }
4637
+
4638
+ /**
4639
+ * Only used in R* Script net_rolling_playlist
4640
+ */
4641
+ static sessionPlaylistGoToNextContent(): void {
4642
+ inv<void>('0xBDE605F925B07127');
4643
+ }
4644
+
4645
+ /**
4646
+ * Note: this native was added in build 1311.23
4647
+ *
4648
+ * @returns sessionId
4649
+ */
4650
+ static sessionGetSessionId(): number {
4651
+ const result = inv<number>('0xE9B356C330C0A806', pvi());
4652
+ return result;
4653
+ }
4654
+
4655
+ /**
4656
+ * @returns
4657
+ */
4658
+ static autoSessionSplitSessionSuccessful(): any {
4659
+ return inv<number>('0x6D87BA8EF15226CD');
4660
+ }
4661
+
4662
+ /**
4663
+ * @param ugcRequestId
4664
+ * @returns
4665
+ */
4666
+ static ugcHasRequestFinished(ugcRequestId: number): any {
4667
+ return inv<number>('0xA9EB4D606076615D', ugcRequestId);
4668
+ }
4669
+
4670
+ /**
4671
+ * @returns sessionRequestId
4672
+ */
4673
+ static sessionIsRequestInProgress(): [any, number] {
4674
+ const result = inv<[number, number]>('0x8FB7C254CFCBF78E', pvi());
4675
+ return [result[0], result[1]];
4676
+ }
4677
+
4678
+ /**
4679
+ * Adds the first argument to the second.
4680
+ *
4681
+ * @param timeA
4682
+ * @param timeB
4683
+ * @returns
4684
+ */
4685
+ static getTimeOffset(timeA: number, timeB: number): number {
4686
+ return inv<number>('0x017008CCDAD48503', timeA, timeB, rai());
4687
+ }
4688
+
4689
+ /**
4690
+ * @param p0
4691
+ * @returns
4692
+ */
4693
+ static N_0xC028B3F52C707C49(p0: any): boolean {
4694
+ return inv<boolean>('0xC028B3F52C707C49', p0, rai());
4695
+ }
4696
+
4697
+ /**
4698
+ * nullsub, doesn't do anything
4699
+ *
4700
+ * @returns
4701
+ */
4702
+ static N_0xC964FCD3D1720697(): any {
4703
+ return inv<number>('0xC964FCD3D1720697');
4704
+ }
4705
+
4706
+ /**
4707
+ * @param p0
4708
+ * @param p1
4709
+ * @returns
4710
+ */
4711
+ static ugcQueryGetPublished(p0: any, p1: any): any {
4712
+ return inv<number>('0x9993F1E11944A3DD', p0, p1);
4713
+ }
4714
+
4715
+ /**
4716
+ * Hardcoded to return false.
4717
+ *
4718
+ * @returns gamerHandle
4719
+ */
4720
+ static isPendingFriend(): [any, number] {
4721
+ const result = inv<[number, number]>('0x0BE73DA6984A6E33', pvi());
4722
+ return [result[0], result[1]];
4723
+ }
4724
+
4725
+ /**
4726
+ * Note: this native was added in build 1311.23
4727
+ *
4728
+ * @param p0
4729
+ */
4730
+ static N_0xA7670F7991099680(p0: number): void {
4731
+ inv<void>('0xA7670F7991099680', p0);
4732
+ }
4733
+
4734
+ /**
4735
+ * @param instanceId
4736
+ */
4737
+ static setLocalPlayerPendingFastInstanceId(instanceId: number): void {
4738
+ inv<void>('0x007FF852DCF49DA4', instanceId);
4739
+ }
4740
+
4741
+ /**
4742
+ * @param p0
4743
+ */
4744
+ static N_0xF342F6BD0A8287D5(p0: any): void {
4745
+ inv<void>('0xF342F6BD0A8287D5', p0);
4746
+ }
4747
+
4748
+ /**
4749
+ * @returns
4750
+ */
4751
+ static isFindingGamers(): boolean {
4752
+ return inv<boolean>('0xDDDF64C91BFCF0AA', rai());
4753
+ }
4754
+
4755
+ /**
4756
+ * Returns textureDownloadId
4757
+ *
4758
+ * @param filePath
4759
+ * @param name
4760
+ * @param p3
4761
+ * @returns gamerHandle
4762
+ */
4763
+ static textureDownloadRequest(filePath: string | null, name: string | null, p3: boolean): [number, number] {
4764
+ const result = inv<[number, number]>('0x16160DA74A8E74A2', pvi(), filePath, name, p3, rai());
4765
+ return [result[0], result[1]];
4766
+ }
4767
+
4768
+ /**
4769
+ * @returns gamerHandle
4770
+ */
4771
+ static isFriendHandleOnline(): [boolean, number] {
4772
+ const result = inv<[boolean, number]>('0xE348D1404BD80146', pvi(), rai());
4773
+ return [!!result[0], result[1]];
4774
+ }
4775
+
4776
+ /**
4777
+ * @param netId
4778
+ * @returns weaponHash: Refer to [enum: eWeaponHash]
4779
+ */
4780
+ static getDestroyerOfNetworkId(netId: number): [number, number] {
4781
+ const result = inv<[number, number]>('0x7A1ADEEF01740A24', netId, pvi(), rai());
4782
+ return [result[0], result[1]];
4783
+ }
4784
+
4785
+ /**
4786
+ * Returns value of fwuiCachedSetting "general.onlineNotificationsInStoryMode"
4787
+ *
4788
+ * @returns
4789
+ */
4790
+ static areOnlineNotificationsShownInStoryMode(): boolean {
4791
+ return inv<boolean>('0xF5C5929E07512F80', rai());
4792
+ }
4793
+
4794
+ /**
4795
+ * Subtracts the second argument from the first.
4796
+ *
4797
+ * @param timeA
4798
+ * @param timeB
4799
+ * @returns
4800
+ */
4801
+ static getTimeDifference(timeA: number, timeB: number): number {
4802
+ return inv<number>('0xA2C6FC031D46FFF0', timeA, timeB, rai());
4803
+ }
4804
+
4805
+ /**
4806
+ * @param p0
4807
+ * @returns
4808
+ */
4809
+ static N_0xD1FFB246F4E088AC(p0: number): boolean {
4810
+ return inv<boolean>('0xD1FFB246F4E088AC', p0, rai());
4811
+ }
4812
+
4813
+ }