mirror of
https://github.com/esx-framework/esx_core.git
synced 2026-08-30 01:38:52 +00:00
improvement(server/main): Create a stored query for saving players
This commit is contained in:
+15
-9
@@ -163,19 +163,25 @@ ESX.TriggerServerCallback = function(name, requestId, source, cb, ...)
|
||||
end
|
||||
end
|
||||
|
||||
local savePlayers = -1
|
||||
Citizen.CreateThread(function()
|
||||
savePlayers = MySQL.Sync.store("UPDATE users SET ? WHERE ?")
|
||||
end)
|
||||
|
||||
ESX.SavePlayer = function(xPlayer, cb)
|
||||
local asyncTasks = {}
|
||||
|
||||
table.insert(asyncTasks, function(cb2)
|
||||
MySQL.Async.execute('UPDATE users SET accounts = @accounts, job = @job, job_grade = @job_grade, `group` = @group, loadout = @loadout, position = @position, inventory = @inventory WHERE identifier = @identifier', {
|
||||
['@accounts'] = json.encode(xPlayer.getAccounts(true)),
|
||||
['@job'] = xPlayer.job.name,
|
||||
['@job_grade'] = xPlayer.job.grade,
|
||||
['@group'] = xPlayer.getGroup(),
|
||||
['@loadout'] = json.encode(xPlayer.getLoadout(true)),
|
||||
['@position'] = json.encode(xPlayer.getCoords()),
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@inventory'] = json.encode(xPlayer.getInventory(true))
|
||||
MySQL.Async.execute(savePlayers, {
|
||||
{
|
||||
['accounts'] = json.encode(xPlayer.getAccounts(true)),
|
||||
['job'] = xPlayer.job.name,
|
||||
['job_grade'] = xPlayer.job.grade,
|
||||
['group'] = xPlayer.getGroup(),
|
||||
['loadout'] = json.encode(xPlayer.getLoadout(true)),
|
||||
['position'] = json.encode(xPlayer.getCoords()),
|
||||
['inventory'] = json.encode(xPlayer.getInventory(true))
|
||||
}, {['identifier'] = xPlayer.getIdentifier()}
|
||||
}, function(rowsChanged)
|
||||
cb2()
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user