@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.
- package/dist/adapters/contracts/IEngineEvents.d.ts +3 -0
- package/dist/adapters/contracts/IEngineEvents.js +7 -0
- package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
- package/dist/adapters/contracts/IPlatformContext.js +8 -0
- package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +4 -0
- package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +2 -0
- package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
- package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
- package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
- package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
- package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
- package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
- package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
- package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
- package/dist/adapters/contracts/client/index.d.ts +7 -0
- package/dist/adapters/contracts/client/index.js +7 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +7 -0
- package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +2 -0
- package/dist/adapters/contracts/client/spawn/index.d.ts +2 -0
- package/dist/adapters/contracts/client/spawn/index.js +2 -0
- package/dist/adapters/contracts/client/spawn/types.d.ts +14 -0
- package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
- package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
- package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
- package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
- package/dist/adapters/contracts/client/ui/index.js +4 -0
- package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +13 -0
- package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
- package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
- package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
- package/dist/adapters/contracts/client/ui/webview/types.d.ts +25 -0
- package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
- package/dist/adapters/contracts/index.d.ts +4 -2
- package/dist/adapters/contracts/index.js +4 -3
- package/dist/adapters/contracts/runtime/index.d.ts +1 -0
- package/dist/adapters/contracts/runtime/index.js +1 -0
- package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
- package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
- package/dist/adapters/contracts/server/IEntityServer.d.ts +4 -28
- package/dist/adapters/contracts/server/IEntityServer.js +0 -26
- package/dist/adapters/contracts/server/IPlayerServer.d.ts +7 -26
- package/dist/adapters/contracts/server/IPlayerServer.js +0 -26
- package/dist/adapters/contracts/server/index.d.ts +10 -0
- package/dist/adapters/contracts/server/index.js +10 -0
- package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
- package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
- package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
- package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
- package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
- package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
- package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
- package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
- package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
- package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
- package/dist/adapters/contracts/server/player-state/index.js +1 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
- package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
- package/dist/adapters/contracts/transport/index.d.ts +4 -0
- package/dist/adapters/contracts/transport/index.js +4 -0
- package/dist/adapters/index.d.ts +3 -14
- package/dist/adapters/index.js +3 -20
- package/dist/adapters/node/node-capabilities.d.ts +11 -11
- package/dist/adapters/node/node-capabilities.js +15 -27
- package/dist/adapters/node/node-engine-events.d.ts +1 -1
- package/dist/adapters/node/node-engine-events.js +2 -1
- package/dist/adapters/node/node-entity-server.d.ts +2 -2
- package/dist/adapters/node/node-entity-server.js +2 -2
- package/dist/adapters/node/node-ped-appearance-client.d.ts +2 -2
- package/dist/adapters/node/node-ped-appearance-client.js +2 -2
- package/dist/adapters/node/node-platform.js +4 -4
- package/dist/adapters/node/node-player-server.d.ts +3 -2
- package/dist/adapters/node/node-player-server.js +8 -2
- package/dist/adapters/register-capabilities.d.ts +1 -1
- package/dist/adapters/register-capabilities.js +1 -3
- package/dist/adapters/register-client-capabilities.d.ts +3 -2
- package/dist/adapters/register-client-capabilities.js +16 -41
- package/dist/contracts/client.d.ts +5 -0
- package/dist/contracts/client.js +5 -0
- package/dist/contracts/server.d.ts +19 -0
- package/dist/contracts/server.js +19 -0
- package/dist/contracts.d.ts +4 -0
- package/dist/contracts.js +4 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/kernel/logger/client-log-console.d.ts +4 -0
- package/dist/kernel/logger/client-log-console.js +43 -0
- package/dist/kernel/logger/core-logger.d.ts +3 -1
- package/dist/kernel/logger/core-logger.js +4 -2
- package/dist/kernel/logger/index.d.ts +2 -0
- package/dist/kernel/logger/index.js +1 -0
- package/dist/kernel/logger/transports/dev-transport.factory.js +1 -1
- package/dist/kernel/logger/transports/simple-console.transport.js +13 -8
- package/dist/kernel-public.d.ts +1 -0
- package/dist/kernel-public.js +1 -0
- package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
- package/dist/runtime/client/adapter/client-adapter.js +11 -0
- package/dist/runtime/client/adapter/index.d.ts +15 -0
- package/dist/runtime/client/adapter/index.js +15 -0
- package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
- package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
- package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
- package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
- package/dist/runtime/client/adapter/node-client-adapter.js +50 -0
- package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +8 -0
- package/dist/{adapters/fivem/fivem-hasher.js → runtime/client/adapter/node-local-player-bridge.js} +7 -9
- package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
- package/dist/runtime/client/adapter/node-log-console.js +48 -0
- package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
- package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
- package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
- package/dist/runtime/client/adapter/node-notification-bridge.js +16 -0
- package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
- package/dist/{adapters/fivem/fivem-tick.js → runtime/client/adapter/node-platform-bridge.js} +5 -10
- package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +24 -0
- package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
- package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
- package/dist/runtime/client/adapter/node-spawn-bridge.js +18 -0
- package/dist/runtime/client/adapter/node-webview-bridge.d.ts +15 -0
- package/dist/runtime/client/adapter/node-webview-bridge.js +43 -0
- package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/platform-bridge.js +1 -0
- package/dist/runtime/client/adapter/registry.d.ts +9 -0
- package/dist/runtime/client/adapter/registry.js +85 -0
- package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
- package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
- package/dist/runtime/client/api.d.ts +2 -1
- package/dist/runtime/client/api.js +2 -1
- package/dist/runtime/client/client-bootstrap.js +51 -44
- package/dist/runtime/client/client-core.d.ts +2 -0
- package/dist/runtime/client/client-core.js +9 -0
- package/dist/runtime/client/client-runtime.d.ts +3 -0
- package/dist/runtime/client/client-runtime.js +3 -0
- package/dist/runtime/client/controllers/appearance.controller.d.ts +3 -1
- package/dist/runtime/client/controllers/appearance.controller.js +14 -4
- package/dist/runtime/client/controllers/spawner.controller.js +2 -0
- package/dist/runtime/client/decorators/controller.js +2 -10
- package/dist/runtime/client/decorators/onView.d.ts +3 -3
- package/dist/runtime/client/decorators/onView.js +3 -3
- package/dist/runtime/client/index.d.ts +1 -0
- package/dist/runtime/client/index.js +1 -0
- package/dist/runtime/client/library/create-client-library.js +9 -1
- package/dist/runtime/client/services/appearance.service.d.ts +2 -2
- package/dist/runtime/client/services/appearance.service.js +7 -4
- package/dist/runtime/client/services/blip.service.d.ts +6 -93
- package/dist/runtime/client/services/blip.service.js +58 -153
- package/dist/runtime/client/services/camera-effects.registry.d.ts +3 -0
- package/dist/runtime/client/services/camera-effects.registry.js +20 -7
- package/dist/runtime/client/services/camera.d.ts +3 -83
- package/dist/runtime/client/services/camera.js +37 -93
- package/dist/runtime/client/services/cinematic.d.ts +5 -1
- package/dist/runtime/client/services/cinematic.js +45 -30
- package/dist/runtime/client/services/index.d.ts +1 -0
- package/dist/runtime/client/services/index.js +1 -0
- package/dist/runtime/client/services/marker.service.d.ts +12 -63
- package/dist/runtime/client/services/marker.service.js +62 -97
- package/dist/runtime/client/services/notification.service.d.ts +6 -57
- package/dist/runtime/client/services/notification.service.js +43 -81
- package/dist/runtime/client/services/ped.service.d.ts +3 -130
- package/dist/runtime/client/services/ped.service.js +66 -198
- package/dist/runtime/client/services/progress.service.d.ts +5 -30
- package/dist/runtime/client/services/progress.service.js +73 -99
- package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
- package/dist/runtime/client/services/session-bridge.service.js +61 -0
- package/dist/runtime/client/services/spawn.service.d.ts +6 -56
- package/dist/runtime/client/services/spawn.service.js +34 -191
- package/dist/runtime/client/services/streaming.service.d.ts +5 -126
- package/dist/runtime/client/services/streaming.service.js +72 -217
- package/dist/runtime/client/services/textui.service.d.ts +5 -45
- package/dist/runtime/client/services/textui.service.js +55 -88
- package/dist/runtime/client/services/vehicle-client.service.d.ts +12 -149
- package/dist/runtime/client/services/vehicle-client.service.js +180 -326
- package/dist/runtime/client/services/vehicle.service.d.ts +3 -109
- package/dist/runtime/client/services/vehicle.service.js +94 -194
- package/dist/runtime/client/system/processors/export.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/export.processor.js +16 -3
- package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/gameEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/interval.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/interval.processor.js +17 -4
- package/dist/runtime/client/system/processors/key.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/key.processor.js +18 -5
- package/dist/runtime/client/system/processors/localEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/localEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/netEvent.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/netEvent.processor.js +16 -3
- package/dist/runtime/client/system/processors/onRpc.processor.js +1 -1
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +5 -0
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +26 -7
- package/dist/runtime/client/system/processors/tick.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/tick.processor.js +16 -3
- package/dist/runtime/client/system/processors/view.processor.d.ts +3 -0
- package/dist/runtime/client/system/processors/view.processor.js +21 -10
- package/dist/runtime/client/system/processors.register.d.ts +1 -0
- package/dist/runtime/client/system/processors.register.js +8 -0
- package/dist/runtime/client/ui-bridge.d.ts +2 -114
- package/dist/runtime/client/ui-bridge.js +2 -194
- package/dist/runtime/client/webview-bridge.d.ts +31 -0
- package/dist/runtime/client/webview-bridge.js +97 -0
- package/dist/runtime/client/webview.service.d.ts +14 -0
- package/dist/runtime/client/webview.service.js +98 -0
- package/dist/runtime/server/adapter/index.d.ts +5 -0
- package/dist/runtime/server/adapter/index.js +5 -0
- package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
- package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
- package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
- package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +94 -0
- package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
- package/dist/runtime/server/adapter/node-player-lifecycle-server.js +55 -0
- package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
- package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
- package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
- package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
- package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
- package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +57 -0
- package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
- package/dist/runtime/server/adapter/player-adapter.js +28 -0
- package/dist/runtime/server/adapter/registry.d.ts +26 -0
- package/dist/runtime/server/adapter/registry.js +101 -0
- package/dist/runtime/server/adapter/serialization.d.ts +6 -0
- package/dist/runtime/server/adapter/serialization.js +9 -0
- package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
- package/dist/runtime/server/adapter/server-adapter.js +14 -0
- package/dist/runtime/server/api.d.ts +2 -1
- package/dist/runtime/server/api.js +2 -1
- package/dist/runtime/server/apis/appearance.api.d.ts +5 -3
- package/dist/runtime/server/apis/appearance.api.js +20 -7
- package/dist/runtime/server/apis/npcs.api.d.ts +3 -4
- package/dist/runtime/server/apis/npcs.api.js +26 -56
- package/dist/runtime/server/apis/vehicle-modification.api.d.ts +3 -1
- package/dist/runtime/server/apis/vehicle-modification.api.js +9 -4
- package/dist/runtime/server/apis/vehicles.api.d.ts +12 -6
- package/dist/runtime/server/apis/vehicles.api.js +48 -36
- package/dist/runtime/server/bootstrap.js +15 -7
- package/dist/runtime/server/controllers/channel.controller.js +2 -1
- package/dist/runtime/server/controllers/command-export.controller.js +1 -1
- package/dist/runtime/server/controllers/player-export.controller.js +5 -4
- package/dist/runtime/server/controllers/session.controller.js +3 -2
- package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -1
- package/dist/runtime/server/controllers/vehicle.controller.js +10 -5
- package/dist/runtime/server/core.d.ts +2 -0
- package/dist/runtime/server/core.js +9 -1
- package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +2 -1
- package/dist/runtime/server/entities/npc.d.ts +2 -0
- package/dist/runtime/server/entities/npc.js +3 -3
- package/dist/runtime/server/entities/player.d.ts +8 -11
- package/dist/runtime/server/entities/player.js +39 -28
- package/dist/runtime/server/entities/vehicle.js +2 -2
- package/dist/runtime/server/error-handler.js +13 -2
- package/dist/runtime/server/helpers/command-validation.helper.js +1 -1
- package/dist/runtime/server/implementations/local/player.local.d.ts +7 -3
- package/dist/runtime/server/implementations/local/player.local.js +23 -11
- package/dist/runtime/server/implementations/remote/channel.remote.d.ts +2 -1
- package/dist/runtime/server/implementations/remote/channel.remote.js +5 -2
- package/dist/runtime/server/implementations/remote/command.remote.d.ts +3 -1
- package/dist/runtime/server/implementations/remote/command.remote.js +9 -4
- package/dist/runtime/server/implementations/remote/player.remote.d.ts +7 -10
- package/dist/runtime/server/implementations/remote/player.remote.js +24 -29
- package/dist/runtime/server/library/create-server-library.js +17 -2
- package/dist/runtime/server/runtime.d.ts +3 -0
- package/dist/runtime/server/runtime.js +1 -15
- package/dist/runtime/server/services/appearance.service.d.ts +0 -95
- package/dist/runtime/server/services/appearance.service.js +15 -192
- package/dist/runtime/server/services/services.register.js +56 -24
- package/dist/runtime/server/system/processors/netEvent.processor.js +1 -1
- package/dist/runtime/server/system/processors/onRpc.processor.js +1 -1
- package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +2 -1
- package/dist/runtime/server/system/processors/runtimeEvent.processor.js +1 -1
- package/dist/runtime/server/types/core-exports.types.d.ts +5 -0
- package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
- package/dist/runtime/shared/helpers/process-tuple-schema.js +29 -0
- package/package.json +21 -3
- package/dist/adapters/cfx/cfx-capabilities.d.ts +0 -16
- package/dist/adapters/cfx/cfx-capabilities.js +0 -70
- package/dist/adapters/cfx/cfx-platform.d.ts +0 -2
- package/dist/adapters/cfx/cfx-platform.js +0 -85
- package/dist/adapters/cfx/index.d.ts +0 -3
- package/dist/adapters/cfx/index.js +0 -3
- package/dist/adapters/cfx/runtime-profile.d.ts +0 -3
- package/dist/adapters/cfx/runtime-profile.js +0 -37
- package/dist/adapters/contracts/IPlatformCapabilities.d.ts +0 -79
- package/dist/adapters/contracts/IPlatformCapabilities.js +0 -27
- package/dist/adapters/contracts/client/IPedAppearanceClient.d.ts +0 -206
- package/dist/adapters/contracts/client/IPedAppearanceClient.js +0 -12
- package/dist/adapters/fivem/fivem-capabilities.d.ts +0 -18
- package/dist/adapters/fivem/fivem-capabilities.js +0 -61
- package/dist/adapters/fivem/fivem-engine-events.d.ts +0 -5
- package/dist/adapters/fivem/fivem-engine-events.js +0 -24
- package/dist/adapters/fivem/fivem-entity-server.d.ts +0 -26
- package/dist/adapters/fivem/fivem-entity-server.js +0 -87
- package/dist/adapters/fivem/fivem-exports.d.ts +0 -5
- package/dist/adapters/fivem/fivem-exports.js +0 -9
- package/dist/adapters/fivem/fivem-hasher.d.ts +0 -7
- package/dist/adapters/fivem/fivem-net-transport.d.ts +0 -1
- package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +0 -34
- package/dist/adapters/fivem/fivem-ped-appearance-client.js +0 -79
- package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +0 -14
- package/dist/adapters/fivem/fivem-ped-appearance-server.js +0 -22
- package/dist/adapters/fivem/fivem-ped-server.d.ts +0 -9
- package/dist/adapters/fivem/fivem-ped-server.js +0 -30
- package/dist/adapters/fivem/fivem-platform.d.ts +0 -5
- package/dist/adapters/fivem/fivem-platform.js +0 -74
- package/dist/adapters/fivem/fivem-player-server.d.ts +0 -24
- package/dist/adapters/fivem/fivem-player-server.js +0 -83
- package/dist/adapters/fivem/fivem-playerinfo.d.ts +0 -6
- package/dist/adapters/fivem/fivem-playerinfo.js +0 -10
- package/dist/adapters/fivem/fivem-resourceinfo.d.ts +0 -5
- package/dist/adapters/fivem/fivem-resourceinfo.js +0 -24
- package/dist/adapters/fivem/fivem-tick.d.ts +0 -7
- package/dist/adapters/fivem/fivem-vehicle-server.d.ts +0 -15
- package/dist/adapters/fivem/fivem-vehicle-server.js +0 -44
- package/dist/adapters/fivem/index.d.ts +0 -14
- package/dist/adapters/fivem/index.js +0 -16
- package/dist/adapters/fivem/transport/adapter.d.ts +0 -8
- package/dist/adapters/fivem/transport/adapter.js +0 -8
- package/dist/adapters/fivem/transport/fivem.events.d.ts +0 -8
- package/dist/adapters/fivem/transport/fivem.events.js +0 -36
- package/dist/adapters/fivem/transport/fivem.rpc.d.ts +0 -28
- package/dist/adapters/fivem/transport/fivem.rpc.js +0 -183
- package/dist/runtime/client/controllers/player-sync.controller.d.ts +0 -11
- package/dist/runtime/client/controllers/player-sync.controller.js +0 -51
- package/dist/runtime/client/player/player.d.ts +0 -262
- package/dist/runtime/client/player/player.js +0 -474
- package/dist/runtime/client/player/player.loader.d.ts +0 -1
- package/dist/runtime/client/player/player.loader.js +0 -18
- package/dist/runtime/server/helpers/process-tuple-schema.d.ts +0 -20
- package/dist/runtime/server/helpers/process-tuple-schema.js +0 -56
- /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
|
-
|
|
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
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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 =
|
|
21
|
-
|
|
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
|
-
|
|
26
|
-
while (!
|
|
26
|
+
this.platform.requestModel(modelHash);
|
|
27
|
+
while (!this.platform.hasModelLoaded(modelHash)) {
|
|
27
28
|
await new Promise((r) => setTimeout(r, 0));
|
|
28
29
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
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
|
-
|
|
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] =
|
|
42
|
-
|
|
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 (
|
|
61
|
-
|
|
62
|
-
|
|
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
|
-
|
|
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 (!
|
|
60
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
82
61
|
return;
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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 (!
|
|
70
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
98
71
|
return;
|
|
99
|
-
|
|
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 (!
|
|
75
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
109
76
|
return 0;
|
|
110
|
-
return
|
|
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 =
|
|
120
|
-
|
|
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
|
|
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 =
|
|
137
|
-
if (!
|
|
87
|
+
const ped = this.platform.getLocalPlayerPed();
|
|
88
|
+
if (!this.platform.isPedInAnyVehicle(ped))
|
|
138
89
|
return null;
|
|
139
|
-
return
|
|
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
|
-
|
|
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
|
|
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 (!
|
|
102
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
167
103
|
return;
|
|
168
|
-
|
|
104
|
+
this.platform.setVehicleModKit(vehicle, 0);
|
|
169
105
|
if (mods.spoiler !== undefined)
|
|
170
|
-
|
|
106
|
+
this.platform.setVehicleMod(vehicle, 0, mods.spoiler, false);
|
|
171
107
|
if (mods.frontBumper !== undefined)
|
|
172
|
-
|
|
108
|
+
this.platform.setVehicleMod(vehicle, 1, mods.frontBumper, false);
|
|
173
109
|
if (mods.rearBumper !== undefined)
|
|
174
|
-
|
|
110
|
+
this.platform.setVehicleMod(vehicle, 2, mods.rearBumper, false);
|
|
175
111
|
if (mods.sideSkirt !== undefined)
|
|
176
|
-
|
|
112
|
+
this.platform.setVehicleMod(vehicle, 3, mods.sideSkirt, false);
|
|
177
113
|
if (mods.exhaust !== undefined)
|
|
178
|
-
|
|
114
|
+
this.platform.setVehicleMod(vehicle, 4, mods.exhaust, false);
|
|
179
115
|
if (mods.frame !== undefined)
|
|
180
|
-
|
|
116
|
+
this.platform.setVehicleMod(vehicle, 5, mods.frame, false);
|
|
181
117
|
if (mods.grille !== undefined)
|
|
182
|
-
|
|
118
|
+
this.platform.setVehicleMod(vehicle, 6, mods.grille, false);
|
|
183
119
|
if (mods.hood !== undefined)
|
|
184
|
-
|
|
120
|
+
this.platform.setVehicleMod(vehicle, 7, mods.hood, false);
|
|
185
121
|
if (mods.fender !== undefined)
|
|
186
|
-
|
|
122
|
+
this.platform.setVehicleMod(vehicle, 8, mods.fender, false);
|
|
187
123
|
if (mods.rightFender !== undefined)
|
|
188
|
-
|
|
124
|
+
this.platform.setVehicleMod(vehicle, 9, mods.rightFender, false);
|
|
189
125
|
if (mods.roof !== undefined)
|
|
190
|
-
|
|
126
|
+
this.platform.setVehicleMod(vehicle, 10, mods.roof, false);
|
|
191
127
|
if (mods.engine !== undefined)
|
|
192
|
-
|
|
128
|
+
this.platform.setVehicleMod(vehicle, 11, mods.engine, false);
|
|
193
129
|
if (mods.brakes !== undefined)
|
|
194
|
-
|
|
130
|
+
this.platform.setVehicleMod(vehicle, 12, mods.brakes, false);
|
|
195
131
|
if (mods.transmission !== undefined)
|
|
196
|
-
|
|
132
|
+
this.platform.setVehicleMod(vehicle, 13, mods.transmission, false);
|
|
197
133
|
if (mods.horns !== undefined)
|
|
198
|
-
|
|
134
|
+
this.platform.setVehicleMod(vehicle, 14, mods.horns, false);
|
|
199
135
|
if (mods.suspension !== undefined)
|
|
200
|
-
|
|
136
|
+
this.platform.setVehicleMod(vehicle, 15, mods.suspension, false);
|
|
201
137
|
if (mods.armor !== undefined)
|
|
202
|
-
|
|
138
|
+
this.platform.setVehicleMod(vehicle, 16, mods.armor, false);
|
|
203
139
|
if (mods.turbo !== undefined)
|
|
204
|
-
|
|
140
|
+
this.platform.toggleVehicleMod(vehicle, 18, mods.turbo);
|
|
205
141
|
if (mods.xenon !== undefined)
|
|
206
|
-
|
|
142
|
+
this.platform.toggleVehicleMod(vehicle, 22, mods.xenon);
|
|
207
143
|
if (mods.wheelType !== undefined)
|
|
208
|
-
|
|
144
|
+
this.platform.setVehicleWheelType(vehicle, mods.wheelType);
|
|
209
145
|
if (mods.wheels !== undefined)
|
|
210
|
-
|
|
146
|
+
this.platform.setVehicleMod(vehicle, 23, mods.wheels, false);
|
|
211
147
|
if (mods.windowTint !== undefined)
|
|
212
|
-
|
|
148
|
+
this.platform.setVehicleWindowTint(vehicle, mods.windowTint);
|
|
213
149
|
if (mods.livery !== undefined)
|
|
214
|
-
|
|
150
|
+
this.platform.setVehicleLivery(vehicle, mods.livery);
|
|
215
151
|
if (mods.plateStyle !== undefined)
|
|
216
|
-
|
|
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 (!
|
|
155
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
226
156
|
return;
|
|
227
|
-
|
|
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 (!
|
|
160
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
238
161
|
return;
|
|
239
|
-
|
|
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 (!
|
|
165
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
249
166
|
return;
|
|
250
|
-
|
|
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 (!
|
|
170
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
259
171
|
return 0;
|
|
260
|
-
return
|
|
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 (!
|
|
175
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
270
176
|
return;
|
|
271
|
-
|
|
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 (!
|
|
180
|
+
if (!this.platform.doesEntityExist(vehicle))
|
|
282
181
|
return;
|
|
283
|
-
|
|
284
|
-
if (heading !== undefined)
|
|
285
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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;
|