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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/dist/adapters/contracts/IEngineEvents.d.ts +3 -0
  2. package/dist/adapters/contracts/IEngineEvents.js +7 -0
  3. package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
  4. package/dist/adapters/contracts/IPlatformContext.js +8 -0
  5. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +4 -0
  6. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +2 -0
  7. package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
  8. package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
  9. package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
  10. package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
  11. package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
  12. package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
  13. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
  14. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
  15. package/dist/adapters/contracts/client/index.d.ts +7 -0
  16. package/dist/adapters/contracts/client/index.js +7 -0
  17. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +7 -0
  18. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +2 -0
  19. package/dist/adapters/contracts/client/spawn/index.d.ts +2 -0
  20. package/dist/adapters/contracts/client/spawn/index.js +2 -0
  21. package/dist/adapters/contracts/client/spawn/types.d.ts +14 -0
  22. package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
  23. package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
  24. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
  25. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
  26. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
  27. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
  28. package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
  29. package/dist/adapters/contracts/client/ui/index.js +4 -0
  30. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +13 -0
  31. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
  32. package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
  33. package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
  34. package/dist/adapters/contracts/client/ui/webview/types.d.ts +25 -0
  35. package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
  36. package/dist/adapters/contracts/index.d.ts +4 -2
  37. package/dist/adapters/contracts/index.js +4 -3
  38. package/dist/adapters/contracts/runtime/index.d.ts +1 -0
  39. package/dist/adapters/contracts/runtime/index.js +1 -0
  40. package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
  41. package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
  42. package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
  43. package/dist/adapters/contracts/server/IEntityServer.js +0 -26
  44. package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
  45. package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
  46. package/dist/adapters/contracts/server/index.d.ts +10 -0
  47. package/dist/adapters/contracts/server/index.js +10 -0
  48. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
  49. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
  50. package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
  51. package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
  52. package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
  53. package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
  54. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
  55. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
  56. package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
  57. package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
  58. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
  59. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
  60. package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
  61. package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
  62. package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
  63. package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
  64. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
  65. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
  66. package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
  67. package/dist/adapters/contracts/server/player-state/index.js +1 -0
  68. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
  69. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
  70. package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
  71. package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
  72. package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
  73. package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
  74. package/dist/adapters/contracts/transport/index.d.ts +4 -0
  75. package/dist/adapters/contracts/transport/index.js +4 -0
  76. package/dist/adapters/index.d.ts +3 -14
  77. package/dist/adapters/index.js +3 -20
  78. package/dist/adapters/node/node-capabilities.d.ts +11 -11
  79. package/dist/adapters/node/node-capabilities.js +15 -27
  80. package/dist/adapters/node/node-engine-events.d.ts +1 -1
  81. package/dist/adapters/node/node-engine-events.js +2 -1
  82. package/dist/adapters/node/node-entity-server.d.ts +2 -2
  83. package/dist/adapters/node/node-entity-server.js +2 -2
  84. package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
  85. package/dist/adapters/node/node-ped-appearance-client.js +2 -2
  86. package/dist/adapters/node/node-platform.js +4 -4
  87. package/dist/adapters/node/node-player-server.d.ts +3 -2
  88. package/dist/adapters/node/node-player-server.js +8 -2
  89. package/dist/adapters/register-capabilities.d.ts +1 -1
  90. package/dist/adapters/register-capabilities.js +1 -3
  91. package/dist/adapters/register-client-capabilities.d.ts +3 -2
  92. package/dist/adapters/register-client-capabilities.js +16 -41
  93. package/dist/contracts/client.d.ts +5 -0
  94. package/dist/contracts/client.js +5 -0
  95. package/dist/contracts/server.d.ts +19 -0
  96. package/dist/contracts/server.js +19 -0
  97. package/dist/contracts.d.ts +4 -0
  98. package/dist/contracts.js +4 -0
  99. package/dist/index.d.ts +1 -1
  100. package/dist/index.js +1 -1
  101. package/dist/kernel/logger/client-log-console.d.ts +4 -0
  102. package/dist/kernel/logger/client-log-console.js +43 -0
  103. package/dist/kernel/logger/core-logger.d.ts +3 -1
  104. package/dist/kernel/logger/core-logger.js +4 -2
  105. package/dist/kernel/logger/index.d.ts +2 -0
  106. package/dist/kernel/logger/index.js +1 -0
  107. package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
  108. package/dist/kernel/logger/transports/simple-console.transport.js +13 -8
  109. package/dist/kernel-public.d.ts +1 -0
  110. package/dist/kernel-public.js +1 -0
  111. package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
  112. package/dist/runtime/client/adapter/client-adapter.js +11 -0
  113. package/dist/runtime/client/adapter/index.d.ts +15 -0
  114. package/dist/runtime/client/adapter/index.js +15 -0
  115. package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
  116. package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
  117. package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
  118. package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
  119. package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
  120. package/dist/runtime/client/adapter/node-client-adapter.js +50 -0
  121. package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +8 -0
  122. package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-local-player-bridge.js} +7 -9
  123. package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
  124. package/dist/runtime/client/adapter/node-log-console.js +48 -0
  125. package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
  126. package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
  127. package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
  128. package/dist/runtime/client/adapter/node-notification-bridge.js +16 -0
  129. package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
  130. package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
  131. package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +24 -0
  132. package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
  133. package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
  134. package/dist/runtime/client/adapter/node-spawn-bridge.js +18 -0
  135. package/dist/runtime/client/adapter/node-webview-bridge.d.ts +15 -0
  136. package/dist/runtime/client/adapter/node-webview-bridge.js +43 -0
  137. package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
  138. package/dist/runtime/client/adapter/platform-bridge.js +1 -0
  139. package/dist/runtime/client/adapter/registry.d.ts +9 -0
  140. package/dist/runtime/client/adapter/registry.js +85 -0
  141. package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
  142. package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
  143. package/dist/runtime/client/api.d.ts +2 -1
  144. package/dist/runtime/client/api.js +2 -1
  145. package/dist/runtime/client/client-bootstrap.js +51 -44
  146. package/dist/runtime/client/client-core.d.ts +2 -0
  147. package/dist/runtime/client/client-core.js +9 -0
  148. package/dist/runtime/client/client-runtime.d.ts +3 -0
  149. package/dist/runtime/client/client-runtime.js +3 -0
  150. package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
  151. package/dist/runtime/client/controllers/appearance.controller.js +14 -4
  152. package/dist/runtime/client/controllers/spawner.controller.js +2 -0
  153. package/dist/runtime/client/decorators/controller.js +2 -10
  154. package/dist/runtime/client/decorators/onView.d.ts +3 -3
  155. package/dist/runtime/client/decorators/onView.js +3 -3
  156. package/dist/runtime/client/index.d.ts +1 -0
  157. package/dist/runtime/client/index.js +1 -0
  158. package/dist/runtime/client/library/create-client-library.js +9 -1
  159. package/dist/runtime/client/services/appearance.service.d.ts +2 -2
  160. package/dist/runtime/client/services/appearance.service.js +7 -4
  161. package/dist/runtime/client/services/blip.service.d.ts +6 -93
  162. package/dist/runtime/client/services/blip.service.js +58 -153
  163. package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
  164. package/dist/runtime/client/services/camera-effects.registry.js +20 -7
  165. package/dist/runtime/client/services/camera.d.ts +3 -83
  166. package/dist/runtime/client/services/camera.js +37 -93
  167. package/dist/runtime/client/services/cinematic.d.ts +5 -1
  168. package/dist/runtime/client/services/cinematic.js +45 -30
  169. package/dist/runtime/client/services/index.d.ts +1 -0
  170. package/dist/runtime/client/services/index.js +1 -0
  171. package/dist/runtime/client/services/marker.service.d.ts +12 -63
  172. package/dist/runtime/client/services/marker.service.js +62 -97
  173. package/dist/runtime/client/services/notification.service.d.ts +6 -57
  174. package/dist/runtime/client/services/notification.service.js +43 -81
  175. package/dist/runtime/client/services/ped.service.d.ts +3 -130
  176. package/dist/runtime/client/services/ped.service.js +66 -198
  177. package/dist/runtime/client/services/progress.service.d.ts +5 -30
  178. package/dist/runtime/client/services/progress.service.js +73 -99
  179. package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
  180. package/dist/runtime/client/services/session-bridge.service.js +61 -0
  181. package/dist/runtime/client/services/spawn.service.d.ts +6 -56
  182. package/dist/runtime/client/services/spawn.service.js +34 -191
  183. package/dist/runtime/client/services/streaming.service.d.ts +5 -126
  184. package/dist/runtime/client/services/streaming.service.js +72 -217
  185. package/dist/runtime/client/services/textui.service.d.ts +5 -45
  186. package/dist/runtime/client/services/textui.service.js +55 -88
  187. package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
  188. package/dist/runtime/client/services/vehicle-client.service.js +180 -326
  189. package/dist/runtime/client/services/vehicle.service.d.ts +3 -109
  190. package/dist/runtime/client/services/vehicle.service.js +94 -194
  191. package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
  192. package/dist/runtime/client/system/processors/export.processor.js +16 -3
  193. package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
  194. package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
  195. package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
  196. package/dist/runtime/client/system/processors/interval.processor.js +17 -4
  197. package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
  198. package/dist/runtime/client/system/processors/key.processor.js +18 -5
  199. package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
  200. package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
  201. package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
  202. package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
  203. package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
  204. package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
  205. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
  206. package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
  207. package/dist/runtime/client/system/processors/tick.processor.js +16 -3
  208. package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
  209. package/dist/runtime/client/system/processors/view.processor.js +21 -10
  210. package/dist/runtime/client/system/processors.register.d.ts +1 -0
  211. package/dist/runtime/client/system/processors.register.js +8 -0
  212. package/dist/runtime/client/ui-bridge.d.ts +2 -114
  213. package/dist/runtime/client/ui-bridge.js +2 -194
  214. package/dist/runtime/client/webview-bridge.d.ts +31 -0
  215. package/dist/runtime/client/webview-bridge.js +97 -0
  216. package/dist/runtime/client/webview.service.d.ts +14 -0
  217. package/dist/runtime/client/webview.service.js +98 -0
  218. package/dist/runtime/server/adapter/index.d.ts +5 -0
  219. package/dist/runtime/server/adapter/index.js +5 -0
  220. package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
  221. package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
  222. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
  223. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +94 -0
  224. package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
  225. package/dist/runtime/server/adapter/node-player-lifecycle-server.js +55 -0
  226. package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
  227. package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
  228. package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
  229. package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
  230. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
  231. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +57 -0
  232. package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
  233. package/dist/runtime/server/adapter/player-adapter.js +28 -0
  234. package/dist/runtime/server/adapter/registry.d.ts +26 -0
  235. package/dist/runtime/server/adapter/registry.js +101 -0
  236. package/dist/runtime/server/adapter/serialization.d.ts +6 -0
  237. package/dist/runtime/server/adapter/serialization.js +9 -0
  238. package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
  239. package/dist/runtime/server/adapter/server-adapter.js +14 -0
  240. package/dist/runtime/server/api.d.ts +2 -1
  241. package/dist/runtime/server/api.js +2 -1
  242. package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
  243. package/dist/runtime/server/apis/appearance.api.js +20 -7
  244. package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
  245. package/dist/runtime/server/apis/npcs.api.js +26 -56
  246. package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
  247. package/dist/runtime/server/apis/vehicle-modification.api.js +9 -4
  248. package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
  249. package/dist/runtime/server/apis/vehicles.api.js +48 -36
  250. package/dist/runtime/server/bootstrap.js +15 -7
  251. package/dist/runtime/server/controllers/channel.controller.js +2 -1
  252. package/dist/runtime/server/controllers/command-export.controller.js +1 -1
  253. package/dist/runtime/server/controllers/player-export.controller.js +5 -4
  254. package/dist/runtime/server/controllers/session.controller.js +3 -2
  255. package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
  256. package/dist/runtime/server/controllers/vehicle.controller.js +10 -5
  257. package/dist/runtime/server/core.d.ts +2 -0
  258. package/dist/runtime/server/core.js +9 -1
  259. package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
  260. package/dist/runtime/server/entities/npc.d.ts +2 -0
  261. package/dist/runtime/server/entities/npc.js +3 -3
  262. package/dist/runtime/server/entities/player.d.ts +8 -11
  263. package/dist/runtime/server/entities/player.js +39 -28
  264. package/dist/runtime/server/entities/vehicle.js +2 -2
  265. package/dist/runtime/server/error-handler.js +13 -2
  266. package/dist/runtime/server/helpers/command-validation.helper.js +1 -1
  267. package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
  268. package/dist/runtime/server/implementations/local/player.local.js +23 -11
  269. package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
  270. package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
  271. package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
  272. package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
  273. package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
  274. package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
  275. package/dist/runtime/server/library/create-server-library.js +17 -2
  276. package/dist/runtime/server/runtime.d.ts +3 -0
  277. package/dist/runtime/server/runtime.js +1 -15
  278. package/dist/runtime/server/services/appearance.service.d.ts +0 -95
  279. package/dist/runtime/server/services/appearance.service.js +15 -192
  280. package/dist/runtime/server/services/services.register.js +56 -24
  281. package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
  282. package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
  283. package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
  284. package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
  285. package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
  286. package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
  287. package/dist/runtime/shared/helpers/process-tuple-schema.js +29 -0
  288. package/package.json +21 -3
  289. package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
  290. package/dist/adapters/cfx/cfx-capabilities.js +0 -70
  291. package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
  292. package/dist/adapters/cfx/cfx-platform.js +0 -85
  293. package/dist/adapters/cfx/index.d.ts +0 -3
  294. package/dist/adapters/cfx/index.js +0 -3
  295. package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
  296. package/dist/adapters/cfx/runtime-profile.js +0 -37
  297. package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
  298. package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
  299. package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
  300. package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
  301. package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
  302. package/dist/adapters/fivem/fivem-capabilities.js +0 -61
  303. package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
  304. package/dist/adapters/fivem/fivem-engine-events.js +0 -24
  305. package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
  306. package/dist/adapters/fivem/fivem-entity-server.js +0 -87
  307. package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
  308. package/dist/adapters/fivem/fivem-exports.js +0 -9
  309. package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
  310. package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
  311. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
  312. package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
  313. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
  314. package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
  315. package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
  316. package/dist/adapters/fivem/fivem-ped-server.js +0 -30
  317. package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
  318. package/dist/adapters/fivem/fivem-platform.js +0 -74
  319. package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
  320. package/dist/adapters/fivem/fivem-player-server.js +0 -83
  321. package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
  322. package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
  323. package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
  324. package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
  325. package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
  326. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
  327. package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
  328. package/dist/adapters/fivem/index.d.ts +0 -14
  329. package/dist/adapters/fivem/index.js +0 -16
  330. package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
  331. package/dist/adapters/fivem/transport/adapter.js +0 -8
  332. package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
  333. package/dist/adapters/fivem/transport/fivem.events.js +0 -36
  334. package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
  335. package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
  336. package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
  337. package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
  338. package/dist/runtime/client/player/player.d.ts +0 -262
  339. package/dist/runtime/client/player/player.js +0 -474
  340. package/dist/runtime/client/player/player.loader.d.ts +0 -1
  341. package/dist/runtime/client/player/player.loader.js +0 -18
  342. package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
  343. package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
  344. /package/dist/adapters/{fivem/fivem-net-transport.js → contracts/client/spawn/types.js} +0 -0
