@open-core/framework 1.0.5-beta.1 → 1.0.5

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 (397) hide show
  1. package/dist/adapters/contracts/IEngineEvents.d.ts +5 -2
  2. package/dist/adapters/contracts/IEngineEvents.js +7 -0
  3. package/dist/adapters/contracts/IExports.d.ts +2 -2
  4. package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
  5. package/dist/adapters/contracts/IPlatformContext.js +8 -0
  6. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +25 -0
  7. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +8 -0
  8. package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
  9. package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
  10. package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
  11. package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
  12. package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
  13. package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
  14. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
  15. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
  16. package/dist/adapters/contracts/client/camera/IClientCameraPort.d.ts +107 -0
  17. package/dist/adapters/contracts/client/camera/IClientCameraPort.js +8 -0
  18. package/dist/adapters/contracts/client/camera/index.d.ts +1 -0
  19. package/dist/adapters/contracts/client/camera/index.js +1 -0
  20. package/dist/adapters/contracts/client/index.d.ts +11 -0
  21. package/dist/adapters/contracts/client/index.js +11 -0
  22. package/dist/adapters/contracts/client/ped/IClientPedPort.d.ts +62 -0
  23. package/dist/adapters/contracts/client/ped/IClientPedPort.js +5 -0
  24. package/dist/adapters/contracts/client/ped/index.d.ts +1 -0
  25. package/dist/adapters/contracts/client/ped/index.js +1 -0
  26. package/dist/adapters/contracts/client/progress/IClientProgressPort.d.ts +53 -0
  27. package/dist/adapters/contracts/client/progress/IClientProgressPort.js +8 -0
  28. package/dist/adapters/contracts/client/progress/index.d.ts +1 -0
  29. package/dist/adapters/contracts/client/progress/index.js +1 -0
  30. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +6 -0
  31. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +6 -0
  32. package/dist/adapters/contracts/client/spawn/IClientSpawnPort.d.ts +19 -0
  33. package/dist/adapters/contracts/client/spawn/IClientSpawnPort.js +2 -0
  34. package/dist/adapters/contracts/client/spawn/index.d.ts +4 -0
  35. package/dist/adapters/contracts/client/spawn/index.js +4 -0
  36. package/dist/adapters/contracts/client/spawn/types.d.ts +17 -0
  37. package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
  38. package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
  39. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
  40. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
  41. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
  42. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
  43. package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
  44. package/dist/adapters/contracts/client/ui/index.js +4 -0
  45. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +14 -0
  46. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
  47. package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
  48. package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
  49. package/dist/adapters/contracts/client/ui/webview/types.d.ts +27 -0
  50. package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
  51. package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.d.ts +166 -0
  52. package/dist/adapters/contracts/client/vehicle/IClientVehiclePort.js +8 -0
  53. package/dist/adapters/contracts/client/vehicle/index.d.ts +1 -0
  54. package/dist/adapters/contracts/client/vehicle/index.js +1 -0
  55. package/dist/adapters/contracts/index.d.ts +4 -2
  56. package/dist/adapters/contracts/index.js +4 -3
  57. package/dist/adapters/contracts/runtime/index.d.ts +1 -0
  58. package/dist/adapters/contracts/runtime/index.js +1 -0
  59. package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
  60. package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
  61. package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
  62. package/dist/adapters/contracts/server/IEntityServer.js +0 -26
  63. package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
  64. package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
  65. package/dist/adapters/contracts/server/index.d.ts +10 -0
  66. package/dist/adapters/contracts/server/index.js +10 -0
  67. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
  68. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
  69. package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
  70. package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
  71. package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
  72. package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
  73. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
  74. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
  75. package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
  76. package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
  77. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
  78. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
  79. package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
  80. package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
  81. package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
  82. package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
  83. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
  84. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
  85. package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
  86. package/dist/adapters/contracts/server/player-state/index.js +1 -0
  87. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
  88. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
  89. package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
  90. package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
  91. package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
  92. package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
  93. package/dist/adapters/contracts/transport/events.api.d.ts +3 -3
  94. package/dist/adapters/contracts/transport/index.d.ts +4 -0
  95. package/dist/adapters/contracts/transport/index.js +4 -0
  96. package/dist/adapters/contracts/transport/rpc.api.d.ts +3 -3
  97. package/dist/adapters/index.d.ts +3 -14
  98. package/dist/adapters/index.js +3 -20
  99. package/dist/adapters/node/node-capabilities.d.ts +11 -11
  100. package/dist/adapters/node/node-capabilities.js +15 -27
  101. package/dist/adapters/node/node-engine-events.d.ts +1 -1
  102. package/dist/adapters/node/node-engine-events.js +2 -1
  103. package/dist/adapters/node/node-entity-server.d.ts +2 -2
  104. package/dist/adapters/node/node-entity-server.js +2 -2
  105. package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
  106. package/dist/adapters/node/node-ped-appearance-client.js +2 -2
  107. package/dist/adapters/node/node-platform.js +4 -4
  108. package/dist/adapters/node/node-player-server.d.ts +3 -2
  109. package/dist/adapters/node/node-player-server.js +8 -2
  110. package/dist/adapters/node/transport/node.events.d.ts +4 -4
  111. package/dist/adapters/node/transport/node.rpc.d.ts +3 -3
  112. package/dist/adapters/node/transport/node.rpc.js +1 -1
  113. package/dist/adapters/register-capabilities.d.ts +1 -1
  114. package/dist/adapters/register-capabilities.js +1 -3
  115. package/dist/adapters/register-client-capabilities.d.ts +3 -2
  116. package/dist/adapters/register-client-capabilities.js +16 -41
  117. package/dist/contracts/client.d.ts +5 -0
  118. package/dist/contracts/client.js +5 -0
  119. package/dist/contracts/server.d.ts +19 -0
  120. package/dist/contracts/server.js +19 -0
  121. package/dist/contracts.d.ts +5 -0
  122. package/dist/contracts.js +5 -0
  123. package/dist/index.d.ts +2 -1
  124. package/dist/index.js +2 -1
  125. package/dist/kernel/logger/client-log-console.d.ts +4 -0
  126. package/dist/kernel/logger/client-log-console.js +43 -0
  127. package/dist/kernel/logger/core-logger.d.ts +3 -1
  128. package/dist/kernel/logger/core-logger.js +4 -2
  129. package/dist/kernel/logger/index.d.ts +3 -1
  130. package/dist/kernel/logger/index.js +2 -1
  131. package/dist/kernel/logger/logger.types.d.ts +1 -0
  132. package/dist/kernel/logger/logger.types.js +35 -0
  133. package/dist/kernel/logger/transports/buffered.transport.js +4 -4
  134. package/dist/kernel/logger/transports/console.transport.js +2 -2
  135. package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
  136. package/dist/kernel/logger/transports/simple-console.transport.js +15 -10
  137. package/dist/kernel-public.d.ts +1 -0
  138. package/dist/kernel-public.js +1 -0
  139. package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
  140. package/dist/runtime/client/adapter/client-adapter.js +11 -0
  141. package/dist/runtime/client/adapter/index.d.ts +20 -0
  142. package/dist/runtime/client/adapter/index.js +20 -0
  143. package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
  144. package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
  145. package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
  146. package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
  147. package/dist/runtime/client/adapter/node-camera-port.d.ts +19 -0
  148. package/dist/runtime/client/adapter/node-camera-port.js +31 -0
  149. package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
  150. package/dist/runtime/client/adapter/node-client-adapter.js +64 -0
  151. package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +11 -0
  152. package/dist/runtime/client/adapter/node-local-player-bridge.js +27 -0
  153. package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
  154. package/dist/runtime/client/adapter/node-log-console.js +48 -0
  155. package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
  156. package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
  157. package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
  158. package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-notification-bridge.js} +7 -11
  159. package/dist/runtime/client/adapter/node-ped-port.d.ts +20 -0
  160. package/dist/runtime/client/adapter/node-ped-port.js +38 -0
  161. package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
  162. package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
  163. package/dist/runtime/client/adapter/node-progress-port.d.ts +8 -0
  164. package/dist/runtime/client/adapter/node-progress-port.js +27 -0
  165. package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +22 -0
  166. package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
  167. package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
  168. package/dist/runtime/client/adapter/node-spawn-bridge.js +22 -0
  169. package/dist/runtime/client/adapter/node-vehicle-port.d.ts +31 -0
  170. package/dist/runtime/client/adapter/node-vehicle-port.js +73 -0
  171. package/dist/runtime/client/adapter/node-webview-bridge.d.ts +16 -0
  172. package/dist/runtime/client/adapter/node-webview-bridge.js +45 -0
  173. package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
  174. package/dist/runtime/client/adapter/platform-bridge.js +1 -0
  175. package/dist/runtime/client/adapter/registry.d.ts +9 -0
  176. package/dist/runtime/client/adapter/registry.js +85 -0
  177. package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
  178. package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
  179. package/dist/runtime/client/api.d.ts +2 -1
  180. package/dist/runtime/client/api.js +2 -1
  181. package/dist/runtime/client/client-bootstrap.js +51 -44
  182. package/dist/runtime/client/client-core.d.ts +2 -0
  183. package/dist/runtime/client/client-core.js +9 -0
  184. package/dist/runtime/client/client-runtime.d.ts +3 -0
  185. package/dist/runtime/client/client-runtime.js +3 -0
  186. package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
  187. package/dist/runtime/client/controllers/appearance.controller.js +17 -6
  188. package/dist/runtime/client/controllers/spawner.controller.js +6 -3
  189. package/dist/runtime/client/decorators/controller.js +2 -10
  190. package/dist/runtime/client/decorators/onView.d.ts +3 -3
  191. package/dist/runtime/client/decorators/onView.js +3 -3
  192. package/dist/runtime/client/index.d.ts +1 -0
  193. package/dist/runtime/client/index.js +1 -0
  194. package/dist/runtime/client/library/create-client-library.js +9 -1
  195. package/dist/runtime/client/services/appearance.service.d.ts +2 -2
  196. package/dist/runtime/client/services/appearance.service.js +7 -4
  197. package/dist/runtime/client/services/blip.service.d.ts +6 -93
  198. package/dist/runtime/client/services/blip.service.js +58 -153
  199. package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
  200. package/dist/runtime/client/services/camera-effects.registry.js +20 -7
  201. package/dist/runtime/client/services/camera.d.ts +4 -106
  202. package/dist/runtime/client/services/camera.js +36 -98
  203. package/dist/runtime/client/services/cinematic.d.ts +5 -1
  204. package/dist/runtime/client/services/cinematic.js +45 -30
  205. package/dist/runtime/client/services/index.d.ts +1 -0
  206. package/dist/runtime/client/services/index.js +1 -0
  207. package/dist/runtime/client/services/marker.service.d.ts +12 -63
  208. package/dist/runtime/client/services/marker.service.js +62 -97
  209. package/dist/runtime/client/services/notification.service.d.ts +6 -57
  210. package/dist/runtime/client/services/notification.service.js +43 -81
  211. package/dist/runtime/client/services/ped.service.d.ts +6 -148
  212. package/dist/runtime/client/services/ped.service.js +42 -221
  213. package/dist/runtime/client/services/progress.service.d.ts +4 -75
  214. package/dist/runtime/client/services/progress.service.js +20 -178
  215. package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
  216. package/dist/runtime/client/services/session-bridge.service.js +62 -0
  217. package/dist/runtime/client/services/spawn.service.d.ts +4 -56
  218. package/dist/runtime/client/services/spawn.service.js +29 -191
  219. package/dist/runtime/client/services/streaming.service.d.ts +5 -126
  220. package/dist/runtime/client/services/streaming.service.js +72 -217
  221. package/dist/runtime/client/services/textui.service.d.ts +5 -45
  222. package/dist/runtime/client/services/textui.service.js +55 -88
  223. package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
  224. package/dist/runtime/client/services/vehicle-client.service.js +128 -374
  225. package/dist/runtime/client/services/vehicle.service.d.ts +4 -147
  226. package/dist/runtime/client/services/vehicle.service.js +33 -239
  227. package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
  228. package/dist/runtime/client/system/processors/export.processor.js +16 -3
  229. package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
  230. package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
  231. package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
  232. package/dist/runtime/client/system/processors/interval.processor.js +17 -4
  233. package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
  234. package/dist/runtime/client/system/processors/key.processor.js +18 -5
  235. package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
  236. package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
  237. package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
  238. package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
  239. package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
  240. package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
  241. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
  242. package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
  243. package/dist/runtime/client/system/processors/tick.processor.js +16 -3
  244. package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
  245. package/dist/runtime/client/system/processors/view.processor.js +21 -10
  246. package/dist/runtime/client/system/processors.register.d.ts +1 -0
  247. package/dist/runtime/client/system/processors.register.js +8 -0
  248. package/dist/runtime/client/ui-bridge.d.ts +2 -114
  249. package/dist/runtime/client/ui-bridge.js +2 -194
  250. package/dist/runtime/client/webview-bridge.d.ts +34 -0
  251. package/dist/runtime/client/webview-bridge.js +103 -0
  252. package/dist/runtime/client/webview.service.d.ts +15 -0
  253. package/dist/runtime/client/webview.service.js +103 -0
  254. package/dist/runtime/server/adapter/index.d.ts +5 -0
  255. package/dist/runtime/server/adapter/index.js +5 -0
  256. package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
  257. package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
  258. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
  259. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +95 -0
  260. package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
  261. package/dist/runtime/server/adapter/node-player-lifecycle-server.js +56 -0
  262. package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
  263. package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
  264. package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
  265. package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
  266. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
  267. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +58 -0
  268. package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
  269. package/dist/runtime/server/adapter/player-adapter.js +28 -0
  270. package/dist/runtime/server/adapter/registry.d.ts +26 -0
  271. package/dist/runtime/server/adapter/registry.js +101 -0
  272. package/dist/runtime/server/adapter/serialization.d.ts +6 -0
  273. package/dist/runtime/server/adapter/serialization.js +9 -0
  274. package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
  275. package/dist/runtime/server/adapter/server-adapter.js +14 -0
  276. package/dist/runtime/server/api.d.ts +2 -1
  277. package/dist/runtime/server/api.js +2 -1
  278. package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
  279. package/dist/runtime/server/apis/appearance.api.js +20 -7
  280. package/dist/runtime/server/apis/chat.api.js +6 -5
  281. package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
  282. package/dist/runtime/server/apis/npcs.api.js +28 -57
  283. package/dist/runtime/server/apis/parallel-compute.api.js +1 -0
  284. package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
  285. package/dist/runtime/server/apis/vehicle-modification.api.js +13 -6
  286. package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
  287. package/dist/runtime/server/apis/vehicles.api.js +55 -40
  288. package/dist/runtime/server/bootstrap.js +28 -19
  289. package/dist/runtime/server/controllers/channel.controller.js +2 -1
  290. package/dist/runtime/server/controllers/command-export.controller.js +5 -3
  291. package/dist/runtime/server/controllers/player-export.controller.js +5 -4
  292. package/dist/runtime/server/controllers/remote-command-execution.controller.js +2 -1
  293. package/dist/runtime/server/controllers/session.controller.js +3 -2
  294. package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
  295. package/dist/runtime/server/controllers/vehicle.controller.js +13 -7
  296. package/dist/runtime/server/core.d.ts +2 -0
  297. package/dist/runtime/server/core.js +9 -1
  298. package/dist/runtime/server/decorators/command.d.ts +2 -0
  299. package/dist/runtime/server/decorators/command.js +3 -1
  300. package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
  301. package/dist/runtime/server/entities/npc.d.ts +3 -1
  302. package/dist/runtime/server/entities/npc.js +3 -3
  303. package/dist/runtime/server/entities/player.d.ts +9 -12
  304. package/dist/runtime/server/entities/player.js +49 -31
  305. package/dist/runtime/server/entities/vehicle.js +2 -2
  306. package/dist/runtime/server/error-handler.js +13 -2
  307. package/dist/runtime/server/helpers/command-validation.helper.js +21 -8
  308. package/dist/runtime/server/helpers/function-helper.d.ts +1 -0
  309. package/dist/runtime/server/helpers/function-helper.js +15 -8
  310. package/dist/runtime/server/implementations/local/channel.local.d.ts +1 -1
  311. package/dist/runtime/server/implementations/local/channel.local.js +3 -2
  312. package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
  313. package/dist/runtime/server/implementations/local/player.local.js +23 -11
  314. package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
  315. package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
  316. package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
  317. package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
  318. package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
  319. package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
  320. package/dist/runtime/server/library/create-server-library.js +17 -2
  321. package/dist/runtime/server/ports/channel.api-port.d.ts +1 -1
  322. package/dist/runtime/server/runtime.d.ts +3 -0
  323. package/dist/runtime/server/runtime.js +1 -15
  324. package/dist/runtime/server/services/appearance.service.d.ts +0 -95
  325. package/dist/runtime/server/services/appearance.service.js +15 -192
  326. package/dist/runtime/server/services/parallel/worker-pool.d.ts +1 -1
  327. package/dist/runtime/server/services/parallel/worker-pool.js +38 -6
  328. package/dist/runtime/server/services/parallel/worker.js +1 -0
  329. package/dist/runtime/server/services/services.register.js +56 -24
  330. package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
  331. package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
  332. package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
  333. package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
  334. package/dist/runtime/server/system/schema-generator.d.ts +1 -1
  335. package/dist/runtime/server/system/schema-generator.js +6 -3
  336. package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
  337. package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
  338. package/dist/runtime/shared/helpers/process-tuple-schema.js +32 -0
  339. package/dist/runtime/shared/types/system-types.d.ts +55 -0
  340. package/dist/runtime/shared/types/system-types.js +54 -0
  341. package/package.json +41 -13
  342. package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
  343. package/dist/adapters/cfx/cfx-capabilities.js +0 -70
  344. package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
  345. package/dist/adapters/cfx/cfx-platform.js +0 -85
  346. package/dist/adapters/cfx/index.d.ts +0 -3
  347. package/dist/adapters/cfx/index.js +0 -3
  348. package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
  349. package/dist/adapters/cfx/runtime-profile.js +0 -37
  350. package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
  351. package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
  352. package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
  353. package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
  354. package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
  355. package/dist/adapters/fivem/fivem-capabilities.js +0 -61
  356. package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
  357. package/dist/adapters/fivem/fivem-engine-events.js +0 -24
  358. package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
  359. package/dist/adapters/fivem/fivem-entity-server.js +0 -87
  360. package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
  361. package/dist/adapters/fivem/fivem-exports.js +0 -9
  362. package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
  363. package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
  364. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
  365. package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
  366. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
  367. package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
  368. package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
  369. package/dist/adapters/fivem/fivem-ped-server.js +0 -30
  370. package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
  371. package/dist/adapters/fivem/fivem-platform.js +0 -74
  372. package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
  373. package/dist/adapters/fivem/fivem-player-server.js +0 -83
  374. package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
  375. package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
  376. package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
  377. package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
  378. package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
  379. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
  380. package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
  381. package/dist/adapters/fivem/index.d.ts +0 -14
  382. package/dist/adapters/fivem/index.js +0 -16
  383. package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
  384. package/dist/adapters/fivem/transport/adapter.js +0 -8
  385. package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
  386. package/dist/adapters/fivem/transport/fivem.events.js +0 -36
  387. package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
  388. package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
  389. package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
  390. package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
  391. package/dist/runtime/client/player/player.d.ts +0 -262
  392. package/dist/runtime/client/player/player.js +0 -474
  393. package/dist/runtime/client/player/player.loader.d.ts +0 -1
  394. package/dist/runtime/client/player/player.loader.js +0 -18
  395. package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
  396. package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
  397. /package/dist/adapters/{fivem/fivem-net-transport.js → contracts/client/spawn/types.js} +0 -0
