@nativewrappers/fivem 0.0.1

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 (421) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/lib/client/Audio.d.ts +17 -0
  4. package/lib/client/Audio.js +92 -0
  5. package/lib/client/Blip.d.ts +39 -0
  6. package/lib/client/Blip.js +104 -0
  7. package/lib/client/Camera.d.ts +46 -0
  8. package/lib/client/Camera.js +161 -0
  9. package/lib/client/Checkpoint.d.ts +18 -0
  10. package/lib/client/Checkpoint.js +42 -0
  11. package/lib/client/Events.d.ts +11 -0
  12. package/lib/client/Events.js +73 -0
  13. package/lib/client/Game.d.ts +283 -0
  14. package/lib/client/Game.js +451 -0
  15. package/lib/client/GameplayCamera.d.ts +102 -0
  16. package/lib/client/GameplayCamera.js +141 -0
  17. package/lib/client/Model.d.ts +134 -0
  18. package/lib/client/Model.js +198 -0
  19. package/lib/client/NetworkedScene.d.ts +10 -0
  20. package/lib/client/NetworkedScene.js +17 -0
  21. package/lib/client/ParticleEffect.d.ts +80 -0
  22. package/lib/client/ParticleEffect.js +120 -0
  23. package/lib/client/ParticleEffectAsset.d.ts +54 -0
  24. package/lib/client/ParticleEffectAsset.js +104 -0
  25. package/lib/client/Pickup.d.ts +9 -0
  26. package/lib/client/Pickup.js +18 -0
  27. package/lib/client/Raycast.d.ts +49 -0
  28. package/lib/client/Raycast.js +70 -0
  29. package/lib/client/RelationshipGroup.d.ts +49 -0
  30. package/lib/client/RelationshipGroup.js +63 -0
  31. package/lib/client/Rope.d.ts +99 -0
  32. package/lib/client/Rope.js +125 -0
  33. package/lib/client/TaskSequence.d.ts +15 -0
  34. package/lib/client/TaskSequence.js +43 -0
  35. package/lib/client/Tasks.d.ts +66 -0
  36. package/lib/client/Tasks.js +236 -0
  37. package/lib/client/World.d.ts +402 -0
  38. package/lib/client/World.js +726 -0
  39. package/lib/client/cfx/StateBagChangeHandler.d.ts +3 -0
  40. package/lib/client/cfx/StateBagChangeHandler.js +1 -0
  41. package/lib/client/cfx/index.d.ts +7 -0
  42. package/lib/client/cfx/index.js +1 -0
  43. package/lib/client/enums/Alignment.d.ts +5 -0
  44. package/lib/client/enums/Alignment.js +6 -0
  45. package/lib/client/enums/AnimationFlags.d.ts +9 -0
  46. package/lib/client/enums/AnimationFlags.js +10 -0
  47. package/lib/client/enums/AudioFlag.d.ts +37 -0
  48. package/lib/client/enums/AudioFlag.js +38 -0
  49. package/lib/client/enums/BadgeStyle.d.ts +182 -0
  50. package/lib/client/enums/BadgeStyle.js +183 -0
  51. package/lib/client/enums/Blip.d.ts +223 -0
  52. package/lib/client/enums/Blip.js +225 -0
  53. package/lib/client/enums/Bone.d.ts +101 -0
  54. package/lib/client/enums/Bone.js +103 -0
  55. package/lib/client/enums/CameraShake.d.ts +13 -0
  56. package/lib/client/enums/CameraShake.js +14 -0
  57. package/lib/client/enums/CameraTypes.d.ts +7 -0
  58. package/lib/client/enums/CameraTypes.js +8 -0
  59. package/lib/client/enums/CheckboxStyle.d.ts +4 -0
  60. package/lib/client/enums/CheckboxStyle.js +5 -0
  61. package/lib/client/enums/Checkpoint.d.ts +62 -0
  62. package/lib/client/enums/Checkpoint.js +67 -0
  63. package/lib/client/enums/ClassTypes.d.ts +11 -0
  64. package/lib/client/enums/ClassTypes.js +12 -0
  65. package/lib/client/enums/CloudHat.d.ts +26 -0
  66. package/lib/client/enums/CloudHat.js +27 -0
  67. package/lib/client/enums/Control.d.ts +360 -0
  68. package/lib/client/enums/Control.js +361 -0
  69. package/lib/client/enums/CursorSprite.d.ts +14 -0
  70. package/lib/client/enums/CursorSprite.js +15 -0
  71. package/lib/client/enums/Driving.d.ts +32 -0
  72. package/lib/client/enums/Driving.js +34 -0
  73. package/lib/client/enums/ExplosionType.d.ts +44 -0
  74. package/lib/client/enums/ExplosionType.js +45 -0
  75. package/lib/client/enums/FiringPattern.d.ts +19 -0
  76. package/lib/client/enums/FiringPattern.js +20 -0
  77. package/lib/client/enums/Font.d.ts +7 -0
  78. package/lib/client/enums/Font.js +8 -0
  79. package/lib/client/enums/ForceType.d.ts +8 -0
  80. package/lib/client/enums/ForceType.js +9 -0
  81. package/lib/client/enums/Gender.d.ts +4 -0
  82. package/lib/client/enums/Gender.js +5 -0
  83. package/lib/client/enums/HelmetType.d.ts +5 -0
  84. package/lib/client/enums/HelmetType.js +6 -0
  85. package/lib/client/enums/HudColor.d.ts +183 -0
  86. package/lib/client/enums/HudColor.js +184 -0
  87. package/lib/client/enums/HudComponent.d.ts +53 -0
  88. package/lib/client/enums/HudComponent.js +54 -0
  89. package/lib/client/enums/InputMode.d.ts +4 -0
  90. package/lib/client/enums/InputMode.js +5 -0
  91. package/lib/client/enums/IntersectOptions.d.ts +15 -0
  92. package/lib/client/enums/IntersectOptions.js +16 -0
  93. package/lib/client/enums/InvertAxis.d.ts +9 -0
  94. package/lib/client/enums/InvertAxis.js +7 -0
  95. package/lib/client/enums/Language.d.ts +14 -0
  96. package/lib/client/enums/Language.js +15 -0
  97. package/lib/client/enums/LeaveVehicleFlags.d.ts +10 -0
  98. package/lib/client/enums/LeaveVehicleFlags.js +11 -0
  99. package/lib/client/enums/LoadingSpinnerType.d.ts +7 -0
  100. package/lib/client/enums/LoadingSpinnerType.js +8 -0
  101. package/lib/client/enums/MarkerType.d.ts +49 -0
  102. package/lib/client/enums/MarkerType.js +50 -0
  103. package/lib/client/enums/MenuAlignment.d.ts +4 -0
  104. package/lib/client/enums/MenuAlignment.js +5 -0
  105. package/lib/client/enums/NotificationType.d.ts +10 -0
  106. package/lib/client/enums/NotificationType.js +11 -0
  107. package/lib/client/enums/Parachute.d.ts +13 -0
  108. package/lib/client/enums/Parachute.js +15 -0
  109. package/lib/client/enums/PickupType.d.ts +73 -0
  110. package/lib/client/enums/PickupType.js +74 -0
  111. package/lib/client/enums/RadioStation.d.ts +24 -0
  112. package/lib/client/enums/RadioStation.js +25 -0
  113. package/lib/client/enums/RagdollType.d.ts +6 -0
  114. package/lib/client/enums/RagdollType.js +7 -0
  115. package/lib/client/enums/Relationship.d.ts +9 -0
  116. package/lib/client/enums/Relationship.js +10 -0
  117. package/lib/client/enums/RopeType.d.ts +5 -0
  118. package/lib/client/enums/RopeType.js +6 -0
  119. package/lib/client/enums/ScreenEffect.d.ts +83 -0
  120. package/lib/client/enums/ScreenEffect.js +84 -0
  121. package/lib/client/enums/SpeechModifier.d.ts +39 -0
  122. package/lib/client/enums/SpeechModifier.js +40 -0
  123. package/lib/client/enums/Vehicle.d.ts +358 -0
  124. package/lib/client/enums/Vehicle.js +376 -0
  125. package/lib/client/enums/Weather.d.ts +21 -0
  126. package/lib/client/enums/Weather.js +22 -0
  127. package/lib/client/enums/ZoneID.d.ts +94 -0
  128. package/lib/client/enums/ZoneID.js +95 -0
  129. package/lib/client/enums/index.d.ts +42 -0
  130. package/lib/client/enums/index.js +42 -0
  131. package/lib/client/hashes/MaterialHash.d.ts +216 -0
  132. package/lib/client/hashes/MaterialHash.js +217 -0
  133. package/lib/client/hashes/PedHash.d.ts +724 -0
  134. package/lib/client/hashes/PedHash.js +725 -0
  135. package/lib/client/hashes/VehicleHash.d.ts +522 -0
  136. package/lib/client/hashes/VehicleHash.js +523 -0
  137. package/lib/client/hashes/WeaponHash.d.ts +147 -0
  138. package/lib/client/hashes/WeaponHash.js +161 -0
  139. package/lib/client/hashes/WeatherTypeHash.d.ts +21 -0
  140. package/lib/client/hashes/WeatherTypeHash.js +22 -0
  141. package/lib/client/hashes/index.d.ts +5 -0
  142. package/lib/client/hashes/index.js +5 -0
  143. package/lib/client/index.d.ts +24 -0
  144. package/lib/client/index.js +25 -0
  145. package/lib/client/interfaces/Dimensions.d.ts +5 -0
  146. package/lib/client/interfaces/Dimensions.js +1 -0
  147. package/lib/client/models/BaseEntity.d.ts +169 -0
  148. package/lib/client/models/BaseEntity.js +459 -0
  149. package/lib/client/models/Entity.d.ts +9 -0
  150. package/lib/client/models/Entity.js +24 -0
  151. package/lib/client/models/EntityBone.d.ts +12 -0
  152. package/lib/client/models/EntityBone.js +24 -0
  153. package/lib/client/models/EntityBoneCollection.d.ts +11 -0
  154. package/lib/client/models/EntityBoneCollection.js +16 -0
  155. package/lib/client/models/Ped.d.ts +199 -0
  156. package/lib/client/models/Ped.js +685 -0
  157. package/lib/client/models/PedBone.d.ts +6 -0
  158. package/lib/client/models/PedBone.js +9 -0
  159. package/lib/client/models/PedBoneCollection.d.ts +8 -0
  160. package/lib/client/models/PedBoneCollection.js +19 -0
  161. package/lib/client/models/Player.d.ts +63 -0
  162. package/lib/client/models/Player.js +174 -0
  163. package/lib/client/models/Prop.d.ts +11 -0
  164. package/lib/client/models/Prop.js +26 -0
  165. package/lib/client/models/Vehicle.d.ts +171 -0
  166. package/lib/client/models/Vehicle.js +551 -0
  167. package/lib/client/models/VehicleDoor.d.ts +19 -0
  168. package/lib/client/models/VehicleDoor.js +42 -0
  169. package/lib/client/models/VehicleDoorCollection.d.ts +14 -0
  170. package/lib/client/models/VehicleDoorCollection.js +61 -0
  171. package/lib/client/models/VehicleMod.d.ts +16 -0
  172. package/lib/client/models/VehicleMod.js +33 -0
  173. package/lib/client/models/VehicleModCollection.d.ts +61 -0
  174. package/lib/client/models/VehicleModCollection.js +227 -0
  175. package/lib/client/models/VehicleToggleMod.d.ts +14 -0
  176. package/lib/client/models/VehicleToggleMod.js +27 -0
  177. package/lib/client/models/VehicleWheel.d.ts +11 -0
  178. package/lib/client/models/VehicleWheel.js +21 -0
  179. package/lib/client/models/VehicleWheelCollection.d.ts +13 -0
  180. package/lib/client/models/VehicleWheelCollection.js +56 -0
  181. package/lib/client/models/VehicleWindow.d.ts +16 -0
  182. package/lib/client/models/VehicleWindow.js +33 -0
  183. package/lib/client/models/VehicleWindowCollection.d.ts +14 -0
  184. package/lib/client/models/VehicleWindowCollection.js +55 -0
  185. package/lib/client/models/index.d.ts +18 -0
  186. package/lib/client/models/index.js +18 -0
  187. package/lib/client/types/EntityType.d.ts +2 -0
  188. package/lib/client/types/EntityType.js +1 -0
  189. package/lib/client/ui/Container.d.ts +11 -0
  190. package/lib/client/ui/Container.js +28 -0
  191. package/lib/client/ui/Effects.d.ts +8 -0
  192. package/lib/client/ui/Effects.js +106 -0
  193. package/lib/client/ui/Fading.d.ts +41 -0
  194. package/lib/client/ui/Fading.js +69 -0
  195. package/lib/client/ui/Hud.d.ts +16 -0
  196. package/lib/client/ui/Hud.js +39 -0
  197. package/lib/client/ui/InstructionalButtons.d.ts +33 -0
  198. package/lib/client/ui/InstructionalButtons.js +53 -0
  199. package/lib/client/ui/LoadingPrompt.d.ts +27 -0
  200. package/lib/client/ui/LoadingPrompt.js +45 -0
  201. package/lib/client/ui/Notification.d.ts +5 -0
  202. package/lib/client/ui/Notification.js +8 -0
  203. package/lib/client/ui/Rectangle.d.ts +10 -0
  204. package/lib/client/ui/Rectangle.js +37 -0
  205. package/lib/client/ui/Scaleform.d.ts +106 -0
  206. package/lib/client/ui/Scaleform.js +234 -0
  207. package/lib/client/ui/Screen.d.ts +16 -0
  208. package/lib/client/ui/Screen.js +72 -0
  209. package/lib/client/ui/Sprite.d.ts +17 -0
  210. package/lib/client/ui/Sprite.js +53 -0
  211. package/lib/client/ui/Text.d.ts +31 -0
  212. package/lib/client/ui/Text.js +102 -0
  213. package/lib/client/ui/Timerbar.d.ts +44 -0
  214. package/lib/client/ui/Timerbar.js +241 -0
  215. package/lib/client/ui/index.d.ts +15 -0
  216. package/lib/client/ui/index.js +15 -0
  217. package/lib/client/ui/interfaces/IButton.d.ts +5 -0
  218. package/lib/client/ui/interfaces/IButton.js +1 -0
  219. package/lib/client/ui/interfaces/IDrawable.d.ts +7 -0
  220. package/lib/client/ui/interfaces/IDrawable.js +1 -0
  221. package/lib/client/ui/interfaces/index.d.ts +2 -0
  222. package/lib/client/ui/interfaces/index.js +1 -0
  223. package/lib/client/ui/menu/Menu.d.ts +108 -0
  224. package/lib/client/ui/menu/Menu.js +802 -0
  225. package/lib/client/ui/menu/MenuControl.d.ts +6 -0
  226. package/lib/client/ui/menu/MenuControl.js +11 -0
  227. package/lib/client/ui/menu/MenuControls.d.ts +9 -0
  228. package/lib/client/ui/menu/MenuControls.js +11 -0
  229. package/lib/client/ui/menu/MenuSettings.d.ts +20 -0
  230. package/lib/client/ui/menu/MenuSettings.js +51 -0
  231. package/lib/client/ui/menu/index.d.ts +6 -0
  232. package/lib/client/ui/menu/index.js +6 -0
  233. package/lib/client/ui/menu/items/UIMenuCheckboxItem.d.ts +20 -0
  234. package/lib/client/ui/menu/items/UIMenuCheckboxItem.js +57 -0
  235. package/lib/client/ui/menu/items/UIMenuItem.d.ts +78 -0
  236. package/lib/client/ui/menu/items/UIMenuItem.js +1090 -0
  237. package/lib/client/ui/menu/items/UIMenuListItem.d.ts +31 -0
  238. package/lib/client/ui/menu/items/UIMenuListItem.js +110 -0
  239. package/lib/client/ui/menu/items/UIMenuSeparatorItem.d.ts +11 -0
  240. package/lib/client/ui/menu/items/UIMenuSeparatorItem.js +29 -0
  241. package/lib/client/ui/menu/items/UIMenuSliderItem.d.ts +47 -0
  242. package/lib/client/ui/menu/items/UIMenuSliderItem.js +173 -0
  243. package/lib/client/ui/menu/items/index.d.ts +6 -0
  244. package/lib/client/ui/menu/items/index.js +6 -0
  245. package/lib/client/ui/menu/items/panels/AbstractUIMenuPanel.d.ts +17 -0
  246. package/lib/client/ui/menu/items/panels/AbstractUIMenuPanel.js +43 -0
  247. package/lib/client/ui/menu/items/panels/UIMenuColorPanel.d.ts +36 -0
  248. package/lib/client/ui/menu/items/panels/UIMenuColorPanel.js +211 -0
  249. package/lib/client/ui/menu/items/panels/UIMenuGridPanel.d.ts +40 -0
  250. package/lib/client/ui/menu/items/panels/UIMenuGridPanel.js +215 -0
  251. package/lib/client/ui/menu/items/panels/UIMenuPercentagePanel.d.ts +26 -0
  252. package/lib/client/ui/menu/items/panels/UIMenuPercentagePanel.js +115 -0
  253. package/lib/client/ui/menu/items/panels/UIMenuStatisticsPanel.d.ts +16 -0
  254. package/lib/client/ui/menu/items/panels/UIMenuStatisticsPanel.js +77 -0
  255. package/lib/client/ui/menu/items/panels/UIMenuStatisticsPanelItem.d.ts +13 -0
  256. package/lib/client/ui/menu/items/panels/UIMenuStatisticsPanelItem.js +32 -0
  257. package/lib/client/ui/menu/items/panels/index.d.ts +6 -0
  258. package/lib/client/ui/menu/items/panels/index.js +6 -0
  259. package/lib/client/ui/menu/modules/ListItem.d.ts +6 -0
  260. package/lib/client/ui/menu/modules/ListItem.js +8 -0
  261. package/lib/client/ui/menu/modules/index.d.ts +1 -0
  262. package/lib/client/ui/menu/modules/index.js +1 -0
  263. package/lib/client/utils/Animations.d.ts +19 -0
  264. package/lib/client/utils/Animations.js +55 -0
  265. package/lib/client/utils/Color.d.ts +15 -0
  266. package/lib/client/utils/Color.js +22 -0
  267. package/lib/client/utils/Crypto.d.ts +3 -0
  268. package/lib/client/utils/Crypto.js +25 -0
  269. package/lib/client/utils/LiteEvent.d.ts +13 -0
  270. package/lib/client/utils/LiteEvent.js +21 -0
  271. package/lib/client/utils/Maths.d.ts +4 -0
  272. package/lib/client/utils/Maths.js +10 -0
  273. package/lib/client/utils/Point.d.ts +9 -0
  274. package/lib/client/utils/Point.js +28 -0
  275. package/lib/client/utils/PointF.d.ts +12 -0
  276. package/lib/client/utils/PointF.js +11 -0
  277. package/lib/client/utils/Quaternion.d.ts +10 -0
  278. package/lib/client/utils/Quaternion.js +23 -0
  279. package/lib/client/utils/Size.d.ts +5 -0
  280. package/lib/client/utils/Size.js +6 -0
  281. package/lib/client/utils/String.d.ts +6 -0
  282. package/lib/client/utils/String.js +25 -0
  283. package/lib/client/utils/Vector2.d.ts +54 -0
  284. package/lib/client/utils/Vector2.js +106 -0
  285. package/lib/client/utils/Vector3.d.ts +69 -0
  286. package/lib/client/utils/Vector3.js +140 -0
  287. package/lib/client/utils/Vector4.d.ts +62 -0
  288. package/lib/client/utils/Vector4.js +124 -0
  289. package/lib/client/utils/enumValues.d.ts +12 -0
  290. package/lib/client/utils/enumValues.js +14 -0
  291. package/lib/client/utils/getStringFromUInt8Array.d.ts +8 -0
  292. package/lib/client/utils/getStringFromUInt8Array.js +10 -0
  293. package/lib/client/utils/getUInt32FromUint8Array.d.ts +8 -0
  294. package/lib/client/utils/getUInt32FromUint8Array.js +8 -0
  295. package/lib/client/utils/index.d.ts +10 -0
  296. package/lib/client/utils/index.js +10 -0
  297. package/lib/client/weapon/DlcWeaponData.d.ts +43 -0
  298. package/lib/client/weapon/DlcWeaponData.js +44 -0
  299. package/lib/client/weapon/Mk2WeaponHash.d.ts +18 -0
  300. package/lib/client/weapon/Mk2WeaponHash.js +25 -0
  301. package/lib/client/weapon/Weapon.d.ts +169 -0
  302. package/lib/client/weapon/Weapon.js +267 -0
  303. package/lib/client/weapon/WeaponAsset.d.ts +55 -0
  304. package/lib/client/weapon/WeaponAsset.js +83 -0
  305. package/lib/client/weapon/WeaponCollection.d.ts +90 -0
  306. package/lib/client/weapon/WeaponCollection.js +186 -0
  307. package/lib/client/weapon/WeaponDisplayNameByHash.d.ts +6 -0
  308. package/lib/client/weapon/WeaponDisplayNameByHash.js +75 -0
  309. package/lib/client/weapon/WeaponGroup.d.ts +18 -0
  310. package/lib/client/weapon/WeaponGroup.js +19 -0
  311. package/lib/client/weapon/WeaponHudStats.d.ts +27 -0
  312. package/lib/client/weapon/WeaponHudStats.js +38 -0
  313. package/lib/client/weapon/WeaponLivery.d.ts +13 -0
  314. package/lib/client/weapon/WeaponLivery.js +14 -0
  315. package/lib/client/weapon/WeaponLiveryColor.d.ts +34 -0
  316. package/lib/client/weapon/WeaponLiveryColor.js +35 -0
  317. package/lib/client/weapon/WeaponTint.d.ts +42 -0
  318. package/lib/client/weapon/WeaponTint.js +43 -0
  319. package/lib/client/weapon/index.d.ts +8 -0
  320. package/lib/client/weapon/index.js +8 -0
  321. package/lib/client/weaponComponent/ComponentAttachmentPoint.d.ts +18 -0
  322. package/lib/client/weaponComponent/ComponentAttachmentPoint.js +19 -0
  323. package/lib/client/weaponComponent/ComponentAttachmentPointByHash.d.ts +7 -0
  324. package/lib/client/weaponComponent/ComponentAttachmentPointByHash.js +309 -0
  325. package/lib/client/weaponComponent/ComponentDisplayNameByHash.d.ts +6 -0
  326. package/lib/client/weaponComponent/ComponentDisplayNameByHash.js +280 -0
  327. package/lib/client/weaponComponent/DlcWeaponComponentData.d.ts +40 -0
  328. package/lib/client/weaponComponent/DlcWeaponComponentData.js +44 -0
  329. package/lib/client/weaponComponent/InvalidWeaponComponent.d.ts +12 -0
  330. package/lib/client/weaponComponent/InvalidWeaponComponent.js +28 -0
  331. package/lib/client/weaponComponent/WeaponComponent.d.ts +81 -0
  332. package/lib/client/weaponComponent/WeaponComponent.js +119 -0
  333. package/lib/client/weaponComponent/WeaponComponentCollection.d.ts +108 -0
  334. package/lib/client/weaponComponent/WeaponComponentCollection.js +172 -0
  335. package/lib/client/weaponComponent/WeaponComponentHash.d.ts +671 -0
  336. package/lib/client/weaponComponent/WeaponComponentHash.js +887 -0
  337. package/lib/client/weaponComponent/WeaponComponentHashesByWeaponHash.d.ts +8 -0
  338. package/lib/client/weaponComponent/WeaponComponentHashesByWeaponHash.js +823 -0
  339. package/lib/client/weaponComponent/WeaponComponentHudStats.d.ts +27 -0
  340. package/lib/client/weaponComponent/WeaponComponentHudStats.js +34 -0
  341. package/lib/client/weaponComponent/index.d.ts +5 -0
  342. package/lib/client/weaponComponent/index.js +5 -0
  343. package/lib/common/Convar.d.ts +8 -0
  344. package/lib/common/Convar.js +20 -0
  345. package/lib/common/Kvp.d.ts +91 -0
  346. package/lib/common/Kvp.js +161 -0
  347. package/lib/common/Resource.d.ts +14 -0
  348. package/lib/common/Resource.js +35 -0
  349. package/lib/common/index.d.ts +5 -0
  350. package/lib/common/index.js +5 -0
  351. package/lib/common/types.d.ts +6 -0
  352. package/lib/common/types.js +1 -0
  353. package/lib/common/utils/Color.d.ts +10 -0
  354. package/lib/common/utils/Color.js +17 -0
  355. package/lib/common/utils/Maths.d.ts +4 -0
  356. package/lib/common/utils/Maths.js +10 -0
  357. package/lib/common/utils/PointF.d.ts +12 -0
  358. package/lib/common/utils/PointF.js +11 -0
  359. package/lib/common/utils/Quaternion.d.ts +10 -0
  360. package/lib/common/utils/Quaternion.js +23 -0
  361. package/lib/common/utils/Vector2.d.ts +58 -0
  362. package/lib/common/utils/Vector2.js +113 -0
  363. package/lib/common/utils/Vector3.d.ts +73 -0
  364. package/lib/common/utils/Vector3.js +147 -0
  365. package/lib/common/utils/Vector4.d.ts +66 -0
  366. package/lib/common/utils/Vector4.js +131 -0
  367. package/lib/common/utils/cleanPlayerName.d.ts +6 -0
  368. package/lib/common/utils/cleanPlayerName.js +27 -0
  369. package/lib/common/utils/enumValues.d.ts +12 -0
  370. package/lib/common/utils/enumValues.js +14 -0
  371. package/lib/common/utils/getStringFromUInt8Array.d.ts +8 -0
  372. package/lib/common/utils/getStringFromUInt8Array.js +10 -0
  373. package/lib/common/utils/getUInt32FromUint8Array.d.ts +8 -0
  374. package/lib/common/utils/getUInt32FromUint8Array.js +8 -0
  375. package/lib/common/utils/index.d.ts +12 -0
  376. package/lib/common/utils/index.js +12 -0
  377. package/lib/server/Anticheat.d.ts +0 -0
  378. package/lib/server/Anticheat.js +25 -0
  379. package/lib/server/Events.d.ts +35 -0
  380. package/lib/server/Events.js +102 -0
  381. package/lib/server/Game.d.ts +56 -0
  382. package/lib/server/Game.js +86 -0
  383. package/lib/server/cfx/StateBagChangeHandler.d.ts +9 -0
  384. package/lib/server/cfx/StateBagChangeHandler.js +4 -0
  385. package/lib/server/cfx/index.d.ts +7 -0
  386. package/lib/server/cfx/index.js +1 -0
  387. package/lib/server/entities/BaseEntity.d.ts +115 -0
  388. package/lib/server/entities/BaseEntity.js +161 -0
  389. package/lib/server/entities/Entity.d.ts +18 -0
  390. package/lib/server/entities/Entity.js +22 -0
  391. package/lib/server/entities/Ped.d.ts +87 -0
  392. package/lib/server/entities/Ped.js +122 -0
  393. package/lib/server/entities/Player.d.ts +163 -0
  394. package/lib/server/entities/Player.js +235 -0
  395. package/lib/server/entities/Prop.d.ts +32 -0
  396. package/lib/server/entities/Prop.js +42 -0
  397. package/lib/server/entities/Vehicle.d.ts +230 -0
  398. package/lib/server/entities/Vehicle.js +331 -0
  399. package/lib/server/entities/index.d.ts +5 -0
  400. package/lib/server/entities/index.js +5 -0
  401. package/lib/server/enum/ClassTypes.d.ts +11 -0
  402. package/lib/server/enum/ClassTypes.js +12 -0
  403. package/lib/server/enum/PopulationType.d.ts +13 -0
  404. package/lib/server/enum/PopulationType.js +14 -0
  405. package/lib/server/enum/VehicleLockStatus.d.ts +9 -0
  406. package/lib/server/enum/VehicleLockStatus.js +10 -0
  407. package/lib/server/enum/VehicleType.d.ts +10 -0
  408. package/lib/server/enum/VehicleType.js +11 -0
  409. package/lib/server/enum/eEntityType.d.ts +5 -0
  410. package/lib/server/enum/eEntityType.js +6 -0
  411. package/lib/server/enum/index.d.ts +5 -0
  412. package/lib/server/enum/index.js +5 -0
  413. package/lib/server/index.d.ts +7 -0
  414. package/lib/server/index.js +7 -0
  415. package/lib/server/type/Anticheat.d.ts +471 -0
  416. package/lib/server/type/Anticheat.js +160 -0
  417. package/lib/server/type/Hash.d.ts +3 -0
  418. package/lib/server/type/Hash.js +2 -0
  419. package/lib/server/utils/index.d.ts +1 -0
  420. package/lib/server/utils/index.js +1 -0
  421. package/package.json +54 -0