@@ -1,24 +1,15 @@
1
1
  import { Vector3 } from '../../../kernel/utils/vector3';
2
+ import { IClientPlatformBridge } from '../adapter/platform-bridge';
2
3
  export interface VehicleSpawnOptions {
3
- /** Model name or hash */
4
4
  model: string;
5
- /** Spawn position */
6
5
  position: Vector3;
7
- /** Heading/rotation */
8
6
  heading?: number;
9
- /** Whether to place on ground */
10
7
  placeOnGround?: boolean;
11
- /** Whether to warp the player into the vehicle */
12
8
  warpIntoVehicle?: boolean;
13
- /** Seat index to warp into (-1 = driver) */
14
9
  seatIndex?: number;
15
- /** Primary color */
16
10
  primaryColor?: number;
17
- /** Secondary color */
18
11
  secondaryColor?: number;
19
- /** License plate text */
20
12
  plate?: string;
21
- /** Network the vehicle */
22
13
  networked?: boolean;
23
14
  }
24
15
  export interface VehicleMods {
@@ -47,122 +38,25 @@ export interface VehicleMods {
47
38
  livery?: number;
48
39
  plateStyle?: number;
49
40
  }
50
- /**
51
- * Service for vehicle operations and management.
52
- */
53
41
  export declare class VehicleService {
54
- /**
55
- * Spawn a vehicle at a position.
56
- *
57
- * @param options - Spawn options
58
- * @returns The vehicle handle
59
- */
42
+ private readonly platform;
43
+ constructor(platform: IClientPlatformBridge);
60
44
  spawn(options: VehicleSpawnOptions): Promise<number>;
61
- /**
62
- * Delete a vehicle.
63
- *
64
- * @param vehicle - Vehicle handle
65
- */
66
45
  delete(vehicle: number): void;
67
- /**
68
- * Delete the vehicle the player is currently in.
69
- */
70
46
  deleteCurrentVehicle(): void;
71
- /**
72
- * Repair a vehicle completely.
73
- *
74
- * @param vehicle - Vehicle handle
75
- */
76
47
  repair(vehicle: number): void;
77
- /**
78
- * Set vehicle fuel level.
79
- *
80
- * @param vehicle - Vehicle handle
81
- * @param level - Fuel level (0.0-100.0)
82
- */
83
48
  setFuel(vehicle: number, level: number): void;
84
- /**
85
- * Get vehicle fuel level.
86
- *
87
- * @param vehicle - Vehicle handle
88
- * @returns Fuel level (0.0-1.0)
89
- */
90
49
  getFuel(vehicle: number): number;
91
- /**
92
- * Get the closest vehicle to the player.
93
- *
94
- * @param radius - Search radius
95
- * @returns Vehicle handle or null
96
- */
97
50
  getClosest(radius?: number): number | null;
98
- /**
99
- * Check if the player is in a vehicle.
100
- */
101
51
  isPlayerInVehicle(): boolean;
102
- /**
103
- * Get the vehicle the player is currently in.
104
- *
105
- * @returns Vehicle handle or null
106
- */
107
52
  getCurrentVehicle(): number | null;
108
- /**
109
- * Get the last vehicle the player was in.
110
- *
111
- * @returns Vehicle handle or null
112
- */
113
53
  getLastVehicle(): number | null;
114
- /**
115
- * Check if player is the driver of their current vehicle.
116
- */
117
54
  isPlayerDriver(): boolean;
118
- /**
119
- * Apply modifications to a vehicle.
120
- *
121
- * @param vehicle - Vehicle handle
122
- * @param mods - Modifications to apply
123
- */
124
55
  setMods(vehicle: number, mods: VehicleMods): void;
125
- /**
126
- * Set vehicle doors locked state.
127
- *
128
- * @param vehicle - Vehicle handle
129
- * @param locked - Whether doors should be locked
130
- */
131
56
  setDoorsLocked(vehicle: number, locked: boolean): void;
132
- /**
133
- * Set vehicle engine state.
134
- *
135
- * @param vehicle - Vehicle handle
136
- * @param running - Whether engine should be running
137
- * @param instant - Whether to start instantly
138
- */
139
57
  setEngineRunning(vehicle: number, running: boolean, instant?: boolean): void;
140
- /**
141
- * Set vehicle invincibility.
142
- *
143
- * @param vehicle - Vehicle handle
144
- * @param invincible - Whether vehicle should be invincible
145
- */
146
58
  setInvincible(vehicle: number, invincible: boolean): void;
147
- /**
148
- * Get vehicle speed in km/h.
149
- *
150
- * @param vehicle - Vehicle handle
151
- */
152
59
  getSpeed(vehicle: number): number;
153
- /**
154
- * Set vehicle heading/rotation.
155
- *
156
- * @param vehicle - Vehicle handle
157
- * @param heading - Heading in degrees
158
- */
159
60
  setHeading(vehicle: number, heading: number): void;
160
- /**
161
- * Teleport a vehicle to a position.
162
- *
163
- * @param vehicle - Vehicle handle
164
- * @param position - Target position
165
- * @param heading - Optional heading
166
- */
167
61
  teleport(vehicle: number, position: Vector3, heading?: number): void;
168
62
  }
@@ -4,290 +4,190 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
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
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { injectable } from 'tsyringe';
8
- /**
9
- * Service for vehicle operations and management.
10
- */
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, injectable } from 'tsyringe';
14
+ import { IClientPlatformBridge } from '../adapter/platform-bridge';
11
15
  let VehicleService = class VehicleService {
12
- /**
13
- * Spawn a vehicle at a position.
14
- *
15
- * @param options - Spawn options
16
- * @returns The vehicle handle
17
- */
16
+ platform;
17
+ constructor(platform) {
18
+ this.platform = platform;
19
+ }
18
20
  async spawn(options) {
19
21
  const { model, position, heading = 0, placeOnGround = true, warpIntoVehicle = false, seatIndex = -1, primaryColor, secondaryColor, plate, networked = true, } = options;
20
- const modelHash = GetHashKey(model);
21
- // Load the model
22
- if (!IsModelInCdimage(modelHash) || !IsModelAVehicle(modelHash)) {
22
+ const modelHash = this.platform.getHashKey(model);
23
+ if (!this.platform.isModelInCdimage(modelHash) || !this.platform.isModelAVehicle(modelHash)) {
23
24
  throw new Error(`Invalid vehicle model: ${model}`);
24
25
  }
25
- RequestModel(modelHash);
26
- while (!HasModelLoaded(modelHash)) {
26
+ this.platform.requestModel(modelHash);
27
+ while (!this.platform.hasModelLoaded(modelHash)) {
27
28
  await new Promise((r) => setTimeout(r, 0));
28
29
  }
29
- // Create the vehicle
30
- const vehicle = CreateVehicle(modelHash, position.x, position.y, position.z, heading, networked, false);
31
- SetModelAsNoLongerNeeded(modelHash);
32
- if (!vehicle || vehicle === 0) {
30
+ const vehicle = this.platform.createVehicle(modelHash, position, heading, networked, false);
31
+ this.platform.setModelAsNoLongerNeeded(modelHash);
32
+ if (!vehicle || vehicle === 0)
33
33
  throw new Error('Failed to create vehicle');
34
- }
35
- // Place on ground
36
- if (placeOnGround) {
37
- SetVehicleOnGroundProperly(vehicle);
38
- }
39
- // Set colors
34
+ if (placeOnGround)
35
+ this.platform.setVehicleOnGroundProperly(vehicle);
40
36
  if (primaryColor !== undefined || secondaryColor !== undefined) {
41
- const [currentPrimary, currentSecondary] = GetVehicleColours(vehicle);
42
- SetVehicleColours(vehicle, primaryColor ?? currentPrimary, secondaryColor ?? currentSecondary);
43
- }
44
- // Set plate
45
- if (plate) {
46
- SetVehicleNumberPlateText(vehicle, plate);
47
- }
48
- // Warp player into vehicle
49
- if (warpIntoVehicle) {
50
- TaskWarpPedIntoVehicle(PlayerPedId(), vehicle, seatIndex);
37
+ const [currentPrimary, currentSecondary] = this.platform.getVehicleColours(vehicle);
38
+ this.platform.setVehicleColours(vehicle, primaryColor ?? currentPrimary, secondaryColor ?? currentSecondary);
51
39
  }
40
+ if (plate)
41
+ this.platform.setVehicleNumberPlateText(vehicle, plate);
42
+ if (warpIntoVehicle)
43
+ this.platform.taskWarpPedIntoVehicle(this.platform.getLocalPlayerPed(), vehicle, seatIndex);
52
44
  return vehicle;
53
45
  }
54
- /**
55
- * Delete a vehicle.
56
- *
57
- * @param vehicle - Vehicle handle
58
- */
59
46
  delete(vehicle) {
60
- if (DoesEntityExist(vehicle)) {
61
- SetEntityAsMissionEntity(vehicle, true, true);
62
- DeleteVehicle(vehicle);
47
+ if (this.platform.doesEntityExist(vehicle)) {
48
+ this.platform.setEntityAsMissionEntity(vehicle, true, true);
49
+ this.platform.deleteVehicle(vehicle);
63
50
  }
64
51
  }
65
- /**
66
- * Delete the vehicle the player is currently in.
67
- */
68
52
  deleteCurrentVehicle() {
69
53
  const vehicle = this.getCurrentVehicle();
70
54
  if (vehicle) {
71
- TaskLeaveVehicle(PlayerPedId(), vehicle, 16);
55
+ this.platform.taskLeaveVehicle(this.platform.getLocalPlayerPed(), vehicle, 16);
72
56
  setTimeout(() => this.delete(vehicle), 1000);
73
57
  }
74
58
  }
75
- /**
76
- * Repair a vehicle completely.
77
- *
78
- * @param vehicle - Vehicle handle
79
- */
80
59
  repair(vehicle) {
81
- if (!DoesEntityExist(vehicle))
60
+ if (!this.platform.doesEntityExist(vehicle))
82
61
  return;
83
- SetVehicleFixed(vehicle);
84
- SetVehicleDeformationFixed(vehicle);
85
- SetVehicleUndriveable(vehicle, false);
86
- SetVehicleEngineOn(vehicle, true, true, false);
87
- SetVehicleEngineHealth(vehicle, 1000.0);
88
- SetVehiclePetrolTankHealth(vehicle, 1000.0);
62
+ this.platform.setVehicleFixed(vehicle);
63
+ this.platform.setVehicleDeformationFixed(vehicle);
64
+ this.platform.setVehicleUndriveable(vehicle, false);
65
+ this.platform.setVehicleEngineOn(vehicle, true, true, false);
66
+ this.platform.setVehicleEngineHealth(vehicle, 1000.0);
67
+ this.platform.setVehiclePetrolTankHealth(vehicle, 1000.0);
89
68
  }
90
- /**
91
- * Set vehicle fuel level.
92
- *
93
- * @param vehicle - Vehicle handle
94
- * @param level - Fuel level (0.0-100.0)
95
- */
96
69
  setFuel(vehicle, level) {
97
- if (!DoesEntityExist(vehicle))
70
+ if (!this.platform.doesEntityExist(vehicle))
98
71
  return;
99
- SetVehicleFuelLevel(vehicle, Math.max(0, Math.min(100, level * 100)));
72
+ this.platform.setVehicleFuelLevel(vehicle, Math.max(0, Math.min(100, level * 100)));
100
73
  }
101
- /**
102
- * Get vehicle fuel level.
103
- *
104
- * @param vehicle - Vehicle handle
105
- * @returns Fuel level (0.0-1.0)
106
- */
107
74
  getFuel(vehicle) {
108
- if (!DoesEntityExist(vehicle))
75
+ if (!this.platform.doesEntityExist(vehicle))
109
76
  return 0;
110
- return GetVehicleFuelLevel(vehicle) / 100;
77
+ return this.platform.getVehicleFuelLevel(vehicle) / 100;
111
78
  }
112
- /**
113
- * Get the closest vehicle to the player.
114
- *
115
- * @param radius - Search radius
116
- * @returns Vehicle handle or null
117
- */
118
79
  getClosest(radius = 10.0) {
119
- const playerPed = PlayerPedId();
120
- const [px, py, pz] = GetEntityCoords(playerPed, true);
121
- const vehicle = GetClosestVehicle(px, py, pz, radius, 0, 71);
122
- return vehicle !== 0 ? vehicle : null;
80
+ const playerPed = this.platform.getLocalPlayerPed();
81
+ return this.platform.getClosestVehicle(this.platform.getEntityCoords(playerPed), radius);
123
82
  }
124
- /**
125
- * Check if the player is in a vehicle.
126
- */
127
83
  isPlayerInVehicle() {
128
- return IsPedInAnyVehicle(PlayerPedId(), false);
84
+ return this.platform.isPedInAnyVehicle(this.platform.getLocalPlayerPed());
129
85
  }
130
- /**
131
- * Get the vehicle the player is currently in.
132
- *
133
- * @returns Vehicle handle or null
134
- */
135
86
  getCurrentVehicle() {
136
- const ped = PlayerPedId();
137
- if (!IsPedInAnyVehicle(ped, false))
87
+ const ped = this.platform.getLocalPlayerPed();
88
+ if (!this.platform.isPedInAnyVehicle(ped))
138
89
  return null;
139
- return GetVehiclePedIsIn(ped, false);
90
+ return this.platform.getVehiclePedIsIn(ped, false);
140
91
  }
141
- /**
142
- * Get the last vehicle the player was in.
143
- *
144
- * @returns Vehicle handle or null
145
- */
146
92
  getLastVehicle() {
147
- const vehicle = GetVehiclePedIsIn(PlayerPedId(), true);
148
- return vehicle !== 0 ? vehicle : null;
93
+ return this.platform.getVehiclePedIsIn(this.platform.getLocalPlayerPed(), true);
149
94
  }
150
- /**
151
- * Check if player is the driver of their current vehicle.
152
- */
153
95
  isPlayerDriver() {
154
96
  const vehicle = this.getCurrentVehicle();
155
97
  if (!vehicle)
156
98
  return false;
157
- return GetPedInVehicleSeat(vehicle, -1) === PlayerPedId();
99
+ return this.platform.getPedInVehicleSeat(vehicle, -1) === this.platform.getLocalPlayerPed();
158
100
  }
159
- /**
160
- * Apply modifications to a vehicle.
161
- *
162
- * @param vehicle - Vehicle handle
163
- * @param mods - Modifications to apply
164
- */
165
101
  setMods(vehicle, mods) {
166
- if (!DoesEntityExist(vehicle))
102
+ if (!this.platform.doesEntityExist(vehicle))
167
103
  return;
168
- SetVehicleModKit(vehicle, 0);
104
+ this.platform.setVehicleModKit(vehicle, 0);
169
105
  if (mods.spoiler !== undefined)
170
- SetVehicleMod(vehicle, 0, mods.spoiler, false);
106
+ this.platform.setVehicleMod(vehicle, 0, mods.spoiler, false);
171
107
  if (mods.frontBumper !== undefined)
172
- SetVehicleMod(vehicle, 1, mods.frontBumper, false);
108
+ this.platform.setVehicleMod(vehicle, 1, mods.frontBumper, false);
173
109
  if (mods.rearBumper !== undefined)
174
- SetVehicleMod(vehicle, 2, mods.rearBumper, false);
110
+ this.platform.setVehicleMod(vehicle, 2, mods.rearBumper, false);
175
111
  if (mods.sideSkirt !== undefined)
176
- SetVehicleMod(vehicle, 3, mods.sideSkirt, false);
112
+ this.platform.setVehicleMod(vehicle, 3, mods.sideSkirt, false);
177
113
  if (mods.exhaust !== undefined)
178
- SetVehicleMod(vehicle, 4, mods.exhaust, false);
114
+ this.platform.setVehicleMod(vehicle, 4, mods.exhaust, false);
179
115
  if (mods.frame !== undefined)
180
- SetVehicleMod(vehicle, 5, mods.frame, false);
116
+ this.platform.setVehicleMod(vehicle, 5, mods.frame, false);
181
117
  if (mods.grille !== undefined)
182
- SetVehicleMod(vehicle, 6, mods.grille, false);
118
+ this.platform.setVehicleMod(vehicle, 6, mods.grille, false);
183
119
  if (mods.hood !== undefined)
184
- SetVehicleMod(vehicle, 7, mods.hood, false);
120
+ this.platform.setVehicleMod(vehicle, 7, mods.hood, false);
185
121
  if (mods.fender !== undefined)
186
- SetVehicleMod(vehicle, 8, mods.fender, false);
122
+ this.platform.setVehicleMod(vehicle, 8, mods.fender, false);
187
123
  if (mods.rightFender !== undefined)
188
- SetVehicleMod(vehicle, 9, mods.rightFender, false);
124
+ this.platform.setVehicleMod(vehicle, 9, mods.rightFender, false);
189
125
  if (mods.roof !== undefined)
190
- SetVehicleMod(vehicle, 10, mods.roof, false);
126
+ this.platform.setVehicleMod(vehicle, 10, mods.roof, false);
191
127
  if (mods.engine !== undefined)
192
- SetVehicleMod(vehicle, 11, mods.engine, false);
128
+ this.platform.setVehicleMod(vehicle, 11, mods.engine, false);
193
129
  if (mods.brakes !== undefined)
194
- SetVehicleMod(vehicle, 12, mods.brakes, false);
130
+ this.platform.setVehicleMod(vehicle, 12, mods.brakes, false);
195
131
  if (mods.transmission !== undefined)
196
- SetVehicleMod(vehicle, 13, mods.transmission, false);
132
+ this.platform.setVehicleMod(vehicle, 13, mods.transmission, false);
197
133
  if (mods.horns !== undefined)
198
- SetVehicleMod(vehicle, 14, mods.horns, false);
134
+ this.platform.setVehicleMod(vehicle, 14, mods.horns, false);
199
135
  if (mods.suspension !== undefined)
200
- SetVehicleMod(vehicle, 15, mods.suspension, false);
136
+ this.platform.setVehicleMod(vehicle, 15, mods.suspension, false);
201
137
  if (mods.armor !== undefined)
202
- SetVehicleMod(vehicle, 16, mods.armor, false);
138
+ this.platform.setVehicleMod(vehicle, 16, mods.armor, false);
203
139
  if (mods.turbo !== undefined)
204
- ToggleVehicleMod(vehicle, 18, mods.turbo);
140
+ this.platform.toggleVehicleMod(vehicle, 18, mods.turbo);
205
141
  if (mods.xenon !== undefined)
206
- ToggleVehicleMod(vehicle, 22, mods.xenon);
142
+ this.platform.toggleVehicleMod(vehicle, 22, mods.xenon);
207
143
  if (mods.wheelType !== undefined)
208
- SetVehicleWheelType(vehicle, mods.wheelType);
144
+ this.platform.setVehicleWheelType(vehicle, mods.wheelType);
209
145
  if (mods.wheels !== undefined)
210
- SetVehicleMod(vehicle, 23, mods.wheels, false);
146
+ this.platform.setVehicleMod(vehicle, 23, mods.wheels, false);
211
147
  if (mods.windowTint !== undefined)
212
- SetVehicleWindowTint(vehicle, mods.windowTint);
148
+ this.platform.setVehicleWindowTint(vehicle, mods.windowTint);
213
149
  if (mods.livery !== undefined)
214
- SetVehicleLivery(vehicle, mods.livery);
150
+ this.platform.setVehicleLivery(vehicle, mods.livery);
215
151
  if (mods.plateStyle !== undefined)
216
- SetVehicleNumberPlateTextIndex(vehicle, mods.plateStyle);
152
+ this.platform.setVehicleNumberPlateTextIndex(vehicle, mods.plateStyle);
217
153
  }
218
- /**
219
- * Set vehicle doors locked state.
220
- *
221
- * @param vehicle - Vehicle handle
222
- * @param locked - Whether doors should be locked
223
- */
224
154
  setDoorsLocked(vehicle, locked) {
225
- if (!DoesEntityExist(vehicle))
155
+ if (!this.platform.doesEntityExist(vehicle))
226
156
  return;
227
- SetVehicleDoorsLocked(vehicle, locked ? 2 : 0);
157
+ this.platform.setVehicleDoorsLocked(vehicle, locked ? 2 : 0);
228
158
  }
229
- /**
230
- * Set vehicle engine state.
231
- *
232
- * @param vehicle - Vehicle handle
233
- * @param running - Whether engine should be running
234
- * @param instant - Whether to start instantly
235
- */
236
159
  setEngineRunning(vehicle, running, instant = false) {
237
- if (!DoesEntityExist(vehicle))
160
+ if (!this.platform.doesEntityExist(vehicle))
238
161
  return;
239
- SetVehicleEngineOn(vehicle, running, instant, true);
162
+ this.platform.setVehicleEngineOn(vehicle, running, instant, true);
240
163
  }
241
- /**
242
- * Set vehicle invincibility.
243
- *
244
- * @param vehicle - Vehicle handle
245
- * @param invincible - Whether vehicle should be invincible
246
- */
247
164
  setInvincible(vehicle, invincible) {
248
- if (!DoesEntityExist(vehicle))
165
+ if (!this.platform.doesEntityExist(vehicle))
249
166
  return;
250
- SetEntityInvincible(vehicle, invincible);
167
+ this.platform.setEntityInvincible(vehicle, invincible);
251
168
  }
252
- /**
253
- * Get vehicle speed in km/h.
254
- *
255
- * @param vehicle - Vehicle handle
256
- */
257
169
  getSpeed(vehicle) {
258
- if (!DoesEntityExist(vehicle))
170
+ if (!this.platform.doesEntityExist(vehicle))
259
171
  return 0;
260
- return GetEntitySpeed(vehicle) * 3.6; // Convert m/s to km/h
172
+ return this.platform.getEntitySpeed(vehicle) * 3.6;
261
173
  }
262
- /**
263
- * Set vehicle heading/rotation.
264
- *
265
- * @param vehicle - Vehicle handle
266
- * @param heading - Heading in degrees
267
- */
268
174
  setHeading(vehicle, heading) {
269
- if (!DoesEntityExist(vehicle))
175
+ if (!this.platform.doesEntityExist(vehicle))
270
176
  return;
271
- SetEntityHeading(vehicle, heading);
177
+ this.platform.setEntityHeading(vehicle, heading);
272
178
  }
273
- /**
274
- * Teleport a vehicle to a position.
275
- *
276
- * @param vehicle - Vehicle handle
277
- * @param position - Target position
278
- * @param heading - Optional heading
279
- */
280
179
  teleport(vehicle, position, heading) {
281
- if (!DoesEntityExist(vehicle))
180
+ if (!this.platform.doesEntityExist(vehicle))
282
181
  return;
283
- SetEntityCoords(vehicle, position.x, position.y, position.z, false, false, false, true);
284
- if (heading !== undefined) {
285
- SetEntityHeading(vehicle, heading);
286
- }
287
- SetVehicleOnGroundProperly(vehicle);
182
+ this.platform.setEntityCoords(vehicle, position);
183
+ if (heading !== undefined)
184
+ this.platform.setEntityHeading(vehicle, heading);
185
+ this.platform.setVehicleOnGroundProperly(vehicle);
288
186
  }
289
187
  };
290
188
  VehicleService = __decorate([
291
- injectable()
189
+ injectable(),
190
+ __param(0, inject(IClientPlatformBridge)),
191
+ __metadata("design:paramtypes", [IClientPlatformBridge])
292
192
  ], VehicleService);
293
193
  export { VehicleService };
@@ -1,6 +1,9 @@
1
1
  import { DecoratorProcessor } from '../../../../kernel/di/decorator-processor';
2
+ import { IClientRuntimeBridge } from '../../adapter/runtime-bridge';
2
3
  export declare class ClientExportProcessor implements DecoratorProcessor {
4
+ private readonly runtime;
3
5
  readonly metadataKey: string;
6
+ constructor(runtime: IClientRuntimeBridge);
4
7
  process(target: any, methodName: string, metadata: {
5
8
  exportName: string;
6
9
  }): void;
@@ -4,16 +4,27 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
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
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { injectable } from 'tsyringe';
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, injectable } from 'tsyringe';
8
14
  import { coreLogger, LogDomain } from '../../../../kernel/logger';
15
+ import { IClientRuntimeBridge } from '../../adapter/runtime-bridge';
9
16
  import { METADATA_KEYS } from '../metadata-client.keys';
10
17
  const clientExport = coreLogger.child('Export', LogDomain.CLIENT);
11
18
  let ClientExportProcessor = class ClientExportProcessor {
19
+ runtime;
12
20
  metadataKey = METADATA_KEYS.EXPORT;
21
+ constructor(runtime) {
22
+ this.runtime = runtime;
23
+ }
13
24
  process(target, methodName, metadata) {
14
25
  const handler = target[methodName].bind(target);
15
26
  const handlerName = `${target.constructor.name}.${methodName}`;
16
- globalThis.exports(metadata.exportName, async (...args) => {
27
+ this.runtime.registerExport(metadata.exportName, async (...args) => {
17
28
  try {
18
29
  return await handler(...args);
19
30
  }
@@ -29,6 +40,8 @@ let ClientExportProcessor = class ClientExportProcessor {
29
40
  }
30
41
  };
31
42
  ClientExportProcessor = __decorate([
32
- injectable()
43
+ injectable(),
44
+ __param(0, inject(IClientRuntimeBridge)),
45
+ __metadata("design:paramtypes", [IClientRuntimeBridge])
33
46
  ], ClientExportProcessor);
34
47
  export { ClientExportProcessor };
@@ -1,10 +1,13 @@
1
1
  import { DecoratorProcessor } from '../../../../kernel/di/decorator-processor';
2
+ import { IClientRuntimeBridge } from '../../adapter/runtime-bridge';
2
3
  interface GameEventMetadata {
3
4
  eventName: string;
4
5
  autoParse: boolean;
5
6
  }
6
7
  export declare class GameEventProcessor implements DecoratorProcessor {
8
+ private readonly runtime;
7
9
  readonly metadataKey: string;
10
+ constructor(runtime: IClientRuntimeBridge);
8
11
  process(target: any, methodName: string, metadata: GameEventMetadata): void;
9
12
  }
10
13
  export {};
@@ -4,8 +4,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
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
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { injectable } from 'tsyringe';
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, injectable } from 'tsyringe';
8
14
  import { coreLogger, LogDomain } from '../../../../kernel/logger';
15
+ import { IClientRuntimeBridge } from '../../adapter/runtime-bridge';
9
16
  import { GameEventParsers } from '../../types/game-events';
10
17
  import { METADATA_KEYS } from '../metadata-client.keys';
11
18
  const clientGameEvent = coreLogger.child('GameEvent', LogDomain.CLIENT);
@@ -19,12 +26,16 @@ const parserMap = {
19
26
  CEventGunShot: GameEventParsers.parseGunShot,
20
27
  };
21
28
  let GameEventProcessor = class GameEventProcessor {
29
+ runtime;
22
30
  metadataKey = METADATA_KEYS.GAME_EVENT;
31
+ constructor(runtime) {
32
+ this.runtime = runtime;
33
+ }
23
34
  process(target, methodName, metadata) {
24
35
  const handler = target[methodName].bind(target);
25
36
  const handlerName = `${target.constructor.name}.${methodName}`;
26
37
  const { eventName, autoParse } = metadata;
27
- on('gameEventTriggered', async (name, args) => {
38
+ this.runtime.on('gameEventTriggered', async (name, args) => {
28
39
  if (name !== eventName)
29
40
  return;
30
41
  try {
@@ -48,6 +59,8 @@ let GameEventProcessor = class GameEventProcessor {
48
59
  }
49
60
  };
50
61
  GameEventProcessor = __decorate([
51
- injectable()
62
+ injectable(),
63
+ __param(0, inject(IClientRuntimeBridge)),
64
+ __metadata("design:paramtypes", [IClientRuntimeBridge])
52
65
  ], GameEventProcessor);
53
66
  export { GameEventProcessor };
@@ -1,6 +1,9 @@
1
1
  import { DecoratorProcessor } from '../../../../kernel/di/decorator-processor';
2
+ import { IClientRuntimeBridge } from '../../adapter/runtime-bridge';
2
3
  export declare class IntervalProcessor implements DecoratorProcessor {
4
+ private readonly runtime;
3
5
  readonly metadataKey: string;
6
+ constructor(runtime: IClientRuntimeBridge);
4
7
  process(target: any, methodName: string, metadata: {
5
8
  interval: number;
6
9
  }): void;