mirror of
https://github.com/esx-framework/esx_core.git
synced 2026-09-04 16:23:21 +00:00
refactor(esx_identity): use static player methods
This commit is contained in:
@@ -12,7 +12,7 @@ local function deleteIdentityFromDatabase(xPlayer)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param xPlayer StaticPlayer
|
---@param xPlayer StaticPlayer|xPlayer
|
||||||
---@param data {firstName:string?, lastName:string?, dateOfBirth:string?, height:number?, sex:"m"|"f"?}
|
---@param data {firstName:string?, lastName:string?, dateOfBirth:string?, height:number?, sex:"m"|"f"?}
|
||||||
function SetPlayerData(xPlayer, data)
|
function SetPlayerData(xPlayer, data)
|
||||||
local name = ("%s %s"):format(data.firstName, data.lastName)
|
local name = ("%s %s"):format(data.firstName, data.lastName)
|
||||||
@@ -23,7 +23,7 @@ function SetPlayerData(xPlayer, data)
|
|||||||
xPlayer.set("sex", data.sex)
|
xPlayer.set("sex", data.sex)
|
||||||
xPlayer.set("height", data.height)
|
xPlayer.set("height", data.height)
|
||||||
|
|
||||||
local state = Player(xPlayer.src).state
|
local state = Player(xPlayer.getSource()).state
|
||||||
state:set("name", name, true)
|
state:set("name", name, true)
|
||||||
state:set("firstName", data.firstName, true)
|
state:set("firstName", data.firstName, true)
|
||||||
state:set("lastName", data.lastName, true)
|
state:set("lastName", data.lastName, true)
|
||||||
@@ -127,33 +127,37 @@ local function formatName(name)
|
|||||||
return convertFirstLetterToUpper(loweredName)
|
return convertFirstLetterToUpper(loweredName)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
---@param xPlayer StaticPlayer
|
||||||
local function setIdentity(xPlayer)
|
local function setIdentity(xPlayer)
|
||||||
if not alreadyRegistered[xPlayer.identifier] then
|
local playerIdentifier = xPlayer.getIdentifier()
|
||||||
|
if not alreadyRegistered[playerIdentifier] then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local currentIdentity = playerIdentity[xPlayer.identifier]
|
local currentIdentity = playerIdentity[playerIdentifier]
|
||||||
SetPlayerData(xPlayer, currentIdentity)
|
SetPlayerData(xPlayer, currentIdentity)
|
||||||
|
|
||||||
TriggerClientEvent("esx_identity:setPlayerData", xPlayer.source, currentIdentity)
|
TriggerClientEvent("esx_identity:setPlayerData", xPlayer.src, currentIdentity)
|
||||||
if currentIdentity.saveToDatabase then
|
if currentIdentity.saveToDatabase then
|
||||||
saveIdentityToDatabase(xPlayer.identifier, currentIdentity)
|
saveIdentityToDatabase(playerIdentifier, currentIdentity)
|
||||||
end
|
end
|
||||||
|
|
||||||
playerIdentity[xPlayer.identifier] = nil
|
playerIdentity[playerIdentifier] = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
---@param xPlayer StaticPlayer
|
||||||
local function checkIdentity(xPlayer)
|
local function checkIdentity(xPlayer)
|
||||||
MySQL.single("SELECT firstname, lastname, dateofbirth, sex, height FROM users WHERE identifier = ?", { xPlayer.identifier }, function(result)
|
local playerIdentifier = xPlayer.getIdentifier()
|
||||||
|
MySQL.single("SELECT firstname, lastname, dateofbirth, sex, height FROM users WHERE identifier = ?", { playerIdentifier }, function(result)
|
||||||
if not result then
|
if not result then
|
||||||
return TriggerClientEvent("esx_identity:showRegisterIdentity", xPlayer.source)
|
return TriggerClientEvent("esx_identity:showRegisterIdentity", xPlayer.src)
|
||||||
end
|
end
|
||||||
if not result.firstname then
|
if not result.firstname then
|
||||||
playerIdentity[xPlayer.identifier] = nil
|
playerIdentity[playerIdentifier] = nil
|
||||||
alreadyRegistered[xPlayer.identifier] = false
|
alreadyRegistered[playerIdentifier] = false
|
||||||
return TriggerClientEvent("esx_identity:showRegisterIdentity", xPlayer.source)
|
return TriggerClientEvent("esx_identity:showRegisterIdentity", xPlayer.src)
|
||||||
end
|
end
|
||||||
|
|
||||||
playerIdentity[xPlayer.identifier] = {
|
playerIdentity[playerIdentifier] = {
|
||||||
firstName = result.firstname,
|
firstName = result.firstname,
|
||||||
lastName = result.lastname,
|
lastName = result.lastname,
|
||||||
dateOfBirth = result.dateofbirth,
|
dateOfBirth = result.dateofbirth,
|
||||||
@@ -161,7 +165,7 @@ local function checkIdentity(xPlayer)
|
|||||||
height = result.height,
|
height = result.height,
|
||||||
}
|
}
|
||||||
|
|
||||||
alreadyRegistered[xPlayer.identifier] = true
|
alreadyRegistered[playerIdentifier] = true
|
||||||
setIdentity(xPlayer)
|
setIdentity(xPlayer)
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
@@ -216,7 +220,7 @@ if not multichar then
|
|||||||
Wait(0)
|
Wait(0)
|
||||||
end
|
end
|
||||||
|
|
||||||
local xPlayers = ESX.GetExtendedPlayers()
|
local xPlayers = ESX.ExtendedPlayers() --[=[@as StaticPlayer[]]=]
|
||||||
|
|
||||||
for i = 1, #xPlayers do
|
for i = 1, #xPlayers do
|
||||||
if xPlayers[i] then
|
if xPlayers[i] then
|
||||||
|
|||||||
Reference in New Issue
Block a user