@@ -0,0 +1,31 @@
1
+ import { LiteEvent } from '../../../utils';
2
+ import { ListItem } from '../modules/';
3
+ import { UIMenuItem } from './';
4
+ export declare class UIMenuListItem extends UIMenuItem {
5
+ readonly listChanged: LiteEvent;
6
+ readonly listSelected: LiteEvent;
7
+ protected supportsRightBadge: boolean;
8
+ protected supportsRightLabel: boolean;
9
+ private _itemText;
10
+ private _leftArrow;
11
+ private _rightArrow;
12
+ private _index;
13
+ private _arrowOnlyOnSelected;
14
+ private _items;
15
+ private _textWidth;
16
+ constructor(text: string, items: ListItem[], startIndex?: number, description?: string, arrowOnlyOnSelected?: boolean);
17
+ get Items(): ListItem[];
18
+ set Items(value: ListItem[]);
19
+ get SelectedItem(): ListItem;
20
+ set SelectedItem(value: ListItem);
21
+ get SelectedValue(): unknown;
22
+ get Index(): number;
23
+ set Index(value: number);
24
+ get ArrowOnlyOnSelected(): boolean;
25
+ set ArrowOnlyOnSelected(value: boolean);
26
+ get IsMouseInBoundsOfLeftArrow(): boolean;
27
+ get IsMouseInBoundsOfRightArrow(): boolean;
28
+ setVerticalPosition(y: number): void;
29
+ draw(): void;
30
+ private _getSelectedItemCaption;
31
+ }
@@ -0,0 +1,110 @@
1
+ import { Menu, Sprite, Text } from '../../';
2
+ import { Alignment, Font } from '../../../enums';
3
+ import { Color, LiteEvent, Point, Size, String } from '../../../utils';
4
+ import { UIMenuItem } from './';
5
+ export class UIMenuListItem extends UIMenuItem {
6
+ constructor(text, items, startIndex = 0, description, arrowOnlyOnSelected = true) {
7
+ super(text, description);
8
+ this.listChanged = new LiteEvent();
9
+ this.listSelected = new LiteEvent();
10
+ this.supportsRightBadge = false;
11
+ this.supportsRightLabel = false;
12
+ this._index = 0;
13
+ this._arrowOnlyOnSelected = false;
14
+ this._items = [];
15
+ this._textWidth = 0;
16
+ this._leftArrow = new Sprite('commonmenu', 'arrowleft', new Point(), new Size(30, 30));
17
+ this._rightArrow = new Sprite('commonmenu', 'arrowright', new Point(), new Size(30, 30));
18
+ this._itemText = new Text('', new Point(), 0.35, Color.white, Font.ChaletLondon, Alignment.Right);
19
+ this.ArrowOnlyOnSelected = arrowOnlyOnSelected;
20
+ this.Items = items;
21
+ this.Index = startIndex;
22
+ }
23
+ get Items() {
24
+ return this._items;
25
+ }
26
+ set Items(value) {
27
+ if (!value) {
28
+ throw new Error("Items can't be null");
29
+ }
30
+ this._items = value;
31
+ }
32
+ get SelectedItem() {
33
+ return this.Items[this.Index];
34
+ }
35
+ set SelectedItem(value) {
36
+ const index = this.Items.findIndex(i => i.id === value.id);
37
+ if (index >= 0) {
38
+ this.Index = index;
39
+ }
40
+ }
41
+ get SelectedValue() {
42
+ const item = this.SelectedItem;
43
+ return item ? item.value : null;
44
+ }
45
+ get Index() {
46
+ return this._index % this.Items.length;
47
+ }
48
+ set Index(value) {
49
+ if (!this._items.length) {
50
+ return;
51
+ }
52
+ value = value < 0 ? this._items.length - 1 : value > this._items.length - 1 ? 0 : value;
53
+ this._index = value;
54
+ this._textWidth = 0;
55
+ }
56
+ get ArrowOnlyOnSelected() {
57
+ return this._arrowOnlyOnSelected;
58
+ }
59
+ set ArrowOnlyOnSelected(value) {
60
+ this._arrowOnlyOnSelected = value;
61
+ }
62
+ get IsMouseInBoundsOfLeftArrow() {
63
+ return this.parent
64
+ ? this.parent.isMouseInBounds(this._leftArrow.pos, this._leftArrow.size)
65
+ : false;
66
+ }
67
+ get IsMouseInBoundsOfRightArrow() {
68
+ return this.parent
69
+ ? this.parent.isMouseInBounds(this._rightArrow.pos, this._rightArrow.size)
70
+ : false;
71
+ }
72
+ setVerticalPosition(y) {
73
+ const yOffset = y + this.offset.Y + 147;
74
+ this._leftArrow.pos.Y = yOffset;
75
+ this._rightArrow.pos.Y = yOffset;
76
+ this._itemText.pos.Y = yOffset;
77
+ super.setVerticalPosition(y);
78
+ }
79
+ draw() {
80
+ super.draw();
81
+ if (this._textWidth === undefined) {
82
+ const caption = this._getSelectedItemCaption();
83
+ this._itemText.caption = caption;
84
+ this._textWidth = String.measureString(caption, this._itemText.font, this._itemText.scale, Menu.screenWidth);
85
+ }
86
+ this._rightArrow.pos.X = this.offset.X + (this.parent ? this.parent.WidthOffset : 0) + 400;
87
+ this._itemText.pos.X = this._rightArrow.pos.X + 5;
88
+ this._itemText.color = this.enabled
89
+ ? this.selected
90
+ ? this.HighlightedForeColor
91
+ : this.ForeColor
92
+ : new Color(255, 163, 159, 148);
93
+ if (this._arrowOnlyOnSelected && !this.selected) {
94
+ this._itemText.pos.X += this._rightArrow.size.width / 2;
95
+ }
96
+ else {
97
+ this._leftArrow.color = this._itemText.color;
98
+ this._rightArrow.color = this._itemText.color;
99
+ this._leftArrow.pos.X =
100
+ this._itemText.pos.X - this._textWidth - this._leftArrow.size.width + 5;
101
+ this._leftArrow.draw(Menu.screenResolution);
102
+ this._rightArrow.draw(Menu.screenResolution);
103
+ }
104
+ this._itemText.draw(undefined, Menu.screenResolution);
105
+ }
106
+ _getSelectedItemCaption() {
107
+ const item = this.SelectedItem;
108
+ return item ? item.name : '';
109
+ }
110
+ }
@@ -0,0 +1,11 @@
1
+ import { UIMenuItem } from './';
2
+ export declare class UIMenuSeparatorItem extends UIMenuItem {
3
+ protected supportsDescription: boolean;
4
+ protected supportsPanels: boolean;
5
+ protected supportsLeftBadge: boolean;
6
+ protected supportsRightBadge: boolean;
7
+ protected supportsRightLabel: boolean;
8
+ constructor(text?: string);
9
+ setVerticalPosition(y: number): void;
10
+ draw(): void;
11
+ }
@@ -0,0 +1,29 @@
1
+ import { UIMenuItem } from './';
2
+ import { Alignment } from '../../../enums';
3
+ import { Menu } from '../';
4
+ export class UIMenuSeparatorItem extends UIMenuItem {
5
+ constructor(text) {
6
+ super(text ?? '');
7
+ this.supportsDescription = false;
8
+ this.supportsPanels = false;
9
+ this.supportsLeftBadge = false;
10
+ this.supportsRightBadge = false;
11
+ this.supportsRightLabel = false;
12
+ this.text.alignment = Alignment.Centered;
13
+ }
14
+ setVerticalPosition(y) {
15
+ const yOffset = y + this.offset.Y;
16
+ this.rectangle.pos.Y = yOffset + 144;
17
+ this.text.pos.Y = yOffset + 147;
18
+ }
19
+ draw() {
20
+ const width = 431 + (this.parent ? this.parent.WidthOffset : 0);
21
+ this.rectangle.size.width = width;
22
+ this.rectangle.pos.X = this.offset.X;
23
+ this.rectangle.draw(undefined, Menu.screenResolution);
24
+ if (this.text.caption !== '') {
25
+ this.text.pos.X = this.offset.X + width / 2;
26
+ this.text.draw(undefined, Menu.screenResolution);
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,47 @@
1
+ import { UIMenuItem } from './';
2
+ import { Color, LiteEvent } from '../../../utils';
3
+ import { BadgeStyle } from '../../../enums';
4
+ export declare class UIMenuSliderItem extends UIMenuItem {
5
+ readonly sliderChanged: LiteEvent;
6
+ readonly sliderSelected: LiteEvent;
7
+ protected supportsRightBadge: boolean;
8
+ protected supportsRightLabel: boolean;
9
+ private _index;
10
+ private _items;
11
+ private _showDivider;
12
+ private _arrowOnlyOnSelected;
13
+ private _leftSliderBadge;
14
+ private _rightSliderBadge;
15
+ private readonly _background;
16
+ private readonly _slider;
17
+ private readonly _divider;
18
+ private readonly _leftArrow;
19
+ private readonly _rightArrow;
20
+ private readonly _leftSliderBadgeSprite;
21
+ private readonly _rightSliderBadgeSprite;
22
+ constructor(text: string, items: unknown[], startIndex?: number, description?: string, showDivider?: boolean, arrowOnlyOnSelected?: boolean);
23
+ get Index(): number;
24
+ set Index(value: number);
25
+ get Item(): unknown;
26
+ get Items(): unknown[];
27
+ set Items(value: unknown[]);
28
+ get ShowDivider(): boolean;
29
+ set ShowDivider(value: boolean);
30
+ get ArrowOnlyOnSelected(): boolean;
31
+ set ArrowOnlyOnSelected(value: boolean);
32
+ get BackgroundColor(): Color;
33
+ set BackgroundColor(value: Color);
34
+ get SliderColor(): Color;
35
+ set SliderColor(value: Color);
36
+ get DividerColor(): Color;
37
+ set DividerColor(value: Color);
38
+ get LeftSliderBadge(): BadgeStyle;
39
+ set LeftSliderBadge(value: BadgeStyle);
40
+ get RightSliderBadge(): BadgeStyle;
41
+ set RightSliderBadge(value: BadgeStyle);
42
+ get IsMouseInBoundsOfLeftArrow(): boolean;
43
+ get IsMouseInBoundsOfRightArrow(): boolean;
44
+ indexToItem(index: number): unknown;
45
+ setVerticalPosition(y: number): void;
46
+ draw(): void;
47
+ }
@@ -0,0 +1,173 @@
1
+ import { Menu, Rectangle, Sprite } from '../../';
2
+ import { UIMenuItem } from './';
3
+ import { Color, LiteEvent, Point, Size } from '../../../utils';
4
+ import { BadgeStyle } from '../../../enums';
5
+ export class UIMenuSliderItem extends UIMenuItem {
6
+ constructor(text, items, startIndex = 0, description, showDivider = false, arrowOnlyOnSelected = false) {
7
+ super(text, description);
8
+ this.sliderChanged = new LiteEvent();
9
+ this.sliderSelected = new LiteEvent();
10
+ this.supportsRightBadge = false;
11
+ this.supportsRightLabel = false;
12
+ this._index = 0;
13
+ this._items = [];
14
+ this._showDivider = true;
15
+ this._arrowOnlyOnSelected = false;
16
+ this._leftSliderBadge = BadgeStyle.None;
17
+ this._rightSliderBadge = BadgeStyle.None;
18
+ this._background = new Rectangle(new Point(), new Size(150, 9), new Color(255, 4, 32, 57));
19
+ this._slider = new Rectangle(new Point(), new Size(75, 9), new Color(255, 57, 116, 200));
20
+ this._divider = new Rectangle(new Point(), new Size(2.5, 20), Color.whiteSmoke);
21
+ this._leftArrow = new Sprite('commonmenutu', 'arrowleft', new Point(), new Size(15, 15));
22
+ this._rightArrow = new Sprite('commonmenutu', 'arrowright', new Point(), new Size(15, 15));
23
+ this._leftSliderBadgeSprite = new Sprite('', '');
24
+ this._rightSliderBadgeSprite = new Sprite('', '');
25
+ this.ArrowOnlyOnSelected = arrowOnlyOnSelected;
26
+ this.ShowDivider = showDivider;
27
+ this.Items = items;
28
+ this.Index = startIndex;
29
+ }
30
+ get Index() {
31
+ return this._index % this._items.length;
32
+ }
33
+ set Index(value) {
34
+ this._index = 100000000 - (100000000 % this._items.length) + value;
35
+ }
36
+ get Item() {
37
+ return this._items[this.Index];
38
+ }
39
+ get Items() {
40
+ return this._items;
41
+ }
42
+ set Items(value) {
43
+ this._items = value || [];
44
+ }
45
+ get ShowDivider() {
46
+ return this._showDivider;
47
+ }
48
+ set ShowDivider(value) {
49
+ this._showDivider = value;
50
+ }
51
+ get ArrowOnlyOnSelected() {
52
+ return this._arrowOnlyOnSelected;
53
+ }
54
+ set ArrowOnlyOnSelected(value) {
55
+ this._arrowOnlyOnSelected = value;
56
+ }
57
+ get BackgroundColor() {
58
+ return this._background.color;
59
+ }
60
+ set BackgroundColor(value) {
61
+ this._background.color = value || new Color(255, 4, 32, 57);
62
+ }
63
+ get SliderColor() {
64
+ return this._slider.color;
65
+ }
66
+ set SliderColor(value) {
67
+ this._slider.color = value || new Color(255, 57, 116, 200);
68
+ }
69
+ get DividerColor() {
70
+ return this._divider.color;
71
+ }
72
+ set DividerColor(value) {
73
+ this._divider.color = value || Color.whiteSmoke;
74
+ }
75
+ get LeftSliderBadge() {
76
+ return this._leftSliderBadge;
77
+ }
78
+ set LeftSliderBadge(value) {
79
+ value = Number(value);
80
+ this._leftSliderBadge = value;
81
+ this._leftSliderBadgeSprite.TextureDict = UIMenuItem.badgeToTextureDict(value);
82
+ this._leftSliderBadgeSprite.size = UIMenuItem.getBadgeSize(value);
83
+ }
84
+ get RightSliderBadge() {
85
+ return this._rightSliderBadge;
86
+ }
87
+ set RightSliderBadge(value) {
88
+ value = Number(value);
89
+ this._rightSliderBadge = value;
90
+ this._rightSliderBadgeSprite.TextureDict = UIMenuItem.badgeToTextureDict(value);
91
+ this._rightSliderBadgeSprite.size = UIMenuItem.getBadgeSize(value);
92
+ }
93
+ get IsMouseInBoundsOfLeftArrow() {
94
+ return this.parent
95
+ ? this.parent.isMouseInBounds(this._leftArrow.pos, this._leftArrow.size)
96
+ : false;
97
+ }
98
+ get IsMouseInBoundsOfRightArrow() {
99
+ return this.parent
100
+ ? this.parent.isMouseInBounds(this._rightArrow.pos, this._rightArrow.size)
101
+ : false;
102
+ }
103
+ indexToItem(index) {
104
+ return this._items[index];
105
+ }
106
+ setVerticalPosition(y) {
107
+ const yOffset = y + this.offset.Y;
108
+ this._background.pos.Y = yOffset + 158.5;
109
+ this._slider.pos.Y = yOffset + 158.5;
110
+ this._divider.pos.Y = yOffset + 153;
111
+ this._leftArrow.pos.Y = yOffset + 155.5;
112
+ this._rightArrow.pos.Y = yOffset + 155.5;
113
+ this._leftSliderBadgeSprite.pos.Y =
114
+ yOffset + 142 + UIMenuItem.getBadgeSpriteHeightOffset(this._leftSliderBadgeSprite);
115
+ this._rightSliderBadgeSprite.pos.Y =
116
+ yOffset + 142 + UIMenuItem.getBadgeSpriteHeightOffset(this._rightSliderBadgeSprite);
117
+ super.setVerticalPosition(y);
118
+ }
119
+ draw() {
120
+ super.draw();
121
+ const showArrows = !this._arrowOnlyOnSelected || this.selected;
122
+ const x = this.offset.X + (this.parent ? this.parent.WidthOffset : 0);
123
+ this._background.pos.X = 431 + x - this._background.size.width;
124
+ if (showArrows) {
125
+ this._background.pos.X -= this._rightArrow.size.width / 2;
126
+ this._leftSliderBadgeSprite.pos.X = -this._leftArrow.size.width / 2;
127
+ }
128
+ else {
129
+ this._leftSliderBadgeSprite.pos.X = 0;
130
+ }
131
+ if (this._rightSliderBadge !== BadgeStyle.None) {
132
+ const widthOffset = UIMenuItem.getBadgeSpriteWidthOffset(this._rightSliderBadgeSprite);
133
+ this._background.pos.X -= 40;
134
+ this._rightSliderBadgeSprite.pos.X = 431 + x;
135
+ this._rightSliderBadgeSprite.pos.X -= this._rightSliderBadgeSprite.size.width + widthOffset;
136
+ this._rightSliderBadgeSprite.textureName = this.badgeToTextureName(this._rightSliderBadge);
137
+ this._rightSliderBadgeSprite.color = this.badgeToColor(this._rightSliderBadge);
138
+ this._rightSliderBadgeSprite.draw(Menu.screenResolution);
139
+ }
140
+ else {
141
+ this._background.pos.X -= this._rightArrow.size.width / 2;
142
+ }
143
+ if (this._leftSliderBadge !== BadgeStyle.None) {
144
+ const widthOffset = UIMenuItem.getBadgeSpriteWidthOffset(this._leftSliderBadgeSprite);
145
+ this._leftSliderBadgeSprite.pos.X -= this._leftSliderBadgeSprite.size.width + widthOffset;
146
+ this._leftSliderBadgeSprite.pos.X += this._background.pos.X;
147
+ this._leftSliderBadgeSprite.textureName = this.badgeToTextureName(this._leftSliderBadge);
148
+ this._leftSliderBadgeSprite.color = this.badgeToColor(this._leftSliderBadge);
149
+ this._leftSliderBadgeSprite.draw(Menu.screenResolution);
150
+ }
151
+ const sliderXOffset = ((this._background.size.width - this._slider.size.width) / (this._items.length - 1)) *
152
+ this.Index;
153
+ this._slider.pos.X = this._background.pos.X + sliderXOffset;
154
+ this._leftArrow.color = this.enabled
155
+ ? this.selected
156
+ ? Color.black
157
+ : Color.whiteSmoke
158
+ : new Color(255, 163, 159, 148);
159
+ this._rightArrow.color = this._leftArrow.color;
160
+ this._background.draw(undefined, Menu.screenResolution);
161
+ this._slider.draw(undefined, Menu.screenResolution);
162
+ if (showArrows) {
163
+ this._leftArrow.pos.X = this._background.pos.X - 15;
164
+ this._rightArrow.pos.X = this._background.pos.X + this._background.size.width;
165
+ this._leftArrow.draw(Menu.screenResolution);
166
+ this._rightArrow.draw(Menu.screenResolution);
167
+ }
168
+ if (this._showDivider) {
169
+ this._divider.pos.X = this._background.pos.X + this._background.size.width / 2;
170
+ this._divider.draw(undefined, Menu.screenResolution);
171
+ }
172
+ }
173
+ }
@@ -0,0 +1,6 @@
1
+ export * from './panels';
2
+ export { UIMenuItem } from './UIMenuItem';
3
+ export { UIMenuCheckboxItem } from './UIMenuCheckboxItem';
4
+ export { UIMenuListItem } from './UIMenuListItem';
5
+ export { UIMenuSeparatorItem } from './UIMenuSeparatorItem';
6
+ export { UIMenuSliderItem } from './UIMenuSliderItem';
@@ -0,0 +1,6 @@
1
+ export * from './panels';
2
+ export { UIMenuItem } from './UIMenuItem';
3
+ export { UIMenuCheckboxItem } from './UIMenuCheckboxItem';
4
+ export { UIMenuListItem } from './UIMenuListItem';
5
+ export { UIMenuSeparatorItem } from './UIMenuSeparatorItem';
6
+ export { UIMenuSliderItem } from './UIMenuSliderItem';
@@ -0,0 +1,17 @@
1
+ import { UIMenuItem } from '../';
2
+ import { Rectangle, Sprite } from '../../../';
3
+ import { Menu } from '../../';
4
+ export declare abstract class AbstractUIMenuPanel {
5
+ readonly id: string;
6
+ protected parentItem: UIMenuItem | undefined;
7
+ protected enabled: boolean;
8
+ protected readonly background: Sprite | Rectangle | undefined;
9
+ get ParentMenu(): Menu | undefined;
10
+ get ParentItem(): UIMenuItem | undefined;
11
+ set ParentItem(value: UIMenuItem | undefined);
12
+ get Enabled(): boolean;
13
+ set Enabled(value: boolean);
14
+ get Height(): number;
15
+ setVerticalPosition(y: number): void;
16
+ draw(): void;
17
+ }
@@ -0,0 +1,43 @@
1
+ import { Crypto } from '../../../../utils';
2
+ import { Sprite } from '../../../';
3
+ import { Menu } from '../../';
4
+ export class AbstractUIMenuPanel {
5
+ constructor() {
6
+ this.id = Crypto.uuidv4();
7
+ this.enabled = true;
8
+ }
9
+ get ParentMenu() {
10
+ return this.parentItem ? this.parentItem.parent : undefined;
11
+ }
12
+ get ParentItem() {
13
+ return this.parentItem ?? undefined;
14
+ }
15
+ set ParentItem(value) {
16
+ this.parentItem = value;
17
+ }
18
+ get Enabled() {
19
+ return this.enabled;
20
+ }
21
+ set Enabled(value) {
22
+ this.enabled = value;
23
+ }
24
+ get Height() {
25
+ return this.background ? this.background.size.height : 0;
26
+ }
27
+ setVerticalPosition(y) {
28
+ if (this.background)
29
+ this.background.pos.Y = y;
30
+ }
31
+ draw() {
32
+ if (this.background) {
33
+ this.background.size.width = 431 + (this.ParentMenu ? this.ParentMenu.WidthOffset : 0);
34
+ this.background.pos.X = this.parentItem ? this.parentItem.offset.X : 0;
35
+ if (this.background instanceof Sprite) {
36
+ this.background.draw(Menu.screenResolution);
37
+ }
38
+ else {
39
+ this.background.draw(undefined, Menu.screenResolution);
40
+ }
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,36 @@
1
+ import { Color } from '../../../../utils';
2
+ import { AbstractUIMenuPanel } from './';
3
+ import { Sprite } from '../../../';
4
+ export declare class UIMenuColorPanel extends AbstractUIMenuPanel {
5
+ protected readonly background: Sprite;
6
+ private _title;
7
+ private _text;
8
+ private _colors;
9
+ private _bar;
10
+ private _lastColor;
11
+ private readonly _leftArrow;
12
+ private readonly _rightArrow;
13
+ private readonly _selectedRectangle;
14
+ private _min;
15
+ private _max;
16
+ private _total;
17
+ private _index;
18
+ constructor(title: string, colors: Color[]);
19
+ get Title(): string;
20
+ set Title(value: string);
21
+ get Colors(): Color[];
22
+ set Colors(value: Color[]);
23
+ get Color(): Color;
24
+ set Color(value: Color);
25
+ get Index(): number;
26
+ set Index(value: number);
27
+ updateParentItem(): void;
28
+ setVerticalPosition(y: number): void;
29
+ draw(): void;
30
+ private _refreshIndex;
31
+ private _updateSelection;
32
+ private _updateText;
33
+ private _goLeft;
34
+ private _goRight;
35
+ private _processControls;
36
+ }