mirror of
https://github.com/esx-framework/esx_core.git
synced 2026-08-29 01:08:54 +00:00
refactor(esx_multicharacter/server/modules/functions): properly cleanup stale player obj
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user