Scripts/resources/[qb]/[qb_jobs]/qb-djbooth/server.lua

70 lines
2.6 KiB
Lua
Raw Normal View History

2024-12-29 20:06:22 +00:00
local xSound = exports.xsound
RegisterNetEvent('qb-djbooth:server:playMusic', function(song, zoneName)
local src = source
local ped = GetPlayerPed(src)
local coords = GetEntityCoords(ped)
local boothCoords = Config.Locations[zoneName].coords
local dist = #(coords - boothCoords)
if dist > 3 then return end
xSound:PlayUrlPos(-1, zoneName, song, Config.DefaultVolume, coords)
xSound:Distance(-1, zoneName, Config.Locations[zoneName].radius)
Config.Locations[zoneName].playing = true
TriggerClientEvent('qb-djbooth:client:playMusic', src)
end)
RegisterNetEvent('qb-djbooth:server:stopMusic', function(data)
local src = source
local ped = GetPlayerPed(src)
local coords = GetEntityCoords(ped)
local boothCoords = Config.Locations[data.zoneName].coords
local dist = #(coords - boothCoords)
if dist > 3 then return end
if Config.Locations[data.zoneName].playing then
Config.Locations[data.zoneName].playing = false
xSound:Destroy(-1, data.zoneName)
end
TriggerClientEvent('qb-djbooth:client:playMusic', src)
end)
RegisterNetEvent('qb-djbooth:server:pauseMusic', function(data)
local src = source
local ped = GetPlayerPed(src)
local coords = GetEntityCoords(ped)
local boothCoords = Config.Locations[data.zoneName].coords
local dist = #(coords - boothCoords)
if dist > 3 then return end
if Config.Locations[data.zoneName].playing then
Config.Locations[data.zoneName].playing = false
xSound:Pause(-1, data.zoneName)
end
TriggerClientEvent('qb-djbooth:client:playMusic', src)
end)
RegisterNetEvent('qb-djbooth:server:resumeMusic', function(data)
local src = source
local ped = GetPlayerPed(src)
local coords = GetEntityCoords(ped)
local boothCoords = Config.Locations[data.zoneName].coords
local dist = #(coords - boothCoords)
if dist > 3 then return end
if not Config.Locations[data.zoneName].playing then
Config.Locations[data.zoneName].playing = true
xSound:Resume(-1, data.zoneName)
end
TriggerClientEvent('qb-djbooth:client:playMusic', src)
end)
RegisterNetEvent('qb-djbooth:server:changeVolume', function(volume, zoneName)
local src = source
local ped = GetPlayerPed(src)
local coords = GetEntityCoords(ped)
local boothCoords = Config.Locations[zoneName].coords
local dist = #(coords - boothCoords)
if dist > 3 then return end
if not tonumber(volume) then return end
if Config.Locations[zoneName].playing then
xSound:setVolume(-1, zoneName, volume)
end
TriggerClientEvent('qb-djbooth:client:playMusic', src)
end)