From ef8fde302687335c967225ea7352b3fa349808cc Mon Sep 17 00:00:00 2001 From: Mycroft Date: Thu, 11 Aug 2022 18:23:13 +0100 Subject: [PATCH] fix: wait for vehicle on server instead of client --- [esx]/es_extended/client/functions.lua | 9 --------- [esx]/es_extended/server/onesync.lua | 7 ++++++- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/[esx]/es_extended/client/functions.lua b/[esx]/es_extended/client/functions.lua index 02b6fd25..c789e572 100644 --- a/[esx]/es_extended/client/functions.lua +++ b/[esx]/es_extended/client/functions.lua @@ -489,15 +489,6 @@ function ESX.Game.SpawnVehicle(vehicle, coords, heading, cb, networked) print("Spawned Vehicle: " .. NetID) if NetID then local vehicle = NetworkGetEntityFromNetworkId(NetID) - local Tries = 0 - while not DoesEntityExist(vehicle) do - vehicle = NetworkGetEntityFromNetworkId(NetID) - Wait(0) - Tries += 1 - if Tries > 250 then - break - end - end SetEntityAsMissionEntity(vehicle, true, true) SetVehicleHasBeenOwnedByPlayer(vehicle, true) SetVehicleNeedsToBeHotwired(vehicle, false) diff --git a/[esx]/es_extended/server/onesync.lua b/[esx]/es_extended/server/onesync.lua index 8684ea69..4ef8d465 100644 --- a/[esx]/es_extended/server/onesync.lua +++ b/[esx]/es_extended/server/onesync.lua @@ -66,8 +66,13 @@ function ESX.OneSync.SpawnVehicle(model, coords, heading, autoMobile, cb) if type(autoMobile) ~= 'boolean' then return end + local tries = 0 local Entity = autoMobile and Citizen.InvokeNative(`CREATE_AUTOMOBILE`, model, coords.x, coords.y, coords.z, heading) or CreateVehicle(model, coords, heading, true, true) - cb(NetworkGetNetworkIdFromEntity(Entity)) + while not DoesEntityExist(Entity) do + Wait(0) + end + local netID = NetworkGetNetworkIdFromEntity(Entity) + cb(netID) end ---@param model number|string