From 82c83cf884ed6e4b12e137df32dfc5ef70490a46 Mon Sep 17 00:00:00 2001 From: Csoki Date: Thu, 15 Dec 2022 13:59:03 +0100 Subject: [PATCH 1/2] esx_banking: remove unused xPlayer and event handle only if peds enabled --- [esx_addons]/esx_banking/server/main.lua | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/[esx_addons]/esx_banking/server/main.lua b/[esx_addons]/esx_banking/server/main.lua index d4a34243..e61f7ee4 100644 --- a/[esx_addons]/esx_banking/server/main.lua +++ b/[esx_addons]/esx_banking/server/main.lua @@ -22,10 +22,11 @@ AddEventHandler('onResourceStop', function(resourceName) if Config.EnablePeds then BANK.DeletePeds() end end) -AddEventHandler('esx:playerLoaded', function(playerId, xPlayer) - if not Config.EnablePeds then return end - TriggerClientEvent('esx_banking:PedHandler', playerId, netIdTable) -end) +if Config.EnablePeds then + AddEventHandler('esx:playerLoaded', function(playerId) + TriggerClientEvent('esx_banking:PedHandler', playerId, netIdTable) + end) +end -- event RegisterServerEvent('esx_banking:doingType') From c26c2036a5294106e3fe6b086963cb89a650ac4a Mon Sep 17 00:00:00 2001 From: Csoki Date: Thu, 15 Dec 2022 14:07:13 +0100 Subject: [PATCH 2/2] fix: 'no object by ID' warning --- [esx_addons]/esx_banking/client/main.lua | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/[esx_addons]/esx_banking/client/main.lua b/[esx_addons]/esx_banking/client/main.lua index e87c5d55..a4c29f1e 100644 --- a/[esx_addons]/esx_banking/client/main.lua +++ b/[esx_addons]/esx_banking/client/main.lua @@ -197,11 +197,14 @@ RegisterNetEvent('esx_banking:closebanking', function() CloseUi() end) -RegisterNetEvent('esx_banking:PedHandler', function(netIdTable) - local npc - for i = 1, #netIdTable do - npc = NetworkGetEntityFromNetworkId(netIdTable[i]) - TaskStartScenarioInPlace(npc, Config.Peds[i].Scenario, 0, true) +local function loadNPC(index, netID) + CreateThread(function() + while not NetworkDoesEntityExistWithNetworkId(netID) do + Wait(1) + end + local npc = NetworkGetEntityFromNetworkId(netID) + + TaskStartScenarioInPlace(npc, Config.Peds[index].Scenario, 0, true) SetEntityProofs(npc, true, true, true, true, true, true, true, true) SetBlockingOfNonTemporaryEvents(npc, true) FreezeEntityPosition(npc, true) @@ -209,6 +212,12 @@ RegisterNetEvent('esx_banking:PedHandler', function(netIdTable) SetPedCanRagdoll(npc, false) SetEntityAsMissionEntity(npc, true, true) SetEntityDynamic(npc, false) + end) +end + +RegisterNetEvent('esx_banking:PedHandler', function(netIdTable) + for i = 1, #netIdTable do + loadNPC(i, netIdTable[i]) end end)