Files
esx_core-esx-framework/server/main.lua
T
2017-08-16 11:15:22 +02:00

72 lines
1.7 KiB
Lua

ESX = nil
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
RegisterServerEvent('esx_skin:save')
AddEventHandler('esx_skin:save', function(skin)
local xPlayer = ESX.GetPlayerFromId(source)
MySQL.Async.execute(
'UPDATE users SET `skin` = @skin WHERE identifier = @identifier',
{
['@skin'] = json.encode(skin),
['@identifier'] = xPlayer.identifier
}
)
end)
RegisterServerEvent('esx_skin:responseSaveSkin')
AddEventHandler('esx_skin:responseSaveSkin', function(skin)
local file = io.open('resources/[esx]/esx_skin/skins.txt', "a")
file:write(json.encode(skin) .. "\n\n")
file:flush()
file:close()
end)
ESX.RegisterServerCallback('esx_skin:getPlayerSkin', function(source, cb)
local xPlayer = ESX.GetPlayerFromId(source)
MySQL.Async.fetchAll(
'SELECT * FROM users WHERE identifier = @identifier',
{
['@identifier'] = xPlayer.identifier
},
function(users)
local user = users[1]
local skin = nil
local jobSkin = {
skin_male = xPlayer.job.skin_male,
skin_female = xPlayer.job.skin_female
}
if user.skin ~= nil then
skin = json.decode(user.skin)
end
cb(skin, jobSkin)
end
)
end)
-- Commands
TriggerEvent('es:addGroupCommand', 'skin', 'admin', function(source, args, user)
TriggerClientEvent('esx_skin:openSaveableMenu', source)
end, function(source, args, user)
TriggerClientEvent('chatMessage', source, "SYSTEM", {255, 0, 0}, 'Insufficient permissions!')
end, {help = _U('skin')})
TriggerEvent('es:addGroupCommand', 'saveskin', 'admin', function(source, args, user)
TriggerClientEvent('esx_skin:requestSaveSkin', source)
end, function(source, args, user)
TriggerClientEvent('chatMessage', source, "SYSTEM", {255, 0, 0}, "Insufficient Permissions.")
end, {help = _U('saveskin')})