structura foldere

mutat kq- folders in un singur folder [kq]
This commit is contained in:
2026-03-30 01:55:03 +03:00
parent af1286d583
commit c291b81f26
2319 changed files with 0 additions and 14 deletions

View File

@@ -0,0 +1,191 @@
--[[
Hi dear customer or developer, here you can fully configure your server's
framework or you could even duplicate this file to create your own framework.
If you do not have much experience, we recommend you download the base version
of the framework that you use in its latest version and it will work perfectly.
]]
if Config.Framework ~= 'esx' then
return
end
local version = GetResourceMetadata('es_extended', 'version', 0)
if version == '1.1.0' or version == '1.2.0' or version == 'legacy' then
ESX = nil
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
else
ESX = exports['es_extended']:getSharedObject()
end
identifierTypes = 'owner'
vehiclesTable = 'owned_vehicles'
plateTable = 'plate'
inventoryTrunk = 'inventory_trunk'
inventoryGlovebox = 'inventory_glovebox'
function RegisterServerCallback(name, cb)
ESX.RegisterServerCallback(name, cb)
end
function GetPlayerFromIdFramework(player)
local Player = ESX.GetPlayerFromId(player)
return Player
end
function GetPlayerIdentifier(player)
return ESX.GetPlayerFromId(player).identifier
end
function GetPlayerJob(player)
return player.getJob().name
end
function GetPlayerDuty(player)
return true
end
function GetPlayers()
return ESX.GetPlayers()
end
function GetMoney(player)
return player.getMoney()
end
function RemoveMoney(player, mount)
return player.removeMoney(mount)
end
function GetAccountMoney(player, account)
return player.getAccount(account).money
end
function RemoveAccountMoney(player, account, mount)
return player.removeAccountMoney(account, mount)
end
function RegisterUsableItem(name, cb)
ESX.RegisterUsableItem(name, cb)
end
function GetItem(player, item)
return player.getInventoryItem(item)
end
function GetItemCount(player, item)
if Config.InventoryScript == 'codem' then
return player.getInventoryItem(item).amount
else
return player.getInventoryItem(item).count
end
end
function AddItem(player, item, metadata)
player.addInventoryItem(item, 1, metadata)
end
function RemoveItem(player, item)
player.removeInventoryItem(item, 1, metadata)
end
function SetInventoryItem(player)
return true
end
function AddItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.AddItem(item, 1, false, metadata)
elseif Config.InventoryScript == 'ox' then
if exports.ox_inventory:CanCarryItem(player.source, item, 1, metadata) then
exports.ox_inventory:AddItem(player.source, item, 1, metadata)
end
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:AddItem(player.source, item, 1, metadata)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
exports['core_inventory']:addItem(inv, item, 1, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:AddItem(player.source, item, 1, nil, metadata, false)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:AddItem(player.source, item, 1, nil, metadata)
else
print('Inventory not properly configured')
end
end
function GetMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
return exports['qs-inventory']:GetInventory(player.source)
elseif Config.InventoryScript == 'qb' then
return player.PlayerData.items
elseif Config.InventoryScript == 'origen' then
return exports['origen_inventory']:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'ox' then
return ox_inventory:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
return exports['core_inventory']:getInventory(inv)
elseif Config.InventoryScript == 'codem' then
return exports['codem-inventory']:GetInventory(false, player.source)
elseif Config.InventoryScript == 'tgiannInv' then
return exports['tgiann-inventory']:GetPlayerItems(player.source)
elseif Config.InventoryScript == 'ak47' then
return exports['ak47_inventory']:GetInventory(player.source)
else
print('Inventory not properly configured')
end
end
function RemoveItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:RemoveItem(player.source, item, 1, slot, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.RemoveItem(item, 1, false)
elseif Config.InventoryScript == 'ox' then
ox_inventory:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'core_inventory' then
coreInventoryRemoveItemWithMetadata(player, item, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:RemoveItem(player.source, item, 1, slot)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:RemoveItem(player.source, item, 1, nil)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:RemoveItem(player.source, item, 1, slot, metadata)
else
print('Inventory not properly configured')
end
end
function coreInventoryRemoveItemWithMetadata(player, item, metadata)
local inv = 'content-' .. player.identifier:gsub(':', '')
if metadata and type(metadata) == 'table' and metadata.id then
exports['core_inventory']:removeItemExact(inv, metadata.id, 1)
elseif metadata and type(metadata) ~= 'table' then
local inventoryData = exports['core_inventory']:getInventory(inv)
for k, v in pairs(inventoryData) do
if v.name == item and v.metadata and v.metadata.plate then
if string.find(v.metadata.plate, metadata) then
exports['core_inventory']:removeItemExact(inv, v.id, 1)
break
end
end
end
end
end
RegisterServerEvent('CheckPlayerItem')
AddEventHandler('CheckPlayerItem', function(item)
local source = source
local hasItem = CheckIfPlayerHasItem(source, item)
TriggerClientEvent('CheckPlayerItemResult', source, hasItem)
end)

View File

@@ -0,0 +1,184 @@
--[[
Hi dear customer or developer, here you can fully configure your server's
framework or you could even duplicate this file to create your own framework.
If you do not have much experience, we recommend you download the base version
of the framework that you use in its latest version and it will work perfectly.
]]
if Config.Framework ~= 'qb' then
return
end
QBCore = exports['qb-core']:GetCoreObject()
identifierTypes = 'citizenid'
vehiclesTable = 'player_vehicles'
plateTable = 'plate'
inventoryTrunk = 'inventory_trunk'
inventoryGlovebox = 'inventory_glovebox'
function RegisterServerCallback(name, cb)
QBCore.Functions.CreateCallback(name, cb)
end
function GetPlayerIdentifier(player)
return QBCore.Functions.GetPlayer(player).PlayerData.citizenid
end
function GetPlayerFromIdFramework(player)
local Player = QBCore.Functions.GetPlayer(player)
if Player then
Player.citizenid = Player.PlayerData.citizenid
Player.identifier = Player.PlayerData.citizenid
Player.source = Player.PlayerData.source
end
return Player
end
function GetPlayers()
return QBCore.Functions.GetPlayers()
end
function GetPlayerJob(player)
local data = player.PlayerData.job
return data.name
end
function GetPlayerDuty(player)
local data = player.PlayerData.job
return data.onduty
end
function GetMoney(player)
return player.PlayerData.money['cash']
end
function GetAccountMoney(player, account)
return player.PlayerData.money[account]
end
function RemoveAccountMoney(player, account, mount)
return player.Functions.RemoveMoney(account, mount)
end
function RemoveMoney(player, mount)
return player.Functions.RemoveMoney('cash', mount)
end
function RegisterUsableItem(name, cb)
QBCore.Functions.CreateUseableItem(name, cb)
end
function GetItem(player, item)
return player.Functions.GetItemByName(item)
end
function GetItemCount(player, item)
if Config.InventoryScript == 'codem' then
return player.getInventoryItem(item).amount
else
return player.Functions.GetItemByName(item).amount
end
end
function AddItem(player, item, metadata)
player.Functions.AddItem(item, 1, false, metadata)
end
function RemoveItem(player, item, metadata)
player.Functions.RemoveItem(item, 1, false, metadata or nil)
end
function SetInventoryItem(player)
player.Functions.SetInventory(player.PlayerData.items, true)
end
function AddItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.AddItem(item, 1, false, metadata)
elseif Config.InventoryScript == 'ox' then
if exports.ox_inventory:CanCarryItem(player.source, item, 1, metadata) then
exports.ox_inventory:AddItem(player.source, item, 1, metadata)
end
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:AddItem(player.source, item, 1, metadata)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
exports['core_inventory']:addItem(inv, item, 1, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:AddItem(player.source, item, 1, nil, metadata, false)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:AddItem(player.source, item, 1, nil, metadata)
else
print('Inventory not properly configured')
end
end
function GetMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
return exports['qs-inventory']:GetInventory(player.source)
elseif Config.InventoryScript == 'qb' then
return player.PlayerData.items
elseif Config.InventoryScript == 'origen' then
return exports['origen_inventory']:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'ox' then
return ox_inventory:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
return exports['core_inventory']:getInventory(inv)
elseif Config.InventoryScript == 'codem' then
return exports['codem-inventory']:GetInventory(false, player.source)
elseif Config.InventoryScript == 'tgiannInv' then
return exports['tgiann-inventory']:GetPlayerItems(player.source)
elseif Config.InventoryScript == 'ak47' then
return exports['ak47_inventory']:GetInventory(player.source)
else
print('Inventory not properly configured')
end
end
function RemoveItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:RemoveItem(player.source, item, 1, slot, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.RemoveItem(item, 1, false)
elseif Config.InventoryScript == 'ox' then
ox_inventory:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'core_inventory' then
coreInventoryRemoveItemWithMetadata(player, item, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:RemoveItem(player.source, item, 1, slot)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:RemoveItem(player.source, item, 1, nil)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:RemoveItem(player.source, item, 1, slot, metadata)
else
print('Inventory not properly configured')
end
end
function coreInventoryRemoveItemWithMetadata(player, item, metadata)
local inv = 'content-' .. player.identifier:gsub(':', '')
if metadata and type(metadata) == 'table' and metadata.id then
exports['core_inventory']:removeItemExact(inv, metadata.id, 1)
elseif metadata and type(metadata) ~= 'table' then
local inventoryData = exports['core_inventory']:getInventory(inv)
for k, v in pairs(inventoryData) do
if v.name == item and v.metadata and v.metadata.plate then
if string.find(v.metadata.plate, metadata) then
exports['core_inventory']:removeItemExact(inv, v.id, 1)
break
end
end
end
end
end

View File

@@ -0,0 +1,188 @@
--[[
Hi dear customer or developer, here you can fully configure your server's
framework or you could even duplicate this file to create your own framework.
If you do not have much experience, we recommend you download the base version
of the framework that you use in its latest version and it will work perfectly.
]]
if Config.Framework ~= 'qbx' then
return
end
QBCore = exports['qb-core']:GetCoreObject()
identifierTypes = 'citizenid'
vehiclesTable = 'player_vehicles'
plateTable = 'plate'
inventoryTrunk = 'inventory_trunk'
inventoryGlovebox = 'inventory_glovebox'
function RegisterServerCallback(name, cb)
QBCore.Functions.CreateCallback(name, cb)
end
function GetPlayerIdentifier(player)
return QBCore.Functions.GetPlayer(player).PlayerData.citizenid
end
function GetPlayerFromIdentifier(identifier)
return exports.qbx_core:GetPlayerByCitizenId(identifier)
end
function GetPlayerFromIdFramework(player)
local Player = QBCore.Functions.GetPlayer(player)
if Player then
Player.citizenid = Player.PlayerData.citizenid
Player.identifier = Player.PlayerData.citizenid
Player.source = Player.PlayerData.source
end
return Player
end
function GetPlayers()
return QBCore.Functions.GetPlayers()
end
function GetPlayerJob(player)
local data = player.PlayerData.job
return data.name
end
function GetPlayerDuty(player)
local data = player.PlayerData.job
return data.onduty
end
function GetMoney(player)
return player.PlayerData.money['cash']
end
function GetAccountMoney(player, account)
return player.PlayerData.money[account]
end
function RemoveAccountMoney(player, account, mount)
return player.Functions.RemoveMoney(account, mount)
end
function RemoveMoney(player, mount)
return player.Functions.RemoveMoney('cash', mount)
end
function RegisterUsableItem(name, cb)
QBCore.Functions.CreateUseableItem(name, cb)
end
function GetItem(player, item)
return player.Functions.GetItemByName(item)
end
function GetItemCount(player, item)
if Config.InventoryScript == 'codem' then
return player.getInventoryItem(item).amount
else
return player.Functions.GetItemByName(item).amount
end
end
function AddItem(player, item, metadata)
player.Functions.AddItem(item, 1, false, metadata)
end
function RemoveItem(player, item, metadata)
player.Functions.RemoveItem(item, 1, false, metadata or nil)
end
function SetInventoryItem(player)
player.Functions.SetInventory(player.PlayerData.items, true)
end
function AddItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.AddItem(item, 1, false, metadata)
elseif Config.InventoryScript == 'ox' then
if exports.ox_inventory:CanCarryItem(player.source, item, 1, metadata) then
exports.ox_inventory:AddItem(player.source, item, 1, metadata)
end
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:AddItem(player.source, item, 1, metadata)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
exports['core_inventory']:addItem(inv, item, 1, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:AddItem(player.source, item, 1, nil, metadata)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:AddItem(player.source, item, 1, nil, metadata, false)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:AddItem(player.source, item, 1, nil, metadata)
else
print('Inventory not properly configured')
end
end
function GetMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
return exports['qs-inventory']:GetInventory(player.source)
elseif Config.InventoryScript == 'qb' then
return player.PlayerData.items
elseif Config.InventoryScript == 'origen' then
return exports['origen_inventory']:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'ox' then
return ox_inventory:GetInventoryItems(player.source)
elseif Config.InventoryScript == 'core_inventory' then
local inv = 'content-' .. player.identifier:gsub(':', '')
return exports['core_inventory']:getInventory(inv)
elseif Config.InventoryScript == 'codem' then
return exports['codem-inventory']:GetInventory(false, player.source)
elseif Config.InventoryScript == 'tgiannInv' then
return exports['tgiann-inventory']:GetPlayerItems(player.source)
elseif Config.InventoryScript == 'ak47' then
return exports['ak47_inventory']:GetInventory(player.source)
else
print('Inventory not properly configured')
end
end
function RemoveItemMetadata(player, item, slot, metadata)
if not player then return end
if Config.InventoryScript == 'qs' then
exports['qs-inventory']:RemoveItem(player.source, item, 1, slot, metadata)
elseif Config.InventoryScript == 'qb' then
player.Functions.RemoveItem(item, 1, false)
elseif Config.InventoryScript == 'ox' then
ox_inventory:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'origen' then
exports['origen_inventory']:RemoveItem(player.source, item, 1, metadata, slot)
elseif Config.InventoryScript == 'core_inventory' then
coreInventoryRemoveItemWithMetadata(player, item, metadata)
elseif Config.InventoryScript == 'codem' then
exports['codem-inventory']:RemoveItem(player.source, item, 1, slot)
elseif Config.InventoryScript == 'tgiannInv' then
exports['tgiann-inventory']:RemoveItem(player.source, item, 1, nil)
elseif Config.InventoryScript == 'ak47' then
exports['ak47_inventory']:RemoveItem(player.source, item, 1, slot, metadata)
else
print('Inventory not properly configured')
end
end
function coreInventoryRemoveItemWithMetadata(player, item, metadata)
local inv = 'content-' .. player.identifier:gsub(':', '')
if metadata and type(metadata) == 'table' and metadata.id then
exports['core_inventory']:removeItemExact(inv, metadata.id, 1)
elseif metadata and type(metadata) ~= 'table' then
local inventoryData = exports['core_inventory']:getInventory(inv)
for k, v in pairs(inventoryData) do
if v.name == item and v.metadata and v.metadata.plate then
if string.find(v.metadata.plate, metadata) then
exports['core_inventory']:removeItemExact(inv, v.id, 1)
break
end
end
end
end
end

View File

@@ -0,0 +1,69 @@
if Config.Framework == 'esx' then
ESX.RegisterCommand(Lang("ADMINCOMMAND_COMMAND"), Lang("ADMINCOMMAND_RANGE"), function(xPlayer, args, showError)
if args.playerId then
local target = args.playerId == "me" and xPlayer.source or args.playerId
local PedVehicle = GetVehiclePedIsIn(GetPlayerPed(xPlayer.source), false)
if DoesEntityExist(PedVehicle) then
local plate = GetVehicleNumberPlateText(PedVehicle)
local model = GetEntityModel(PedVehicle)
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", xPlayer.source, Lang("ADMINCOMMAND_GIVED_VEHICLE"), "success")
target.triggerEvent(Config.Eventprefix..":admin:giveKeys", plate, model, true)
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", src, Lang("ADMINCOMMAND_NO_VEHICLE"), "error")
end
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", xPlayer.source, Lang("ADMINCOMMAND_NO_PLAYER"), "success")
end
end, false, {help = Lang("ADMINCOMMAND_HELP"), validate = true, arguments = {
{name = 'playerId', validate = true, help = Lang("ADMINCOMMAND_PLAYER"), type = 'player'}
}})
elseif Config.Framework == 'qb' then
QBCore.Commands.Add(Lang("ADMINCOMMAND_COMMAND"), Lang("ADMINCOMMAND_HELP"), { { name = Lang("ADMINCOMMAND_PLAYER"), help = Lang("ADMINCOMMAND_PLAYER") } }, true, function(source, args)
local target = args[1] == "me" and source or tonumber(args[1])
if target ~= 0 then
local PedVehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
if DoesEntityExist(PedVehicle) then
local plate = GetVehicleNumberPlateText(PedVehicle)
local model = GetEntityModel(PedVehicle)
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_GIVED_VEHICLE"), "success")
TriggerClientEvent(Config.Eventprefix..":admin:giveKeys", target, plate, model, true)
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_NO_VEHICLE"), "error")
end
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_NO_PLAYER"), "success")
end
end, Lang("ADMINCOMMAND_RANGE"))
elseif Config.Framework == 'qbx' then
lib.addCommand(Lang("ADMINCOMMAND_COMMAND"), {
help = Lang("ADMINCOMMAND_HELP"),
params = {
{ name = Lang("ADMINCOMMAND_PLAYER"), help = Lang("ADMINCOMMAND_PLAYER"), optional = true },
},
restricted = 'group.admin'
}, function(source, args)
local target = args[1] == "me" and source or tonumber(args[1])
if target == nil then
target = source
end
if target ~= 0 then
local PedVehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
if DoesEntityExist(PedVehicle) then
local plate = GetVehicleNumberPlateText(PedVehicle)
local model = GetEntityModel(PedVehicle)
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_GIVED_VEHICLE"), "success")
TriggerClientEvent(Config.Eventprefix..":admin:giveKeys", target, plate, model, true)
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_NO_VEHICLE"), "error")
end
else
TriggerClientEvent(Config.Eventprefix..":client:sendMessage", source, Lang("ADMINCOMMAND_NO_PLAYER"), "success")
end
end)
end

View File

@@ -0,0 +1,52 @@
RegisterNetEvent(Config.Eventprefix..':server:phoneDispatch', function(coords, street2)
local alertData = {
title = Lang("VEHICLEKEYS_NOTIFICATION_TITLE"),
coords = {x = coords.x, y = coords.y, z = coords.z},
description = Lang("VEHICLEKEYS_NOTIFICATION_POLICE_DISPATCH").." "..street2
}
TriggerClientEvent("qs-smartphone:client:addPoliceAlert", -1, alertData)
end)
RegisterNetEvent(Config.Eventprefix..':server:Dispatch', function()
local PlayerID = source
exports['qs-dispatch']:GetPlayerInfo(PlayerID, function(playerData)
if (not playerData) then
ErrorPrint("Error getting player data")
return
end
TriggerEvent('qs-dispatch:server:CreateDispatchCall', {
job = { Config.JobPolice },
callLocation = playerData.coords,
callCode = { code = "10-42", snippet = "Vehicle Theft" },
message = 'A ' .. playerData.sex .. ' has solten a vehicle near ' .. playerData.street_1 .. '.',
flashes = false,
image = nil,
blip = {
sprite = 490,
scale = 1.5,
colour = 1,
flashes = false,
text = "Vehicle Theft",
time = (3 * 60 * 1000),
},
otherData = {
{
text = 'Vehicle Theft',
icon = 'fas fa-car-side',
}
}
})
end)
end)
RegisterNetEvent(Config.Eventprefix..':server:DispatchOrigen', function(coords)
exports['origen_police']:SendAlert({
coords = coords,
title = 'Vehicle Theft',
type = 'GENERAL',
message = 'Vehicle Theft',
job = Config.JobPolice,
})
end)

View File

@@ -0,0 +1,11 @@
exports('GiveKeysServer', function(player, plate, model)
GiveKeysServer(player, plate, model)
end)
exports('RemoveKeysServer', function(player, plate, model)
RemoveKeysServer(player, plate, model)
end)
exports('GetKeyServer', function(player, plate)
return GetKeyServer(player, plate)
end)

View File

@@ -0,0 +1,32 @@
if Config.InventoryScript == 'ox' then
return
end
RegisterUsableItem(Config.LockpickItem, function(source)
local src = source
TriggerClientEvent(Config.Eventprefix..":client:useLockpick", src, false)
end)
RegisterUsableItem(Config.AdvancedLockpickItem, function(source)
local src = source
TriggerClientEvent(Config.Eventprefix..":client:useLockpick", src, true)
end)
RegisterUsableItem(Config.VehicleKeysItem, function(source, item, itemData)
local plate = item.info.plate
local model = item.info.description
TriggerClientEvent(Config.Eventprefix .. ':client:UseKey', source, plate, model)
end)
RegisterUsableItem(Config.PlateItem, function(source, item)
local plate = item.info.plate
TriggerClientEvent(Config.Eventprefix..':client:UsePlate', source, plate)
end)
RegisterUsableItem(Config.GPSItem, function(source)
TriggerClientEvent(Config.Eventprefix..':client:UseGPS', source)
end)
RegisterUsableItem(Config.TrackerItem, function(source)
TriggerClientEvent(Config.Eventprefix..':client:UseTracker', source)
end)