@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,1652 @@
1
+ import { Entity } from './Entity';
2
+ import { registerHandle, createFromHandle } from '../types/HandleRegistry';
3
+ import { inv, rai, raf, pvi, _h, f } from '../types/NativeAliases';
4
+ import { VehicleTask } from './VehicleTask';
5
+ export class Vehicle extends Entity {
6
+ static fromHandle(handle) {
7
+ return handle === 0 ? null : new Vehicle(handle);
8
+ }
9
+ /**
10
+ * *SET_INSTANTLY** - _SET_MISSION_TRAIN*
11
+ *
12
+ * @param p1
13
+ */
14
+ N_0x6DE072AC8A95FFC1(p1) {
15
+ inv('0x6DE072AC8A95FFC1', this.handle, p1);
16
+ }
17
+ /**
18
+ * 1000 is max health
19
+ * Begins leaking gas at around 650 health
20
+ * -999.90002441406 appears to be minimum health, although nothing special occurs <- false statement Minimum: -4000
21
+ * Maximum: 1000 -4000: Engine is destroyed
22
+ * 0 and below: Engine catches fire and health rapidly declines
23
+ * 300: Engine is smoking and losing functionality
24
+ * 1000: Engine is perfect
25
+ *
26
+ * @param health
27
+ */
28
+ setEngineHealth(health) {
29
+ inv('0x8BDC5B998B4654EF', this.handle, f(health));
30
+ }
31
+ /**
32
+ * Apply damage to vehicle at a location. Location is relative to vehicle model (not world). Radius of effect damage applied in a sphere at impact location
33
+ *
34
+ * @param offset
35
+ * @param damage
36
+ * @param radius
37
+ * @param p6
38
+ */
39
+ setDamage(offset, damage, radius, p6) {
40
+ inv('0x1D7678F81452BB41', this.handle, f(offset.x), f(offset.y), f(offset.z), f(damage), f(radius), p6);
41
+ }
42
+ /**
43
+ * @param p1
44
+ */
45
+ setBrokenPartsDontAffectAiHandling(p1) {
46
+ inv('0xCEC4CA2CAB8FA98C', this.handle, p1);
47
+ }
48
+ showHorseReins() {
49
+ inv('0x41CDA90EE3450921', this.handle);
50
+ }
51
+ /**
52
+ * @param toggle
53
+ */
54
+ setDisablePetrolTankFires(toggle) {
55
+ inv('0xB70986AB19B04AFF', this.handle, toggle);
56
+ }
57
+ /**
58
+ * whistleSequence: ACKNOWLEDGE, BACKING_UP, CROSSING, DANGER, MOVING, NEXT_STATION, PASSING, STOPPED
59
+ * p2 = true seems to mute the sound
60
+ *
61
+ * @param whistleSequence
62
+ * @param p2
63
+ * @param p3
64
+ */
65
+ triggerTrainWhistle(whistleSequence, p2, p3) {
66
+ inv('0xCFE122EC635CC2B2', this.handle, whistleSequence, p2, p3);
67
+ }
68
+ /**
69
+ * @param toggle
70
+ */
71
+ setDoorsLockedForAllPlayers(toggle) {
72
+ inv('0x2381977DA948F8DC', this.handle, toggle);
73
+ }
74
+ /**
75
+ * @param p1
76
+ */
77
+ setMayBeUsedByGotoPointAnyMeans(p1) {
78
+ inv('0x7549B9E841940695', this.handle, p1);
79
+ }
80
+ /**
81
+ * Seems related to vehicle health, like the one in IV.
82
+ * Max 1000, min 0.
83
+ * Vehicle does not necessarily explode or become undrivable at 0.
84
+ *
85
+ * @returns
86
+ */
87
+ getBodyHealth() {
88
+ return inv('0x42113B857E33C16E', this.handle, raf());
89
+ }
90
+ /**
91
+ * @returns
92
+ */
93
+ isTrainWaitingAtStation() {
94
+ return inv('0xE887BD31D97793F6', this.handle);
95
+ }
96
+ /**
97
+ * @returns
98
+ */
99
+ getEstimatedMaxSpeed() {
100
+ return inv('0xFE52F34491529F0B', this.handle, raf());
101
+ }
102
+ /**
103
+ * @param toggle
104
+ */
105
+ setWheelsCanBreakOffWhenBlowUp(toggle) {
106
+ inv('0xC462C79379ABBCB1', this.handle, toggle);
107
+ }
108
+ /**
109
+ * windowIndex:
110
+ * 0 = Front Right Window
111
+ * 1 = Front Left Window
112
+ * 2 = Back Right Window
113
+ * 3 = Back Left Window
114
+ *
115
+ * @param windowIndex
116
+ */
117
+ removeWindow(windowIndex) {
118
+ inv('0x745F15A215F2DDF1', this.handle, windowIndex);
119
+ }
120
+ /**
121
+ * Returns train car, use GET_TRAIN_CARRIAGE when trailerNumber is bigger than 0
122
+ *
123
+ * @returns
124
+ */
125
+ getTrainCar() {
126
+ return createFromHandle('Entity', inv('0x671A07C9A1CD50A5', this.handle, rai()));
127
+ }
128
+ /**
129
+ * @param enabled
130
+ */
131
+ setWheelsCanBreak(enabled) {
132
+ inv('0x839137C40275FB77', this.handle, enabled);
133
+ }
134
+ /**
135
+ * Requires a visibility tracker on the vehicle (TRACK_VEHICLE_VISIBILITY)
136
+ *
137
+ * @returns
138
+ */
139
+ isVisible() {
140
+ return inv('0x424910CD5DE8C246', this.handle, rai());
141
+ }
142
+ /**
143
+ * @param toggle
144
+ */
145
+ setBoatAnchor(toggle) {
146
+ inv('0xAEAB044F05B92659', this.handle, toggle);
147
+ }
148
+ /**
149
+ * @returns
150
+ */
151
+ getTint() {
152
+ return inv('0xA44D65E6C624526F', this.handle, rai());
153
+ }
154
+ /**
155
+ * @param toggle
156
+ */
157
+ setInactiveDuringPlayback(toggle) {
158
+ inv('0x4EA71B4C9DB3C3F1', this.handle, toggle);
159
+ }
160
+ /**
161
+ * @param doorId Refer to [enum: eDoorId]
162
+ * @param closeInstantly
163
+ */
164
+ setDoorShut(doorId, closeInstantly) {
165
+ inv('0x6A3C24B91FD0EA09', this.handle, doorId, closeInstantly);
166
+ }
167
+ /**
168
+ * Makes the vehicle accept no passengers.
169
+ *
170
+ * @param toggle
171
+ */
172
+ setAllowNoPassengersLockon(toggle) {
173
+ inv('0xECB9E9BC887E8060', this.handle, toggle);
174
+ }
175
+ /**
176
+ * @param index
177
+ * @returns
178
+ */
179
+ getBreakableLockObject(index) {
180
+ return createFromHandle('Prop', inv('0x58F2244C1286D09A', this.handle, index, rai()));
181
+ }
182
+ /**
183
+ * @returns
184
+ */
185
+ isOnFire() {
186
+ return inv('0x0E3BF7ED4169EC43', this.handle);
187
+ }
188
+ /**
189
+ * Used in Script Function MC_LOCAL_SETUP_VEH - enabling transitions
190
+ *
191
+ * @param p1
192
+ */
193
+ N_0xC325A6BAA62CF8A2(p1) {
194
+ inv('0xC325A6BAA62CF8A2', this.handle, p1);
195
+ }
196
+ /**
197
+ * flags = 0: DEFAULT; 1: KEEP_OLD_SPEED
198
+ *
199
+ * @param flags
200
+ */
201
+ setMissionTrainAsNoLongerNeeded(flags) {
202
+ inv('0xBBE7648349B49BE8', this.handle, flags);
203
+ }
204
+ /**
205
+ * @param p1
206
+ * @param p2
207
+ * @returns
208
+ */
209
+ isDriveable(p1, p2) {
210
+ return inv('0xB86D29B10F627379', this.handle, p1, p2, rai());
211
+ }
212
+ /**
213
+ * Returns handles of boat paddles entities.
214
+ *
215
+ * @returns left; right
216
+ */
217
+ getRowingOars() {
218
+ const result = inv('0xA6E210FB4283B767', this.handle, pvi(), pvi());
219
+ return [createFromHandle('Entity', result[0]), createFromHandle('Entity', result[1])];
220
+ }
221
+ /**
222
+ * Starts or stops the engine on the specified vehicle. vehicle: The vehicle to start or stop the engine on.
223
+ * value: true to turn the vehicle on; false to turn it off.
224
+ * instantly: if true, the vehicle will be set to the state immediately; otherwise, the current driver will physically turn on or off the engine.
225
+ *
226
+ * @param value
227
+ * @param instantly
228
+ */
229
+ setEngineOn(value, instantly) {
230
+ inv('0xB64CFA14CB9A2E78', this.handle, value, instantly);
231
+ }
232
+ /**
233
+ * *SET_TRAIN**
234
+ *
235
+ * @param p1
236
+ */
237
+ N_0x06A09A6E0C6D2A84(p1) {
238
+ inv('0x06A09A6E0C6D2A84', this.handle, p1);
239
+ }
240
+ /**
241
+ * Forcing high LOD buoyancy for vehicle: p1 = false
242
+ * _SET_A*
243
+ *
244
+ * @param p1
245
+ */
246
+ N_0x9E8711C81AA17876(p1) {
247
+ inv('0x9E8711C81AA17876', this.handle, p1);
248
+ }
249
+ /**
250
+ * @param speed
251
+ */
252
+ setForwardSpeed(speed) {
253
+ inv('0xF9F92AF49F12F6E7', this.handle, f(speed));
254
+ }
255
+ /**
256
+ * @returns
257
+ */
258
+ getBreakableLocksState() {
259
+ return inv('0xE015CF1F2C0959D8', this.handle, rai());
260
+ }
261
+ /**
262
+ * Locks the vehicle's steering to the desired angle, explained below. Requires to be called onTick. Steering is unlocked the moment the function stops being called on the vehicle. Steer bias:
263
+ * -1.0 = full right
264
+ * 0.0 = centered steering
265
+ * 1.0 = full left
266
+ *
267
+ * @param value
268
+ */
269
+ setSteerBias(value) {
270
+ inv('0x84DAAE11E9EE4FC3', this.handle, f(value));
271
+ }
272
+ hideHorseReins() {
273
+ inv('0x201B8ED4FF7FE9F5', this.handle);
274
+ }
275
+ /**
276
+ * @param p1
277
+ */
278
+ N_0x87B974E54C71BA7B(p1) {
279
+ inv('0x87B974E54C71BA7B', this.handle, p1);
280
+ }
281
+ /**
282
+ * if true, axles won't bend.
283
+ *
284
+ * @param toggle
285
+ */
286
+ setHasStrongAxles(toggle) {
287
+ inv('0x252253C8A45AA1FC', this.handle, toggle);
288
+ }
289
+ /**
290
+ * @returns
291
+ */
292
+ isPlaybackGoingOnForVehicle() {
293
+ return inv('0x02774B3A9034278F', this.handle, rai());
294
+ }
295
+ /**
296
+ * Gets the trailer of a vehicle and puts it into the trailer parameter.
297
+ *
298
+ * @returns trailer
299
+ */
300
+ getTrailerVehicle() {
301
+ const result = inv('0xCF867A239EC30741', this.handle, pvi(), rai());
302
+ return [!!result[0], createFromHandle('Vehicle', result[1])];
303
+ }
304
+ /**
305
+ * https://github.com/femga/rdr3_discoveries/blob/master/vehicles/vehicle_modding/vehicle_liveries.lua
306
+ *
307
+ * @param liveryIndex
308
+ */
309
+ setLivery(liveryIndex) {
310
+ inv('0xF89D82A0582E46ED', this.handle, liveryIndex);
311
+ }
312
+ /**
313
+ * @param toggle
314
+ */
315
+ setForceEngineDamageByBullet(toggle) {
316
+ inv('0x7F8E2B131E1DCA6C', this.handle, toggle);
317
+ }
318
+ /**
319
+ * Params: destroyingForce is usually 100f in R* Scripts
320
+ * Similar to 0xD4F5EFB55769D272, _A*
321
+ *
322
+ * @param wheelIndex
323
+ * @param destroyingForce
324
+ */
325
+ breakOffDraftWheel(wheelIndex, destroyingForce) {
326
+ inv('0xC372B6A88F6E4AD8', this.handle, wheelIndex, f(destroyingForce));
327
+ }
328
+ /**
329
+ * Restarts the train
330
+ */
331
+ setTrainLeaveStation() {
332
+ inv('0x787E43477746876F', this.handle);
333
+ }
334
+ /**
335
+ * @param p1
336
+ */
337
+ setDisableEngineFires(p1) {
338
+ inv('0xD146EE5F2B06B95E', this.handle, p1);
339
+ }
340
+ /**
341
+ * Returns 1000.0 if the function is unable to get the address of the specified vehicle or if it's not a vehicle. Minimum: -4000
342
+ * Maximum: 1000 -4000: Engine is destroyed
343
+ * 0 and below: Engine catches fire and health rapidly declines
344
+ * 300: Engine is smoking and losing functionality
345
+ * 1000: Engine is perfect
346
+ *
347
+ * @returns
348
+ */
349
+ getEngineHealth() {
350
+ return inv('0x90DBFFAC43B22081', this.handle, raf());
351
+ }
352
+ /**
353
+ * @param speed
354
+ */
355
+ setTrainSpeed(speed) {
356
+ inv('0xDFBA6BBFF7CCAFBB', this.handle, f(speed));
357
+ }
358
+ /**
359
+ * wheelIndex 0: left, wheelIndex 1: right, 4 & 5: unknown
360
+ *
361
+ * @param wheelIndex
362
+ * @returns
363
+ */
364
+ breakOffWheel(wheelIndex) {
365
+ return createFromHandle('Entity', inv('0xD4F5EFB55769D272', this.handle, wheelIndex, rai()));
366
+ }
367
+ /**
368
+ * Can also be used on trains and its wagons
369
+ *
370
+ * @param doorId Refer to [enum: eDoorId]
371
+ * @param loose
372
+ * @param openInstantly
373
+ */
374
+ setDoorOpen(doorId, loose, openInstantly) {
375
+ inv('0x550CE392A4672412', this.handle, doorId, loose, openInstantly);
376
+ }
377
+ /**
378
+ * @param toggle
379
+ */
380
+ setAllowHomingMissleLockon(toggle) {
381
+ inv('0x1240E8596A8308B9', this.handle, toggle);
382
+ }
383
+ setTrainHalt() {
384
+ inv('0x3660BCAB3A6BB734', this.handle);
385
+ }
386
+ /**
387
+ * @param player
388
+ * @returns
389
+ */
390
+ getDoorsLockedForPlayer(player) {
391
+ return inv('0xFA2CDDFEB8BC898B', this.handle, player.handle, rai());
392
+ }
393
+ /**
394
+ * @param multiplier
395
+ */
396
+ setLodMultiplier(multiplier) {
397
+ inv('0x5F5E2B1B9EAECC0F', this.handle, f(multiplier));
398
+ }
399
+ /**
400
+ * @param value
401
+ */
402
+ setTrainWhistleEnabled(value) {
403
+ inv('0x1BFBAFCC6760FF02', this.handle, value);
404
+ }
405
+ /**
406
+ * _SET_VEHICLE_S*
407
+ *
408
+ * @param p1
409
+ */
410
+ N_0x0794199B25E499E1(p1) {
411
+ inv('0x0794199B25E499E1', this.handle, p1);
412
+ }
413
+ /**
414
+ * @param model
415
+ * @returns
416
+ */
417
+ isModel(model) {
418
+ return inv('0x0045A54EC7A22455', this.handle, _h(model), rai());
419
+ }
420
+ /**
421
+ * @returns seatIndex: Refer to [enum: eVehicleSeat]
422
+ */
423
+ getTurretSeat() {
424
+ const result = inv('0xFF5791B7639C2A46', this.handle, pvi());
425
+ return [result[0], result[1]];
426
+ }
427
+ /**
428
+ * Often called after START_PLAYBACK_RECORDED_VEHICLE and SKIP_TIME_IN_PLAYBACK_RECORDED_VEHICLE; similar in use to FORCE_ENTITY_AI_AND_ANIMATION_UPDATE.
429
+ *
430
+ * @param p1
431
+ */
432
+ forcePlaybackRecordedUpdate(p1) {
433
+ inv('0x59ECA796021B0539', this.handle, p1);
434
+ }
435
+ /**
436
+ * @param p1
437
+ */
438
+ N_0x850CE59DEC2028F3(p1) {
439
+ inv('0x850CE59DEC2028F3', this.handle, p1);
440
+ }
441
+ /**
442
+ * @param extraId
443
+ * @returns
444
+ */
445
+ isExtraTurnedOn(extraId) {
446
+ return inv('0xFA9A55D9C4351625', this.handle, extraId, rai());
447
+ }
448
+ /**
449
+ * @param amount
450
+ * @param p2
451
+ * @param p3
452
+ */
453
+ setDeterioration(amount, p2, p3) {
454
+ inv('0x8E5DA070BAD3279E', this.handle, f(amount), p2, p3);
455
+ }
456
+ /**
457
+ * returns true if any wheel is destroyed/detached
458
+ *
459
+ * @returns
460
+ */
461
+ areAnyWheelsDestroyed() {
462
+ return inv('0x18714953CCED17D3', this.handle, rai());
463
+ }
464
+ stopPlaybackRecordedVehicle() {
465
+ inv('0xBF9B4D6267E8C26D', this.handle);
466
+ }
467
+ /**
468
+ * @returns
469
+ */
470
+ isDraftVehicle() {
471
+ return inv('0xEA44E97849E9F3DD', this.handle);
472
+ }
473
+ /**
474
+ * Hashes: COACH2_BOOT_LOOT_ITEMS_COACHROB_RSC, COACH2_BOOT_LOOT_ITEMS_COACHROB, COACH2_MARY3
475
+ *
476
+ * @param coachrobberyLoot
477
+ */
478
+ setForceCoachRobberyLoot(coachrobberyLoot) {
479
+ inv('0xF489F94BFEE12BB0', this.handle, _h(coachrobberyLoot));
480
+ }
481
+ /**
482
+ * @param doorId Refer to [enum: eDoorId]
483
+ * @param doorLockStatus
484
+ */
485
+ setIndividualDoorsLocked(doorId, doorLockStatus) {
486
+ inv('0xA9F1D75195CC40F6', this.handle, doorId, doorLockStatus);
487
+ }
488
+ /**
489
+ * @param toggle
490
+ */
491
+ setTrainStopsForStations(toggle) {
492
+ inv('0x4182C037AA1F0091', this.handle, toggle);
493
+ }
494
+ /**
495
+ * @param p1
496
+ */
497
+ N_0x160C1B5AB48AB87C(p1) {
498
+ inv('0x160C1B5AB48AB87C', this.handle, f(p1));
499
+ }
500
+ /**
501
+ * @returns
502
+ */
503
+ getTimePositionInRecording() {
504
+ return inv('0x233B51C7913FA031', this.handle, raf());
505
+ }
506
+ /**
507
+ * This native makes the vehicle stop immediately distance defines how far it will travel until stopping.
508
+ *
509
+ * @param distance
510
+ * @param duration
511
+ * @param unknown
512
+ */
513
+ bringToHalt(distance, duration, unknown) {
514
+ inv('0x260BE8F09E326A20', this.handle, f(distance), duration, unknown);
515
+ }
516
+ /**
517
+ * @returns
518
+ */
519
+ getOwner() {
520
+ return createFromHandle('Entity', inv('0xB729679356A889AE', this.handle, rai()));
521
+ }
522
+ /**
523
+ * @param trackIndex
524
+ * @param pos
525
+ */
526
+ addTrainTemporaryStop(trackIndex, pos) {
527
+ inv('0x41503629D1139ABC', this.handle, trackIndex, f(pos.x), f(pos.y), f(pos.z));
528
+ }
529
+ /**
530
+ * @param toggle
531
+ */
532
+ setInfluencesWantedLevel(toggle) {
533
+ inv('0xC1842F40FD501DA2', this.handle, toggle);
534
+ }
535
+ /**
536
+ * @param state
537
+ */
538
+ setCanBeTargetted(state) {
539
+ inv('0x05254BA0B44ADC16', this.handle, state);
540
+ }
541
+ /**
542
+ * @returns
543
+ */
544
+ getTrackIndexOfTrain() {
545
+ return inv('0x865FEC2FA899F29C', this.handle, rai());
546
+ }
547
+ /**
548
+ * @param p1
549
+ */
550
+ N_0xC399CC89FBA05DA0(p1) {
551
+ inv('0xC399CC89FBA05DA0', this.handle, p1);
552
+ }
553
+ /**
554
+ * 1000 is max health
555
+ *
556
+ * @returns
557
+ */
558
+ getPetrolTankHealth() {
559
+ return inv('0x1E5A9B356D5098BE', this.handle, raf());
560
+ }
561
+ /**
562
+ * @param doorId Refer to [enum: eDoorId]
563
+ * @param p2
564
+ * @param p3
565
+ * @param p4
566
+ */
567
+ setDoorLatched(doorId, p2, p3, p4) {
568
+ inv('0x06F8A202EB312A3C', this.handle, doorId, p2, p3, p4);
569
+ }
570
+ /**
571
+ * @returns
572
+ */
573
+ getDriverOfVehicle() {
574
+ return createFromHandle('Ped', inv('0x2963B5C1637E8A27', this.handle, rai()));
575
+ }
576
+ /**
577
+ * @param seatIndex Refer to [enum: eVehicleSeat]
578
+ * @returns Returns the ped in the specified vehicle seat, or `0` if there wasn't a ped.
579
+ */
580
+ getPedInSeat(seatIndex) {
581
+ return createFromHandle('Ped', inv('0xBB40DD2270B65366', this.handle, seatIndex, rai()));
582
+ }
583
+ deleteMissionTrain() {
584
+ inv('0x0D3630FB07E8B570', this.handle);
585
+ }
586
+ /**
587
+ * @param p1
588
+ */
589
+ setNotStealableAmbiently(p1) {
590
+ inv('0x09C970AE59ABF6B2', this.handle, p1);
591
+ }
592
+ /**
593
+ * Returns iNumCars - to be used with GET_TRAIN_CARRIAGE (trailerNumber)
594
+ * _C* (O, P, Q, R)
595
+ *
596
+ * @returns
597
+ */
598
+ getTrainCarriageTrailerNumber() {
599
+ return inv('0x60B7D1DCC312697D', this.handle, rai());
600
+ }
601
+ /**
602
+ * Old name: _SET_BOAT_FROZEN_WHEN_ANCHORED
603
+ *
604
+ * @param p1
605
+ * @param p2
606
+ */
607
+ setBoatRemainsAnchoredWhilePlayerIsDriver(p1, p2) {
608
+ inv('0x286771F3059A37A7', this.handle, p1, p2);
609
+ }
610
+ /**
611
+ * Allows you to toggle bulletproof tires.
612
+ *
613
+ * @param toggle
614
+ */
615
+ setTyresCanBurst(toggle) {
616
+ inv('0xEBD0A4E935106FE5', this.handle, toggle);
617
+ }
618
+ /**
619
+ * @param seatIndex Refer to [enum: eVehicleSeat]
620
+ * @returns
621
+ */
622
+ canShuffleSeat(seatIndex) {
623
+ return inv('0xF8B2D32A2231FD24', this.handle, seatIndex, rai());
624
+ }
625
+ /**
626
+ * @param toggle
627
+ */
628
+ setEngineCanDegrade(toggle) {
629
+ inv('0x48E4C137A71C2688', this.handle, toggle);
630
+ }
631
+ /**
632
+ * @param p1
633
+ */
634
+ N_0x104D9A7B1C0D0783(p1) {
635
+ inv('0x104D9A7B1C0D0783', this.handle, f(p1));
636
+ }
637
+ /**
638
+ * @param p1
639
+ * @returns
640
+ */
641
+ setOnGroundProperly(p1) {
642
+ return inv('0x7263332501E07F52', this.handle, p1, rai());
643
+ }
644
+ /**
645
+ * @param state
646
+ */
647
+ setCanBeVisiblyDamaged(state) {
648
+ inv('0x4BF8131AE811541C', this.handle, state);
649
+ }
650
+ /**
651
+ * Returns p0 for 0xBA958F68031DDBFC (trackIndex)
652
+ *
653
+ * @returns
654
+ */
655
+ getCurrentTrackForTrain() {
656
+ return inv('0xAF787E081AC4A8EE', this.handle, rai());
657
+ }
658
+ /**
659
+ * @returns expected; actual
660
+ */
661
+ getDraftAnimalCount() {
662
+ const result = inv('0xA19447D83294E29F', this.handle, pvi(), pvi());
663
+ return [result[0], result[1], result[2]];
664
+ }
665
+ /**
666
+ * @param ped
667
+ * @returns
668
+ */
669
+ detachDraftHarnessPed(ped) {
670
+ return inv('0xB36D3EC70963BE60', this.handle, ped.handle);
671
+ }
672
+ /**
673
+ * Spawn without lanterns set
674
+ *
675
+ * @returns
676
+ */
677
+ deleteLanterns() {
678
+ return inv('0xE1A83D4A3B5D7938', this.handle);
679
+ }
680
+ /**
681
+ * Used in Script Function MC_LOCAL_SETUP_VEH - enabling transitions
682
+ *
683
+ * @param p1
684
+ */
685
+ N_0xCBF88256E44D5D39(p1) {
686
+ inv('0xCBF88256E44D5D39', this.handle, p1);
687
+ }
688
+ /**
689
+ * @returns
690
+ */
691
+ isBoatGrounded() {
692
+ return inv('0x30D86B2B7622D0EB', this.handle);
693
+ }
694
+ /**
695
+ * @param pos
696
+ */
697
+ N_0xB42C87521D1BDD2F(pos) {
698
+ inv('0xB42C87521D1BDD2F', this.handle, f(pos.x), f(pos.y), f(pos.z));
699
+ }
700
+ /**
701
+ * @returns
702
+ */
703
+ getLivery() {
704
+ return inv('0xBB765B8FD49A796C', this.handle, rai());
705
+ }
706
+ /**
707
+ * Setting this to false, makes the specified vehicle to where if you press Y your character doesn't even attempt the animation to enter the vehicle. Hence it's not considered aka ignored.
708
+ *
709
+ * @param toggle
710
+ */
711
+ setIsConsideredByPlayer(toggle) {
712
+ inv('0x54800D386C5825E5', this.handle, toggle);
713
+ }
714
+ /**
715
+ * Only returns true if BRING_VEHICLE_TO_HALT is called on vehicle beforehand
716
+ *
717
+ * @returns
718
+ */
719
+ isBroughtToHalt() {
720
+ return inv('0x404527BC03DA0E6C', this.handle);
721
+ }
722
+ /**
723
+ * Outputs track hash and junction index on given train vehicle handle.
724
+ * *RESET_VEHICLE** (?)
725
+ *
726
+ * @returns trainTrack; junctionIndex
727
+ */
728
+ returnTrainInfoFromHandle() {
729
+ const result = inv('0x09034479E6E3E269', this.handle, pvi(), pvi());
730
+ return [result[0], result[1], result[2]];
731
+ }
732
+ /**
733
+ * If set to true, vehicle will not take crash damage, but is still susceptible to damage from bullets and explosives
734
+ *
735
+ * @param toggle
736
+ */
737
+ setStrong(toggle) {
738
+ inv('0xAB315515C9F8803D', this.handle, toggle);
739
+ }
740
+ /**
741
+ * enum eDraftHarness
742
+ * {
743
+ * DRAFT_HARNESS_LR,
744
+ * DRAFT_HARNESS_RR,
745
+ * DRAFT_HARNESS_LM,
746
+ * DRAFT_HARNESS_RM,
747
+ * DRAFT_HARNESS_LF,
748
+ * DRAFT_HARNESS_RF,
749
+ * DRAFT_HARNESS_COUNT
750
+ * };
751
+ *
752
+ * @param harnessId
753
+ * @returns
754
+ */
755
+ getPedInDraftHarness(harnessId) {
756
+ return createFromHandle('Ped', inv('0xA8BA0BAE0173457B', this.handle, harnessId, rai()));
757
+ }
758
+ /**
759
+ * wetLevel: 0.0 - 1.0
760
+ *
761
+ * @param wetLevel
762
+ */
763
+ setWetLevel(wetLevel) {
764
+ inv('0x5AABB09F6FBD1F87', this.handle, f(wetLevel));
765
+ }
766
+ /**
767
+ * @param pos
768
+ * @param p4
769
+ * @param p5
770
+ */
771
+ N_0x2200AB13CBD10F4E(pos, p4, p5) {
772
+ inv('0x2200AB13CBD10F4E', this.handle, f(pos.x), f(pos.y), f(pos.z), p4, f(p5));
773
+ }
774
+ /**
775
+ * @param canBreak
776
+ */
777
+ setDraftYokeCanBreak(canBreak) {
778
+ inv('0x226C6A4E3346D288', this.handle, canBreak);
779
+ }
780
+ /**
781
+ * @param toggle
782
+ */
783
+ setForceHdVehicle(toggle) {
784
+ inv('0x373CB1283308BD7B', this.handle, toggle);
785
+ }
786
+ /**
787
+ * Used to be incorrectly named SET_VEHICLE_EXCLUSIVE_DRIVER
788
+ *
789
+ * @param toggle
790
+ */
791
+ setAiCanUseExclusiveSeats(toggle) {
792
+ inv('0x0893DAFBFA67110E', this.handle, toggle);
793
+ }
794
+ /**
795
+ * @param p1
796
+ */
797
+ N_0xA72B1BF3857B94D7(p1) {
798
+ inv('0xA72B1BF3857B94D7', this.handle, p1);
799
+ }
800
+ /**
801
+ * *SET_DRAFT_VEHICLE*(STOP?)*
802
+ *
803
+ * @param p1
804
+ */
805
+ N_0xC4A2C11FC0D41916(p1) {
806
+ inv('0xC4A2C11FC0D41916', this.handle, p1);
807
+ }
808
+ /**
809
+ * Explodes a selected vehicle. Vehicle vehicle = Vehicle you want to explode.
810
+ * BOOL isAudible = If explosion makes a sound.
811
+ * BOOL isInvisible = If the explosion is invisible or not. First BOOL does not give any visual explosion, the vehicle just falls apart completely but slowly and starts to burn.
812
+ *
813
+ * @param isAudible
814
+ * @param isInvisible
815
+ * @param p3
816
+ * @param p4
817
+ */
818
+ explodeVehicle(isAudible, isInvisible, p3, p4) {
819
+ inv('0x75DCED9EEC5769D7', this.handle, isAudible, isInvisible, p3, p4);
820
+ }
821
+ /**
822
+ * Params: 1.0f will make balloon hover
823
+ *
824
+ * @param p1
825
+ */
826
+ setBalloonHoverState(p1) {
827
+ inv('0x7C9E45A4CED2E8DA', this.handle, f(p1));
828
+ }
829
+ /**
830
+ * @returns
831
+ */
832
+ getDoorLockStatus() {
833
+ return inv('0xC867FD144F2469D3', this.handle, rai());
834
+ }
835
+ requestHighDetailModel() {
836
+ inv('0x84B81EF78BD22357', this.handle);
837
+ }
838
+ /**
839
+ * @returns
840
+ */
841
+ isInBurnout() {
842
+ return inv('0x3F5029A8FC060C48', this.handle, rai());
843
+ }
844
+ /**
845
+ * @param toggle
846
+ */
847
+ setCanBeUsedByFleeingPeds(toggle) {
848
+ inv('0xE42952510F84AFDB', this.handle, toggle);
849
+ }
850
+ /**
851
+ * @param p1
852
+ */
853
+ setAllowExplodesOnContact(p1) {
854
+ inv('0x8D3230A0ED7DE39F', this.handle, p1);
855
+ }
856
+ /**
857
+ * @param speed
858
+ */
859
+ setTrainCruiseSpeed(speed) {
860
+ inv('0x01021EB2E96B793C', this.handle, f(speed));
861
+ }
862
+ /**
863
+ * @returns
864
+ */
865
+ isWrecked() {
866
+ return inv('0xDDBEA5506C848227', this.handle);
867
+ }
868
+ /**
869
+ * @param team
870
+ * @returns
871
+ */
872
+ getDoorsLockedForTeam(team) {
873
+ return inv('0xDD1E1393D966D39A', this.handle, team);
874
+ }
875
+ /**
876
+ * *SET_TRAIN**
877
+ *
878
+ * @param p1
879
+ */
880
+ N_0xEF28A614B4B264B8(p1) {
881
+ inv('0xEF28A614B4B264B8', this.handle, p1);
882
+ }
883
+ /**
884
+ * snowLevel: 0.0 - 1.0
885
+ *
886
+ * @param snowLevel
887
+ */
888
+ setSnowLevel(snowLevel) {
889
+ inv('0x6F73EFAB11651D7F', this.handle, f(snowLevel));
890
+ }
891
+ lockDoorsWhenNoLongerNeeded() {
892
+ inv('0x1EF36558FBDE2DAA', this.handle);
893
+ }
894
+ /**
895
+ * @param toggle
896
+ */
897
+ setDoorsToOpenAtAnyDistance(toggle) {
898
+ inv('0x362CEDD2A41E0747', this.handle, toggle);
899
+ }
900
+ /**
901
+ * @returns
902
+ */
903
+ isOnAllWheels() {
904
+ return inv('0x0D5D119529654EE0', this.handle, rai());
905
+ }
906
+ /**
907
+ * Deletes a vehicle.
908
+ * The vehicle must be a mission entity to delete, so call this before deleting: SET_ENTITY_AS_MISSION_ENTITY(vehicle, true, true); eg how to use:
909
+ * SET_ENTITY_AS_MISSION_ENTITY(vehicle, true, true);
910
+ * DELETE_VEHICLE(&vehicle); Deletes the specified vehicle, then sets the handle pointed to by the pointer to NULL.
911
+ */
912
+ deleteVehicle() {
913
+ inv('0xE20A909D8C4A70F8', this.handle);
914
+ }
915
+ /**
916
+ * @returns
917
+ */
918
+ getMaxNumberOfPassengers() {
919
+ return inv('0xA9C55F1C15E62E06', this.handle, rai());
920
+ }
921
+ /**
922
+ * Closes all doors of a vehicle:
923
+ *
924
+ * @param closeInstantly
925
+ */
926
+ setDoorsShut(closeInstantly) {
927
+ inv('0xA4FFCD645B11F25A', this.handle, closeInstantly);
928
+ }
929
+ /**
930
+ * @param p1
931
+ */
932
+ setStopInstantlyWhenPlayerInactive(p1) {
933
+ inv('0xC84E138448507567', this.handle, p1);
934
+ }
935
+ /**
936
+ * @param nullAttributes
937
+ */
938
+ resetStuckTimer(nullAttributes) {
939
+ inv('0x23298B468F7D88B6', this.handle, nullAttributes);
940
+ }
941
+ /**
942
+ * Returns p1 for 0xBA958F68031DDBFC (stationIndex)
943
+ * _GET_N* (NEAREST_STATION_FOR_TRAIN?)
944
+ *
945
+ * @returns
946
+ */
947
+ N_0x1180A2974D251B7B() {
948
+ return inv('0x1180A2974D251B7B', this.handle, rai());
949
+ }
950
+ /**
951
+ * @param p1
952
+ */
953
+ setDontAllowPlayerToEnterIfLockedForPlayer(p1) {
954
+ inv('0x63DC1F22C903B709', this.handle, p1);
955
+ }
956
+ /**
957
+ * @param p1
958
+ */
959
+ setCanEjectPassengersIfLocked(p1) {
960
+ inv('0x065D03A9D6B2C6B5', this.handle, p1);
961
+ }
962
+ /**
963
+ * Gets the number of passengers, NOT including the driver. Use IS_VEHICLE_SEAT_FREE(Vehicle, -1) to also check for the driver
964
+ *
965
+ * @returns
966
+ */
967
+ getNumberOfPassengers() {
968
+ return inv('0x59F3F16577CD79B2', this.handle, rai());
969
+ }
970
+ /**
971
+ * @param speed
972
+ */
973
+ setPlaybackSpeed(speed) {
974
+ inv('0xD78084EED4CD94C6', this.handle, f(speed));
975
+ }
976
+ /**
977
+ * @returns
978
+ */
979
+ hasTrainLoaded() {
980
+ return inv('0xBD3C4A2ED509205E', this.handle);
981
+ }
982
+ /**
983
+ * @returns
984
+ */
985
+ N_0xDE8C5B9F65017FA1() {
986
+ return inv('0xDE8C5B9F65017FA1', this.handle);
987
+ }
988
+ /**
989
+ * @param p1
990
+ */
991
+ setHasUnbreakableLights(p1) {
992
+ inv('0xC903855E028A05F2', this.handle, p1);
993
+ }
994
+ /**
995
+ * @param p1
996
+ */
997
+ N_0xD826690B5CF3BEFF(p1) {
998
+ inv('0xD826690B5CF3BEFF', this.handle, p1);
999
+ }
1000
+ /**
1001
+ * _H*
1002
+ */
1003
+ N_0x41F0B254DDF71473() {
1004
+ inv('0x41F0B254DDF71473', this.handle);
1005
+ }
1006
+ /**
1007
+ * Notice: BOOL p4 was wrongly named takePassengers (?)
1008
+ * Can be used to rotate the train by setting the BOOL direction
1009
+ *
1010
+ * @param pos
1011
+ * @param direction
1012
+ */
1013
+ setMissionTrainWarpToCoords(pos, direction) {
1014
+ inv('0xC9EA26893C9E4024', this.handle, f(pos.x), f(pos.y), f(pos.z), direction);
1015
+ }
1016
+ /**
1017
+ * @param toggle
1018
+ */
1019
+ setStaysFrozenWhenCleanedUp(toggle) {
1020
+ inv('0x23A3AB86E0807721', this.handle, toggle);
1021
+ }
1022
+ /**
1023
+ * *SET_VEHICLE**
1024
+ */
1025
+ N_0x04F0579DBDD32F34() {
1026
+ inv('0x04F0579DBDD32F34', this.handle);
1027
+ }
1028
+ /**
1029
+ * SET_TIME_POSITION_IN_RECORDING can be emulated by: desired_time - GET_TIME_POSITION_IN_RECORDING(vehicle)
1030
+ *
1031
+ * @param time
1032
+ */
1033
+ skipTimeInPlaybackRecordedVehicle(time) {
1034
+ inv('0x5F5E6379C59EFC56', this.handle, f(time));
1035
+ }
1036
+ /**
1037
+ * @param player
1038
+ * @param toggle
1039
+ */
1040
+ setDoorsLockedForPlayer(player, toggle) {
1041
+ inv('0x359A8EA1FB8D6F0F', this.handle, player.handle, toggle);
1042
+ }
1043
+ /**
1044
+ * Returns false if every seat is occupied.
1045
+ *
1046
+ * @returns
1047
+ */
1048
+ areAnySeatsFree() {
1049
+ return inv('0xA0A424505A1B6429', this.handle, rai());
1050
+ }
1051
+ /**
1052
+ * @param speed
1053
+ */
1054
+ setDraftDesiredSpeed(speed) {
1055
+ inv('0x0C3F0F7F92CA847C', this.handle, f(speed));
1056
+ }
1057
+ /**
1058
+ * @param toggle
1059
+ */
1060
+ setBoatSinksWhenWrecked(toggle) {
1061
+ inv('0x62A6D317A011EA1D', this.handle, toggle);
1062
+ }
1063
+ /**
1064
+ * @param seatIndex Refer to [enum: eVehicleSeat]
1065
+ * @returns
1066
+ */
1067
+ isSeatWarpOnly(seatIndex) {
1068
+ return inv('0x7892685BF6D9775E', this.handle, seatIndex, rai());
1069
+ }
1070
+ /**
1071
+ * Sounds the horn for the specified vehicle. vehicle: The vehicle to activate the horn for.
1072
+ * mode: The hash of "NORMAL" or "HELDDOWN". Can be 0.
1073
+ * duration: The duration to sound the horn, in milliseconds. Note: If a player is in the vehicle, it will only sound briefly.
1074
+ *
1075
+ * @param duration
1076
+ * @param mode
1077
+ * @param forever
1078
+ */
1079
+ startHorn(duration, mode, forever) {
1080
+ inv('0xB4E3BFC39CA16057', this.handle, duration, _h(mode), forever);
1081
+ }
1082
+ /**
1083
+ * @returns
1084
+ */
1085
+ getNumBreakableLockObjects() {
1086
+ return inv('0x2FA86833E3617E2D', this.handle, rai());
1087
+ }
1088
+ /**
1089
+ * @param p1
1090
+ */
1091
+ N_0xE6BD7DD3FD474415(p1) {
1092
+ inv('0xE6BD7DD3FD474415', this.handle, p1);
1093
+ }
1094
+ /**
1095
+ * Ranges from -1 to 2? (internal type is int8)
1096
+ * https://imgur.com/a/bPzHcft
1097
+ *
1098
+ * @param lodLevel
1099
+ */
1100
+ setLodLevel(lodLevel) {
1101
+ inv('0x3FA7D7D1E0EA809E', this.handle, lodLevel);
1102
+ }
1103
+ /**
1104
+ * Returns p1 for 0xBA958F68031DDBFC (stationIndex)
1105
+ *
1106
+ * @returns
1107
+ */
1108
+ getCurrentStationForTrain() {
1109
+ return inv('0x86FA6D8B48667D75', this.handle, rai());
1110
+ }
1111
+ /**
1112
+ * Params: coords = GET_ENTITY_VELOCITY
1113
+ * _SET_VELOCITY*
1114
+ *
1115
+ * @param pos
1116
+ */
1117
+ N_0x12F6C6ED3EFF42DE(pos) {
1118
+ inv('0x12F6C6ED3EFF42DE', this.handle, f(pos.x), f(pos.y), f(pos.z));
1119
+ }
1120
+ /**
1121
+ * Only used in R* SP Script rcm_abigail31: p1 = 5
1122
+ * _GET_VEHICLE_T* - _GET_VO*
1123
+ *
1124
+ * @param p1
1125
+ * @returns
1126
+ */
1127
+ N_0xE1C0F8781BF130C2(p1) {
1128
+ return inv('0xE1C0F8781BF130C2', this.handle, p1, rai());
1129
+ }
1130
+ /**
1131
+ * @param offset
1132
+ */
1133
+ setTrainOffsetFromStation(offset) {
1134
+ inv('0x8EC47DD4300BF063', this.handle, f(offset));
1135
+ }
1136
+ trackVisibility() {
1137
+ inv('0x1F3969B140DEE157', this.handle);
1138
+ }
1139
+ /**
1140
+ * @param p1
1141
+ * @param p2
1142
+ * @returns
1143
+ */
1144
+ setAutomaticallyAttaches(p1, p2) {
1145
+ return inv('0x501354951CD942DE', this.handle, p1, p2);
1146
+ }
1147
+ /**
1148
+ * @param toggle
1149
+ */
1150
+ setUndriveable(toggle) {
1151
+ inv('0x6E884BAB713A2A94', this.handle, toggle);
1152
+ }
1153
+ /**
1154
+ * Old name: _STOP_BRING_VEHICLE_TO_HALT
1155
+ */
1156
+ stopBringingToHalt() {
1157
+ inv('0x7C06330BFDDA182E', this.handle);
1158
+ }
1159
+ /**
1160
+ * @param p1
1161
+ */
1162
+ N_0xCF342503CA4C8DF1(p1) {
1163
+ inv('0xCF342503CA4C8DF1', this.handle, f(p1));
1164
+ }
1165
+ /**
1166
+ * @param canDetach
1167
+ */
1168
+ setDraftAnimalsCanDetach(canDetach) {
1169
+ inv('0x6090A031C69F384E', this.handle, canDetach);
1170
+ }
1171
+ /**
1172
+ * @returns
1173
+ */
1174
+ isPlaybackUsingAiGoingOnForVehicle() {
1175
+ return inv('0x5A7472606EC5B7C1', this.handle, rai());
1176
+ }
1177
+ /**
1178
+ * Sets a vehicle to be strongly resistant to explosions. p0 is the vehicle; set p1 to false to toggle the effect on/off.
1179
+ *
1180
+ * @param toggle
1181
+ */
1182
+ setExplodesOnHighExplosionDamage(toggle) {
1183
+ inv('0xA402939C6761E1A3', this.handle, toggle);
1184
+ }
1185
+ /**
1186
+ * Sets boat to be anchored on spawn, called together with SET_BOAT_ANCHOR and _SET_BOAT_ANCHOR_BUOYANCY_COEFFICIENT
1187
+ *
1188
+ * @param p1
1189
+ */
1190
+ setForceLowLodAnchorMode(p1) {
1191
+ inv('0x75B49ACD73617437', this.handle, p1);
1192
+ }
1193
+ /**
1194
+ * @param p1
1195
+ */
1196
+ N_0x1A861F899EBBE17C(p1) {
1197
+ inv('0x1A861F899EBBE17C', this.handle, p1);
1198
+ }
1199
+ /**
1200
+ * Value: mostly 99999.9f Old name: _SET_BOAT_MOVEMENT_RESISTANCE
1201
+ *
1202
+ * @param value
1203
+ */
1204
+ setBoatLowLodAnchorDistance(value) {
1205
+ inv('0xE3261532550D6A9F', this.handle, f(value));
1206
+ }
1207
+ /**
1208
+ * @param pos
1209
+ */
1210
+ setMissionTrainCoords(pos) {
1211
+ inv('0x7632755962AB9922', this.handle, f(pos.x), f(pos.y), f(pos.z));
1212
+ }
1213
+ /**
1214
+ * Params: p1 usually true in R* Scripts
1215
+ * *SET_DRAFT_VEHICLE**
1216
+ *
1217
+ * @param p1
1218
+ */
1219
+ N_0x4C60C333F9CCA2B6(p1) {
1220
+ inv('0x4C60C333F9CCA2B6', this.handle, p1);
1221
+ }
1222
+ /**
1223
+ * @param windowIndex
1224
+ * @returns
1225
+ */
1226
+ isWindowIntact(windowIndex) {
1227
+ return inv('0x0E7910A63E05B12C', this.handle, windowIndex, rai());
1228
+ }
1229
+ /**
1230
+ * Copies sourceVehicle's damage (broken bumpers, broken lights, etc.) to targetVehicle.
1231
+ *
1232
+ * @param targetVehicle
1233
+ */
1234
+ copyDamages(targetVehicle) {
1235
+ inv('0xDBC28A8C683CD80B', this.handle, targetVehicle.handle);
1236
+ }
1237
+ /**
1238
+ * _SET_VEHICLE_LI*
1239
+ *
1240
+ * @param p1
1241
+ */
1242
+ setLimitSpeedWhenPlayerInactive(p1) {
1243
+ inv('0x8F75941C86EEBFCA', this.handle, p1);
1244
+ }
1245
+ /**
1246
+ * @param allow
1247
+ */
1248
+ setDraftAllowDraftAnimalAutoCreation(allow) {
1249
+ inv('0x87344305778E5415', this.handle, allow);
1250
+ }
1251
+ /**
1252
+ * @param team
1253
+ * @param toggle
1254
+ */
1255
+ setDoorsLockedForTeam(team, toggle) {
1256
+ inv('0xE712BC978770F105', this.handle, team, toggle);
1257
+ }
1258
+ /**
1259
+ * @param p1
1260
+ */
1261
+ N_0x7840576C50A13DBA(p1) {
1262
+ inv('0x7840576C50A13DBA', this.handle, p1);
1263
+ }
1264
+ /**
1265
+ * @param toggle
1266
+ */
1267
+ setCanBreak(toggle) {
1268
+ inv('0xC5ED9D59B4646611', this.handle, toggle);
1269
+ }
1270
+ /**
1271
+ * @param toggle
1272
+ */
1273
+ setHandbrake(toggle) {
1274
+ inv('0x91BE51AEC4E99710', this.handle, toggle);
1275
+ }
1276
+ /**
1277
+ * Total height is calculated using: cargo ratio + pelt ratio (by pelt count)
1278
+ * Screenshot: https://imgur.com/a/nsomtiv
1279
+ *
1280
+ * @param height
1281
+ * @param immediately
1282
+ */
1283
+ setBatchTarpHeight(height, immediately) {
1284
+ inv('0x31F343383F19C987', this.handle, f(height), immediately);
1285
+ }
1286
+ /**
1287
+ * @param dirtLevel
1288
+ */
1289
+ setDirtLevel(dirtLevel) {
1290
+ inv('0x758C3460EE915D0A', this.handle, f(dirtLevel));
1291
+ }
1292
+ /**
1293
+ * VEH_STUCK_ON_ROOF = 0,
1294
+ * VEH_STUCK_ON_SIDE,
1295
+ * VEH_STUCK_HUNG_UP,
1296
+ * VEH_STUCK_JAMMED
1297
+ *
1298
+ * @param stuckType
1299
+ * @param ms
1300
+ * @returns
1301
+ */
1302
+ isStuckTimerUp(stuckType, ms) {
1303
+ return inv('0x1ABA9753939503C5', this.handle, stuckType, ms, rai());
1304
+ }
1305
+ /**
1306
+ * Returns true if the vehicle's current speed is less than, or equal to 0.0025f. For some vehicles it returns true if the current speed is <= 0.00039999999.
1307
+ *
1308
+ * @returns
1309
+ */
1310
+ isStopped() {
1311
+ return inv('0x78C3311A73135241', this.handle, rai());
1312
+ }
1313
+ /**
1314
+ * @param p1
1315
+ */
1316
+ N_0x15CC8C33D7FFCC4A(p1) {
1317
+ inv('0x15CC8C33D7FFCC4A', this.handle, p1);
1318
+ }
1319
+ /**
1320
+ * @param enabled
1321
+ */
1322
+ setIsInHurry(enabled) {
1323
+ inv('0xCE1531927AD6C9F8', this.handle, enabled);
1324
+ }
1325
+ /**
1326
+ * @param extraId
1327
+ * @returns
1328
+ */
1329
+ doesExtraExist(extraId) {
1330
+ return inv('0xAF5E7E9A7620FFB5', this.handle, extraId, rai());
1331
+ }
1332
+ /**
1333
+ * @param seed
1334
+ */
1335
+ setDraftAnimalRandomSeed(seed) {
1336
+ inv('0x8C6D9A399126C194', this.handle, seed);
1337
+ }
1338
+ /**
1339
+ * @param wheel
1340
+ * @returns
1341
+ */
1342
+ isWheelDestroyed(wheel) {
1343
+ return inv('0xCB2CA620C48BC875', this.handle, wheel);
1344
+ }
1345
+ /**
1346
+ * p3 is some flag related to 'trailers' (invokes CVehicle::GetTrailer). See REQUEST_VEHICLE_RECORDING
1347
+ *
1348
+ * @param recording
1349
+ * @param script
1350
+ * @param p3
1351
+ */
1352
+ startPlaybackRecordedVehicle(recording, script, p3) {
1353
+ inv('0x4932B84E3276508E', this.handle, recording, script, p3);
1354
+ }
1355
+ /**
1356
+ * dirtLevel: 0.0 - 1.0
1357
+ *
1358
+ * @param dirtLevel
1359
+ */
1360
+ setDirtLevel2(dirtLevel) {
1361
+ inv('0xBAE0EEDF93F05EAA', this.handle, f(dirtLevel));
1362
+ }
1363
+ /**
1364
+ * @param trailerNumber
1365
+ * @returns
1366
+ */
1367
+ getTrainCarriage(trailerNumber) {
1368
+ return createFromHandle('Entity', inv('0xD0FB093A4CDB932C', this.handle, trailerNumber, rai()));
1369
+ }
1370
+ /**
1371
+ * @returns
1372
+ */
1373
+ isFadingOut() {
1374
+ return inv('0x5136B284B67B35C7', this.handle);
1375
+ }
1376
+ fadeAndDestroyVehicle() {
1377
+ inv('0x35DC1877312FBA0F', this.handle);
1378
+ }
1379
+ /**
1380
+ * @returns
1381
+ */
1382
+ getIsPropSetApplied() {
1383
+ return inv('0xD798DF5DB67B1659', this.handle);
1384
+ }
1385
+ /**
1386
+ * Maximum possible speed is 30.0 (108 km/h)
1387
+ *
1388
+ * @param speed
1389
+ */
1390
+ setTrainMaxSpeed(speed) {
1391
+ inv('0x9F29999DFDF2AEB8', this.handle, f(speed));
1392
+ }
1393
+ /**
1394
+ * Old name: _SET_DISABLE_SUPERDUMMY_MODE
1395
+ *
1396
+ * @param disable
1397
+ */
1398
+ setDisableSuperdummy(disable) {
1399
+ inv('0x1716D787D9B94202', this.handle, disable);
1400
+ }
1401
+ /**
1402
+ * Old name: _SET_VEHICLE_DOOR_CAN_BREAK
1403
+ *
1404
+ * @param doorId Refer to [enum: eDoorId]
1405
+ * @param isBreakable
1406
+ */
1407
+ setDoorAllowedToBeBrokenOff(doorId, isBreakable) {
1408
+ inv('0x081FB9D6422F804C', this.handle, doorId, isBreakable);
1409
+ }
1410
+ /**
1411
+ * @param value
1412
+ */
1413
+ setBodyHealth(value) {
1414
+ inv('0x55CCAAE4F28C67A0', this.handle, f(value));
1415
+ }
1416
+ /**
1417
+ * @param toggle
1418
+ */
1419
+ setProvidesCover(toggle) {
1420
+ inv('0x652712478F1721F4', this.handle, toggle);
1421
+ }
1422
+ /**
1423
+ * @param value
1424
+ */
1425
+ modifyTopSpeed(value) {
1426
+ inv('0x35AD938C74CACD6A', this.handle, f(value));
1427
+ }
1428
+ /**
1429
+ * index: 0 - 1 Used to be incorrectly named _SET_VEHICLE_EXCLUSIVE_DRIVER_2
1430
+ *
1431
+ * @param ped
1432
+ * @param index
1433
+ */
1434
+ setExclusiveDriver(ped, index) {
1435
+ inv('0xC6B9BF123B9463B6', this.handle, ped.handle, index);
1436
+ }
1437
+ /**
1438
+ * 1000 is max health
1439
+ *
1440
+ * @param health
1441
+ */
1442
+ setPetrolTankHealth(health) {
1443
+ inv('0x6AB2918EE3BEC94C', this.handle, f(health));
1444
+ }
1445
+ /**
1446
+ * @param doorLockStatus
1447
+ */
1448
+ setDoorsLocked(doorLockStatus) {
1449
+ inv('0x96F78A6A075D55D9', this.handle, doorLockStatus);
1450
+ }
1451
+ /**
1452
+ * @returns
1453
+ */
1454
+ canAnchorBoatHere() {
1455
+ return inv('0xC075176CFB8B4128', this.handle, rai());
1456
+ }
1457
+ /**
1458
+ * This fixes a vehicle.
1459
+ * If the vehicle's engine's broken then you cannot fix it with this native.
1460
+ */
1461
+ setFixed() {
1462
+ inv('0x79811282A9D1AE56', this.handle);
1463
+ }
1464
+ /**
1465
+ * @param toggle
1466
+ */
1467
+ setKeepEngineOnWhenAbandoned(toggle) {
1468
+ inv('0x1549BA7FE83A2383', this.handle, toggle);
1469
+ }
1470
+ /**
1471
+ * @param harnessId
1472
+ * @returns
1473
+ */
1474
+ detachDraftHarnessFromIndex(harnessId) {
1475
+ return inv('0x4402960666000E62', this.handle, harnessId);
1476
+ }
1477
+ /**
1478
+ * Sets the vehicle's lights state.
1479
+ *
1480
+ * @param state
1481
+ */
1482
+ setLights(state) {
1483
+ inv('0x629F0A0E952CAE7D', this.handle, state);
1484
+ }
1485
+ /**
1486
+ * @param owned
1487
+ */
1488
+ setHasBeenOwnedByPlayer(owned) {
1489
+ inv('0xBB5A3FA8ED3979C5', this.handle, owned);
1490
+ }
1491
+ /**
1492
+ * Note: only some vehicle have extras
1493
+ * https://github.com/femga/rdr3_discoveries/blob/master/vehicles/vehicle_modding/vehicle_extras.lua
1494
+ *
1495
+ * @param extraId
1496
+ * @param disable
1497
+ */
1498
+ setExtra(extraId, disable) {
1499
+ inv('0xBB6F89150BC9D16B', this.handle, extraId, disable);
1500
+ }
1501
+ /**
1502
+ * @returns
1503
+ */
1504
+ getTrainDirection() {
1505
+ return inv('0x3C9628A811CBD724', this.handle);
1506
+ }
1507
+ /**
1508
+ * @param seatIndex Refer to [enum: eVehicleSeat]
1509
+ * @returns Returns the last ped in the `seatIndex` or `0` if there wasn't one, or the ped no longer exists.
1510
+ */
1511
+ getLastPedInSeat(seatIndex) {
1512
+ return createFromHandle('Ped', inv('0x74583B19FEEAFDA7', this.handle, seatIndex, rai()));
1513
+ }
1514
+ /**
1515
+ * @param doorId Refer to [enum: eDoorId]
1516
+ * @param speed
1517
+ * @param angle
1518
+ */
1519
+ setDoorControl(doorId, speed, angle) {
1520
+ inv('0xD57F10EBBA814ECF', this.handle, doorId, speed, f(angle));
1521
+ }
1522
+ /**
1523
+ * @param toggle
1524
+ */
1525
+ setDisablePetrolTankDamage(toggle) {
1526
+ inv('0x5795FBE7A2001C14', this.handle, toggle);
1527
+ }
1528
+ /**
1529
+ * @param toggle
1530
+ */
1531
+ setBreakableLocksUnbreakable(toggle) {
1532
+ inv('0xBC4735F48CD983EF', this.handle, toggle);
1533
+ }
1534
+ /**
1535
+ * @param p1
1536
+ */
1537
+ setRespectsLocksWhenHasDriver(p1) {
1538
+ inv('0x33992A808DF1C1BA', this.handle, p1);
1539
+ }
1540
+ /**
1541
+ * *SET_TRAIN**
1542
+ *
1543
+ * @param p1
1544
+ */
1545
+ N_0xAE7E66A61E7C17A5(p1) {
1546
+ inv('0xAE7E66A61E7C17A5', this.handle, p1);
1547
+ }
1548
+ /**
1549
+ * Returns rage::NumericLimits<float>::kMax (3.402823466e+38) if vehicle is not a valid vehicle of type VEHICLE_TYPE_DRAFT.
1550
+ *
1551
+ * @returns
1552
+ */
1553
+ getDraftDesiredSpeed() {
1554
+ return inv('0xC6D7DDC843176701', this.handle, raf());
1555
+ }
1556
+ /**
1557
+ * *SET_VEHICLE_WHEELS**
1558
+ *
1559
+ * @param p1
1560
+ * @param p2
1561
+ */
1562
+ N_0x73118A3EE9C9B6DB(p1, p2) {
1563
+ inv('0x73118A3EE9C9B6DB', this.handle, p1, p2);
1564
+ }
1565
+ /**
1566
+ * @param doorId Refer to [enum: eDoorId]
1567
+ * @returns
1568
+ */
1569
+ isDoorBroken(doorId) {
1570
+ return inv('0xE979BB5602AD3402', this.handle, doorId);
1571
+ }
1572
+ /**
1573
+ * @param doorId Refer to [enum: eDoorId]
1574
+ * @returns
1575
+ */
1576
+ isDoorFullyOpen(doorId) {
1577
+ return inv('0x7AE191143C7A9107', this.handle, doorId, rai());
1578
+ }
1579
+ /**
1580
+ * @param p1
1581
+ */
1582
+ setForceHighLodVehicle(p1) {
1583
+ inv('0x1098CDA477890165', this.handle, p1);
1584
+ }
1585
+ /**
1586
+ * Use [native: GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS] - 1 for last seat index.
1587
+ *
1588
+ * @param seatIndex Refer to [enum: eVehicleSeat]
1589
+ * @returns Returns `true` if the vehicle seat is free (has no ped in it)
1590
+ */
1591
+ isSeatFree(seatIndex) {
1592
+ return inv('0xE052C1B1CAA4ECE4', this.handle, seatIndex, rai());
1593
+ }
1594
+ /**
1595
+ * https://github.com/femga/rdr3_discoveries/blob/master/vehicles/vehicle_modding/vehicle_tints.lua
1596
+ *
1597
+ * @param tintId
1598
+ */
1599
+ setTint(tintId) {
1600
+ inv('0x8268B098F6FCA4E2', this.handle, tintId);
1601
+ }
1602
+ /**
1603
+ * Returns trackIndex
1604
+ *
1605
+ * @returns
1606
+ */
1607
+ getTrainTrackFromTrainVehicle() {
1608
+ return inv('0x45853F4E17D847D5', this.handle, rai());
1609
+ }
1610
+ /**
1611
+ * mudLevel: 0.0 - 1.0
1612
+ *
1613
+ * @param mudLevel
1614
+ */
1615
+ setMudLevel(mudLevel) {
1616
+ inv('0x4D15E49764CB328A', this.handle, f(mudLevel));
1617
+ }
1618
+ /**
1619
+ * *SET_DRAFT_VEHICLE**
1620
+ *
1621
+ * @param p1
1622
+ */
1623
+ N_0xFC4F15A7DDDC47B1(p1) {
1624
+ inv('0xFC4F15A7DDDC47B1', this.handle, p1);
1625
+ }
1626
+ /**
1627
+ * @param toggle
1628
+ */
1629
+ N_0x6B53F4B811E583D2(toggle) {
1630
+ inv('0x6B53F4B811E583D2', this.handle, toggle);
1631
+ }
1632
+ /**
1633
+ * @param isStolen
1634
+ */
1635
+ setIsStolen(isStolen) {
1636
+ inv('0x6C32FC81DFF25C9A', this.handle, isStolen);
1637
+ }
1638
+ /**
1639
+ * @param doorId Refer to [enum: eDoorId]
1640
+ * @param deleteDoor
1641
+ */
1642
+ setDoorBroken(doorId, deleteDoor) {
1643
+ inv('0x9666CF20A1C6D780', this.handle, doorId, deleteDoor);
1644
+ }
1645
+ get task() {
1646
+ if (!this._task) {
1647
+ this._task = new VehicleTask(this);
1648
+ }
1649
+ return this._task;
1650
+ }
1651
+ }
1652
+ registerHandle('Vehicle', Vehicle);