refactor(esx_multicharacter/server/modules/functions): properly cleanup stale player obj

This commit is contained in:
Kenshin13
2025-06-14 21:06:19 +02:00
parent 3e0c89d9b2
commit 130754dcd2
@@ -49,12 +49,21 @@ function Server:OnConnecting(source, deferrals)
if ESX.GetConfig().EnableDebug or not ESX.Players[identifier] then deferrals.done() end
TriggerEvent('esx:playerCrashed', identifier, function()
ESX.Players[identifier] = nil
deferrals.update(('[ESX] Cleaning old Player entry for [%s] (player invalid)'):format(identifier))
end)
local xPlayer = ESX.GetPlayerFromIdentifier(identifier)
if not xPlayer then
return deferrals.done()
end
deferrals.done() -- proceed
if DoesPlayerExist(xPlayer.source --[[@as string]]) then
return deferrals.done(
("[ESX] There was an error loading your character!\nError code: identifier-active\n\nThis error is caused by a player on this server who has the same identifier as you have. Make sure you are not playing on the same account.\n\nYour identifier: %s"):format(identifier)
)
end
deferrals.update(("[ESX] Cleaning stale player entry..."):format(identifier))
TriggerEvent("esx:onPlayerDropped", xPlayer.source, "esx_stale_player_obj", function()
deferrals.done()
end)
end