Main/resources/[jobs]/[civ]/wasabi_fishing/bridge/esx/server.lua
2025-07-01 11:20:24 +02:00

85 lines
2.2 KiB
Lua

if GetResourceState('es_extended') ~= 'started' then return end
ESX = exports['es_extended']:getSharedObject()
Framework = 'esx'
function GetPlayer(source)
return ESX.GetPlayerFromId(source)
end
function KickPlayer(source, reason)
local player = GetPlayer(source)
return player.kick(reason)
end
function HasGroup(source, filter)
local player = GetPlayer(source)
local type = type(filter)
if type == 'string' then
if player.job.name == filter then
return player.job.name, player.job.grade
end
else
local tabletype = table.type(filter)
if tabletype == 'hash' then
local grade = filter[player.job.name]
if grade and grade <= player.job.grade then
return player.job.name, player.job.grade
end
elseif tabletype == 'array' then
for i = 1, #filter do
if player.job.name == filter[i] then
return player.job.name, player.job.grade
end
end
end
end
end
function GetIdentifier(source)
local xPlayer = ESX.GetPlayerFromId(source)
return xPlayer.identifier
end
function GetName(source)
local xPlayer = ESX.GetPlayerFromId(source)
return xPlayer.getName()
end
function RegisterUsableItem(item, cb)
ESX.RegisterUsableItem(item, cb)
end
function HasItem(source, item)
local player = GetPlayer(source)
local item = player.getInventoryItem(item)
if item ~= nil then
return item.count
else
return 0
end
end
function AddItem(source, item, count, slot, metadata)
local player = GetPlayer(source)
return player.addInventoryItem(item, count, metadata, slot)
end
function RemoveItem(source, item, count, slot, metadata)
local player = GetPlayer(source)
player.removeInventoryItem(item, count, metadata, slot)
end
function AddMoney(source, type, amount)
if type == 'cash' then type = 'money' end
local player = GetPlayer(source)
player.addAccountMoney(type, amount)
end
function RemoveMoney(source, type, amount)
if type == 'cash' then type = 'money' end
local player = GetPlayer(source)
player.removeAccountMoney(type, amount)
end