1
0
Fork 0
forked from Simnation/Main
Main/resources/[carscripts]/kq_roofboxes/server/editable/opening.lua
2025-06-07 08:51:21 +02:00

64 lines
2 KiB
Lua

local vehicleStashes = {}
local function OpenVehicleRoofbox(player, vehicle)
Entity(vehicle).state.kq_roofboxes_open = true
end
local function CloseVehicleRoofbox(player, vehicle)
Entity(vehicle).state.kq_roofboxes_open = false
end
RegisterServerEvent('kq_roofboxes:server:openRoofbox')
AddEventHandler('kq_roofboxes:server:openRoofbox', function(netId, model)
local player = source
local vehicle = NetworkGetEntityFromNetworkId(netId)
Debug('Attempting open vehicle roofbox')
if not CanPlayerOpenVehicleRoofbox(player, vehicle) then
Debug('CanPlayerOpenVehicleRoofbox returned false')
return
end
Debug('Opening vehicle roofbox')
OpenVehicleRoofbox(player, vehicle)
local mapping = {
[1] = 'normalRoofbox',
[2] = 'smallRoofbox',
[3] = 'supercarRoofbox',
}
local size = Config.stashes[mapping[model]]
local stashId = GetVehicleStashId(vehicle)
exports.kq_link:OpenCustomStash(player, stashId, L('Roofbox'), size.slots, size.maxWeight)
vehicleStashes[stashId] = vehicle
end)
RegisterServerEvent('kq_roofboxes:server:closeInventory')
AddEventHandler('kq_roofboxes:server:closeInventory', function(netId)
CloseVehicleRoofbox(source, NetworkGetEntityFromNetworkId(netId))
end)
RegisterServerEvent('ox_inventory:closedInventory')
AddEventHandler('ox_inventory:closedInventory', function(player, stashId)
if vehicleStashes[stashId] then
CloseVehicleRoofbox(player, vehicleStashes[stashId])
end
end)
RegisterServerEvent('inventory:closeInventory')
AddEventHandler('inventory:closeInventory', function(player, stashId)
if vehicleStashes[stashId] then
CloseVehicleRoofbox(player, vehicleStashes[stashId])
end
end)
RegisterServerEvent('qb-inventory:server:closeInventory')
AddEventHandler('qb-inventory:server:closeInventory', function(stashId)
if vehicleStashes[stashId] then
CloseVehicleRoofbox(source, vehicleStashes[stashId])
end
end)