@@ -1,85 +0,0 @@
1
- import { IEngineEvents } from '../contracts/IEngineEvents';
2
- import { IExports } from '../contracts/IExports';
3
- import { IHasher } from '../contracts/IHasher';
4
- import { IPlatformCapabilities } from '../contracts/IPlatformCapabilities';
5
- import { IPlayerInfo } from '../contracts/IPlayerInfo';
6
- import { IResourceInfo } from '../contracts/IResourceInfo';
7
- import { ITick } from '../contracts/ITick';
8
- import { IEntityServer } from '../contracts/server/IEntityServer';
9
- import { IPedServer } from '../contracts/server/IPedServer';
10
- import { IPedAppearanceServer } from '../contracts/server/IPedAppearanceServer';
11
- import { IPlayerServer } from '../contracts/server/IPlayerServer';
12
- import { IVehicleServer } from '../contracts/server/IVehicleServer';
13
- import { EventsAPI } from '../contracts/transport/events.api';
14
- import { MessagingTransport } from '../contracts/transport/messaging.transport';
15
- import { RpcAPI } from '../contracts/transport/rpc.api';
16
- import { detectCfxGameProfile, isCfxRuntime } from './runtime-profile';
17
- export const CfxPlatform = {
18
- name: 'cfx',
19
- priority: 100,
20
- detect() {
21
- return isCfxRuntime();
22
- },
23
- async register(container) {
24
- const profile = detectCfxGameProfile();
25
- const [{ FiveMMessagingTransport }, { FiveMEngineEvents }, { FiveMExports }, { FiveMResourceInfo }, { FiveMTick }, { FiveMPlayerInfo }, { FiveMEntityServer }, { FiveMPedServer }, { FiveMVehicleServer }, { FiveMPlayerServer }, { FiveMHasher }, { FiveMPedAppearanceServerAdapter }, { NodePedAppearanceServer }, { CfxCapabilities },] = await Promise.all([
26
- import('../fivem/transport/adapter'),
27
- import('../fivem/fivem-engine-events'),
28
- import('../fivem/fivem-exports'),
29
- import('../fivem/fivem-resourceinfo'),
30
- import('../fivem/fivem-tick'),
31
- import('../fivem/fivem-playerinfo'),
32
- import('../fivem/fivem-entity-server'),
33
- import('../fivem/fivem-ped-server'),
34
- import('../fivem/fivem-vehicle-server'),
35
- import('../fivem/fivem-player-server'),
36
- import('../fivem/fivem-hasher'),
37
- import('../fivem/fivem-ped-appearance-server'),
38
- import('../node/node-ped-appearance-server'),
39
- import('./cfx-capabilities'),
40
- ]);
41
- if (!container.isRegistered(IPlatformCapabilities)) {
42
- container.registerSingleton(IPlatformCapabilities, CfxCapabilities);
43
- }
44
- if (!container.isRegistered(MessagingTransport)) {
45
- const transport = new FiveMMessagingTransport();
46
- container.registerInstance(MessagingTransport, transport);
47
- container.registerInstance(EventsAPI, transport.events);
48
- container.registerInstance(RpcAPI, transport.rpc);
49
- }
50
- if (!container.isRegistered(IEngineEvents)) {
51
- container.registerSingleton(IEngineEvents, FiveMEngineEvents);
52
- }
53
- if (!container.isRegistered(IExports)) {
54
- container.registerSingleton(IExports, FiveMExports);
55
- }
56
- if (!container.isRegistered(IResourceInfo)) {
57
- container.registerSingleton(IResourceInfo, FiveMResourceInfo);
58
- }
59
- if (!container.isRegistered(ITick)) {
60
- container.registerSingleton(ITick, FiveMTick);
61
- }
62
- if (!container.isRegistered(IPlayerInfo)) {
63
- container.registerSingleton(IPlayerInfo, FiveMPlayerInfo);
64
- }
65
- if (!container.isRegistered(IEntityServer)) {
66
- container.registerSingleton(IEntityServer, FiveMEntityServer);
67
- }
68
- if (!container.isRegistered(IPedServer)) {
69
- container.registerSingleton(IPedServer, FiveMPedServer);
70
- }
71
- if (!container.isRegistered(IVehicleServer)) {
72
- container.registerSingleton(IVehicleServer, FiveMVehicleServer);
73
- }
74
- if (!container.isRegistered(IPlayerServer)) {
75
- container.registerSingleton(IPlayerServer, FiveMPlayerServer);
76
- }
77
- if (!container.isRegistered(IHasher)) {
78
- container.registerSingleton(IHasher, FiveMHasher);
79
- }
80
- if (!container.isRegistered(IPedAppearanceServer)) {
81
- const appearanceImpl = profile === 'rdr3' ? NodePedAppearanceServer : FiveMPedAppearanceServerAdapter;
82
- container.registerSingleton(IPedAppearanceServer, appearanceImpl);
83
- }
84
- },
85
- };
@@ -1,3 +0,0 @@
1
- export { CfxCapabilities } from './cfx-capabilities';
2
- export { CfxPlatform } from './cfx-platform';
3
- export { detectCfxGameProfile, isCfxRuntime } from './runtime-profile';
@@ -1,3 +0,0 @@
1
- export { CfxCapabilities } from './cfx-capabilities';
2
- export { CfxPlatform } from './cfx-platform';
3
- export { detectCfxGameProfile, isCfxRuntime } from './runtime-profile';
@@ -1,3 +0,0 @@
1
- export type CfxGameProfile = 'gta5' | 'rdr3' | 'common';
2
- export declare function isCfxRuntime(): boolean;
3
- export declare function detectCfxGameProfile(): CfxGameProfile;
@@ -1,37 +0,0 @@
1
- const RDR3_HINTS = ['rdr3', 'redm', 'rdr'];
2
- const GTA5_HINTS = ['gta5', 'fivem', 'gta'];
3
- function normalizeGameName(value) {
4
- if (typeof value !== 'string')
5
- return '';
6
- return value.trim().toLowerCase();
7
- }
8
- function detectFromName(gameName) {
9
- if (!gameName)
10
- return 'common';
11
- if (RDR3_HINTS.some((hint) => gameName.includes(hint)))
12
- return 'rdr3';
13
- if (GTA5_HINTS.some((hint) => gameName.includes(hint)))
14
- return 'gta5';
15
- return 'common';
16
- }
17
- export function isCfxRuntime() {
18
- return typeof globalThis.GetCurrentResourceName === 'function';
19
- }
20
- export function detectCfxGameProfile() {
21
- const convar = globalThis.GetConvar;
22
- if (typeof convar === 'function') {
23
- const override = normalizeGameName(convar('opencore:gameProfile', ''));
24
- const profile = detectFromName(override);
25
- if (profile !== 'common') {
26
- return profile;
27
- }
28
- }
29
- const getGameName = globalThis.GetGameName;
30
- if (typeof getGameName === 'function') {
31
- const profile = detectFromName(normalizeGameName(getGameName()));
32
- if (profile !== 'common') {
33
- return profile;
34
- }
35
- }
36
- return 'common';
37
- }
@@ -1,79 +0,0 @@
1
- /**
2
- * Platform capabilities contract.
3
- *
4
- * @remarks
5
- * Defines what features a platform supports, allowing runtime
6
- * feature detection and graceful degradation across different
7
- * game engines (CitizenFX, RageMP, alt:V, etc.)
8
- */
9
- export declare abstract class IPlatformCapabilities {
10
- /**
11
- * Unique identifier for the platform.
12
- * @example 'cfx', 'ragemp', 'altv', 'redm'
13
- */
14
- abstract readonly platformName: string;
15
- /**
16
- * Human-readable display name.
17
- * @example 'CitizenFX', 'RageMP', 'alt:V', 'RedM'
18
- */
19
- abstract readonly displayName: string;
20
- /**
21
- * Whether the platform supports routing buckets (virtual worlds/dimensions).
22
- */
23
- abstract readonly supportsRoutingBuckets: boolean;
24
- /**
25
- * Whether the platform supports state bags for entity synchronization.
26
- */
27
- abstract readonly supportsStateBags: boolean;
28
- /**
29
- * Whether the platform has native voice chat support.
30
- */
31
- abstract readonly supportsVoiceChat: boolean;
32
- /**
33
- * Whether the platform supports server-side entity creation.
34
- */
35
- abstract readonly supportsServerEntities: boolean;
36
- /**
37
- * Supported identifier types for this platform.
38
- * @example ['steam', 'license', 'discord'] for FiveM
39
- * @example ['socialclub', 'ip'] for RageMP
40
- */
41
- abstract readonly identifierTypes: readonly string[];
42
- /**
43
- * Maximum number of players supported by the platform.
44
- * Returns undefined if unlimited or unknown.
45
- */
46
- abstract readonly maxPlayers: number | undefined;
47
- /**
48
- * Check if a specific feature is supported.
49
- *
50
- * @param feature - Feature identifier to check
51
- * @returns true if the feature is supported
52
- */
53
- abstract isFeatureSupported(feature: string): boolean;
54
- /**
55
- * Get platform-specific configuration value.
56
- *
57
- * @param key - Configuration key
58
- * @returns Configuration value or undefined
59
- */
60
- abstract getConfig<T = unknown>(key: string): T | undefined;
61
- }
62
- /**
63
- * Well-known feature identifiers for cross-platform compatibility.
64
- */
65
- export declare const PlatformFeatures: {
66
- readonly ROUTING_BUCKETS: "routing_buckets";
67
- readonly STATE_BAGS: "state_bags";
68
- readonly VOICE_CHAT: "voice_chat";
69
- readonly SERVER_ENTITIES: "server_entities";
70
- readonly VEHICLE_MODS: "vehicle_mods";
71
- readonly PED_APPEARANCE: "ped_appearance";
72
- readonly WEAPON_COMPONENTS: "weapon_components";
73
- readonly BLIPS: "blips";
74
- readonly MARKERS: "markers";
75
- readonly TEXT_LABELS: "text_labels";
76
- readonly CHECKPOINTS: "checkpoints";
77
- readonly COLSHAPES: "colshapes";
78
- };
79
- export type PlatformFeature = (typeof PlatformFeatures)[keyof typeof PlatformFeatures];
@@ -1,27 +0,0 @@
1
- /**
2
- * Platform capabilities contract.
3
- *
4
- * @remarks
5
- * Defines what features a platform supports, allowing runtime
6
- * feature detection and graceful degradation across different
7
- * game engines (CitizenFX, RageMP, alt:V, etc.)
8
- */
9
- export class IPlatformCapabilities {
10
- }
11
- /**
12
- * Well-known feature identifiers for cross-platform compatibility.
13
- */
14
- export const PlatformFeatures = {
15
- ROUTING_BUCKETS: 'routing_buckets',
16
- STATE_BAGS: 'state_bags',
17
- VOICE_CHAT: 'voice_chat',
18
- SERVER_ENTITIES: 'server_entities',
19
- VEHICLE_MODS: 'vehicle_mods',
20
- PED_APPEARANCE: 'ped_appearance',
21
- WEAPON_COMPONENTS: 'weapon_components',
22
- BLIPS: 'blips',
23
- MARKERS: 'markers',
24
- TEXT_LABELS: 'text_labels',
25
- CHECKPOINTS: 'checkpoints',
26
- COLSHAPES: 'colshapes',
27
- };
@@ -1,206 +0,0 @@
1
- import { HeadBlendData } from '../../../kernel/shared/player-appearance.types';
2
- /**
3
- * Client-side ped appearance operations adapter.
4
- *
5
- * @remarks
6
- * Abstracts FiveM ped appearance natives for client-side operations.
7
- * Allows the runtime to work without direct FiveM dependencies.
8
- *
9
- * Most appearance natives are client-only (headBlend, faceFeatures, overlays, tattoos).
10
- * This adapter provides a unified interface for all appearance operations.
11
- */
12
- export declare abstract class IPedAppearanceClient {
13
- /**
14
- * Sets a ped's component variation (clothing, hair, etc.).
15
- *
16
- * @param ped - Ped entity handle
17
- * @param componentId - Component ID (0-11)
18
- * @param drawable - Drawable index
19
- * @param texture - Texture index
20
- * @param palette - Palette ID (usually 2)
21
- */
22
- abstract setComponentVariation(ped: number, componentId: number, drawable: number, texture: number, palette: number): void;
23
- /**
24
- * Sets a ped's prop (hat, glasses, etc.).
25
- *
26
- * @param ped - Ped entity handle
27
- * @param propId - Prop ID (0-7)
28
- * @param drawable - Drawable index
29
- * @param texture - Texture index
30
- * @param attach - Whether to attach the prop
31
- */
32
- abstract setPropIndex(ped: number, propId: number, drawable: number, texture: number, attach: boolean): void;
33
- /**
34
- * Clears a ped's prop.
35
- *
36
- * @param ped - Ped entity handle
37
- * @param propId - Prop ID to clear (0-7)
38
- */
39
- abstract clearProp(ped: number, propId: number): void;
40
- /**
41
- * Sets the ped to default component variation.
42
- *
43
- * @param ped - Ped entity handle
44
- */
45
- abstract setDefaultComponentVariation(ped: number): void;
46
- /**
47
- * Sets the ped's head blend data for facial structure.
48
- *
49
- * @remarks
50
- * This must be called before setting face features, overlays, or overlay colors.
51
- *
52
- * @param ped - Ped entity handle
53
- * @param data - Head blend configuration
54
- */
55
- abstract setHeadBlendData(ped: number, data: HeadBlendData): void;
56
- /**
57
- * Sets a face feature morph value.
58
- *
59
- * @remarks
60
- * SetPedHeadBlendData must be called before this.
61
- *
62
- * @param ped - Ped entity handle
63
- * @param index - Feature index (0-19)
64
- * @param scale - Scale value (-1.0 to 1.0)
65
- */
66
- abstract setFaceFeature(ped: number, index: number, scale: number): void;
67
- /**
68
- * Sets a head overlay (makeup, facial hair, etc.).
69
- *
70
- * @remarks
71
- * SetPedHeadBlendData must be called before this.
72
- *
73
- * @param ped - Ped entity handle
74
- * @param overlayId - Overlay ID (0-12)
75
- * @param index - Overlay variation index (255 to disable)
76
- * @param opacity - Opacity (0.0-1.0)
77
- */
78
- abstract setHeadOverlay(ped: number, overlayId: number, index: number, opacity: number): void;
79
- /**
80
- * Sets the color for a head overlay.
81
- *
82
- * @remarks
83
- * Must be called after SetPedHeadOverlay.
84
- *
85
- * @param ped - Ped entity handle
86
- * @param overlayId - Overlay ID (0-12)
87
- * @param colorType - Color type (0: default, 1: hair, 2: makeup)
88
- * @param colorId - Primary color ID
89
- * @param secondColorId - Secondary color ID
90
- */
91
- abstract setHeadOverlayColor(ped: number, overlayId: number, colorType: number, colorId: number, secondColorId: number): void;
92
- /**
93
- * Sets the ped's hair color.
94
- *
95
- * @param ped - Ped entity handle
96
- * @param colorId - Primary hair color ID
97
- * @param highlightColorId - Highlight color ID
98
- */
99
- abstract setHairColor(ped: number, colorId: number, highlightColorId: number): void;
100
- /**
101
- * Sets the ped's eye color.
102
- *
103
- * @param ped - Ped entity handle
104
- * @param index - Eye color index (0-31)
105
- */
106
- abstract setEyeColor(ped: number, index: number): void;
107
- /**
108
- * Adds a decoration (tattoo) to the ped.
109
- *
110
- * @param ped - Ped entity handle
111
- * @param collectionHash - Collection name hash
112
- * @param overlayHash - Overlay name hash
113
- */
114
- abstract addDecoration(ped: number, collectionHash: number, overlayHash: number): void;
115
- /**
116
- * Clears all decorations (tattoos) from the ped.
117
- *
118
- * @param ped - Ped entity handle
119
- */
120
- abstract clearDecorations(ped: number): void;
121
- /**
122
- * Gets the drawable variation for a component.
123
- *
124
- * @param ped - Ped entity handle
125
- * @param componentId - Component ID (0-11)
126
- * @returns Drawable index
127
- */
128
- abstract getDrawableVariation(ped: number, componentId: number): number;
129
- /**
130
- * Gets the texture variation for a component.
131
- *
132
- * @param ped - Ped entity handle
133
- * @param componentId - Component ID (0-11)
134
- * @returns Texture index
135
- */
136
- abstract getTextureVariation(ped: number, componentId: number): number;
137
- /**
138
- * Gets the prop index for a prop slot.
139
- *
140
- * @param ped - Ped entity handle
141
- * @param propId - Prop ID (0-7)
142
- * @returns Prop drawable index (-1 if none)
143
- */
144
- abstract getPropIndex(ped: number, propId: number): number;
145
- /**
146
- * Gets the prop texture index.
147
- *
148
- * @param ped - Ped entity handle
149
- * @param propId - Prop ID (0-7)
150
- * @returns Prop texture index
151
- */
152
- abstract getPropTextureIndex(ped: number, propId: number): number;
153
- /**
154
- * Gets the number of drawable variations for a component.
155
- *
156
- * @param ped - Ped entity handle
157
- * @param componentId - Component ID (0-11)
158
- * @returns Number of available drawables
159
- */
160
- abstract getNumDrawableVariations(ped: number, componentId: number): number;
161
- /**
162
- * Gets the number of texture variations for a component drawable.
163
- *
164
- * @param ped - Ped entity handle
165
- * @param componentId - Component ID (0-11)
166
- * @param drawable - Drawable index
167
- * @returns Number of available textures
168
- */
169
- abstract getNumTextureVariations(ped: number, componentId: number, drawable: number): number;
170
- /**
171
- * Gets the number of drawable variations for a prop.
172
- *
173
- * @param ped - Ped entity handle
174
- * @param propId - Prop ID (0-7)
175
- * @returns Number of available prop drawables
176
- */
177
- abstract getNumPropDrawableVariations(ped: number, propId: number): number;
178
- /**
179
- * Gets the number of texture variations for a prop drawable.
180
- *
181
- * @param ped - Ped entity handle
182
- * @param propId - Prop ID (0-7)
183
- * @param drawable - Drawable index
184
- * @returns Number of available textures
185
- */
186
- abstract getNumPropTextureVariations(ped: number, propId: number, drawable: number): number;
187
- /**
188
- * Gets the number of overlay values for an overlay type.
189
- *
190
- * @param overlayId - Overlay ID (0-12)
191
- * @returns Number of available overlay variations
192
- */
193
- abstract getNumOverlayValues(overlayId: number): number;
194
- /**
195
- * Gets the number of hair colors available.
196
- *
197
- * @returns Number of hair colors
198
- */
199
- abstract getNumHairColors(): number;
200
- /**
201
- * Gets the number of makeup colors available.
202
- *
203
- * @returns Number of makeup colors
204
- */
205
- abstract getNumMakeupColors(): number;
206
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * Client-side ped appearance operations adapter.
3
- *
4
- * @remarks
5
- * Abstracts FiveM ped appearance natives for client-side operations.
6
- * Allows the runtime to work without direct FiveM dependencies.
7
- *
8
- * Most appearance natives are client-only (headBlend, faceFeatures, overlays, tattoos).
9
- * This adapter provides a unified interface for all appearance operations.
10
- */
11
- export class IPedAppearanceClient {
12
- }
@@ -1,18 +0,0 @@
1
- import { IPlatformCapabilities } from '../contracts/IPlatformCapabilities';
2
- /**
3
- * FiveM platform capabilities implementation.
4
- */
5
- export declare class FiveMCapabilities extends IPlatformCapabilities {
6
- readonly platformName = "fivem";
7
- readonly displayName = "FiveM";
8
- readonly supportsRoutingBuckets = true;
9
- readonly supportsStateBags = true;
10
- readonly supportsVoiceChat = true;
11
- readonly supportsServerEntities = true;
12
- readonly identifierTypes: readonly ["steam", "license", "license2", "discord", "fivem", "xbl", "live", "ip"];
13
- readonly maxPlayers = 1024;
14
- private readonly supportedFeatures;
15
- private readonly config;
16
- isFeatureSupported(feature: string): boolean;
17
- getConfig<T = unknown>(key: string): T | undefined;
18
- }
@@ -1,61 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { injectable } from 'tsyringe';
8
- import { IPlatformCapabilities, PlatformFeatures } from '../contracts/IPlatformCapabilities';
9
- import { IdentifierTypes } from '../contracts/types/identifier';
10
- /**
11
- * FiveM platform capabilities implementation.
12
- */
13
- let FiveMCapabilities = class FiveMCapabilities extends IPlatformCapabilities {
14
- platformName = 'fivem';
15
- displayName = 'FiveM';
16
- supportsRoutingBuckets = true;
17
- supportsStateBags = true;
18
- supportsVoiceChat = true;
19
- supportsServerEntities = true;
20
- identifierTypes = [
21
- IdentifierTypes.STEAM,
22
- IdentifierTypes.LICENSE,
23
- IdentifierTypes.LICENSE2,
24
- IdentifierTypes.DISCORD,
25
- IdentifierTypes.FIVEM,
26
- IdentifierTypes.XBL,
27
- IdentifierTypes.LIVE,
28
- IdentifierTypes.IP,
29
- ];
30
- maxPlayers = 1024;
31
- supportedFeatures = new Set([
32
- PlatformFeatures.ROUTING_BUCKETS,
33
- PlatformFeatures.STATE_BAGS,
34
- PlatformFeatures.VOICE_CHAT,
35
- PlatformFeatures.SERVER_ENTITIES,
36
- PlatformFeatures.VEHICLE_MODS,
37
- PlatformFeatures.PED_APPEARANCE,
38
- PlatformFeatures.WEAPON_COMPONENTS,
39
- PlatformFeatures.BLIPS,
40
- PlatformFeatures.MARKERS,
41
- PlatformFeatures.TEXT_LABELS,
42
- PlatformFeatures.CHECKPOINTS,
43
- PlatformFeatures.COLSHAPES,
44
- ]);
45
- config = {
46
- defaultRoutingBucket: 0,
47
- maxRoutingBuckets: 63,
48
- tickRate: 64,
49
- syncRate: 10,
50
- };
51
- isFeatureSupported(feature) {
52
- return this.supportedFeatures.has(feature);
53
- }
54
- getConfig(key) {
55
- return this.config[key];
56
- }
57
- };
58
- FiveMCapabilities = __decorate([
59
- injectable()
60
- ], FiveMCapabilities);
61
- export { FiveMCapabilities };
@@ -1,5 +0,0 @@
1
- import { IEngineEvents } from '../contracts/IEngineEvents';
2
- export declare class FiveMEngineEvents extends IEngineEvents {
3
- on(eventName: string, handler?: (...args: any[]) => void): void;
4
- emit(eventName: string, ...args: any[]): void;
5
- }
@@ -1,24 +0,0 @@
1
- import { IEngineEvents } from '../contracts/IEngineEvents';
2
- export class FiveMEngineEvents extends IEngineEvents {
3
- on(eventName, handler) {
4
- if (!handler)
5
- return;
6
- on(eventName, (...args) => {
7
- if (eventName === 'playerJoining') {
8
- const clientId = Number(source);
9
- const license = GetPlayerIdentifier(clientId.toString(), 0) ?? undefined;
10
- handler(clientId, { license });
11
- return;
12
- }
13
- if (eventName === 'playerDropped') {
14
- const clientId = Number(source);
15
- handler(clientId);
16
- return;
17
- }
18
- handler(...args);
19
- });
20
- }
21
- emit(eventName, ...args) {
22
- emit(eventName, ...args);
23
- }
24
- }
@@ -1,26 +0,0 @@
1
- import { Vector3 } from '../../kernel/utils/vector3';
2
- import { type EntityStateBag, IEntityServer, type SetPositionOptions } from '../contracts/server/IEntityServer';
3
- /**
4
- * FiveM implementation of server-side entity operations.
5
- */
6
- export declare class FiveMEntityServer extends IEntityServer {
7
- doesExist(handle: number): boolean;
8
- getCoords(handle: number): Vector3;
9
- setPosition(handle: number, position: Vector3, options?: SetPositionOptions): void;
10
- /**
11
- * @deprecated Use setPosition() for cross-platform compatibility.
12
- */
13
- setCoords(handle: number, x: number, y: number, z: number, alive?: boolean, deadFlag?: boolean, ragdollFlag?: boolean, clearArea?: boolean): void;
14
- getHeading(handle: number): number;
15
- setHeading(handle: number, heading: number): void;
16
- getModel(handle: number): number;
17
- delete(handle: number): void;
18
- setOrphanMode(handle: number, mode: number): void;
19
- setRoutingBucket(handle: number, bucket: number): void;
20
- getRoutingBucket(handle: number): number;
21
- getStateBag(handle: number): EntityStateBag;
22
- getHealth(handle: number): number;
23
- setHealth(handle: number, health: number): void;
24
- getArmor(handle: number): number;
25
- setArmor(handle: number, armor: number): void;
26
- }