Scripts/resources/[standalone]/xsound/client/exports/play.lua
2024-12-29 21:02:43 +01:00

157 lines
3.9 KiB
Lua

function PlayUrl(name_, url_, volume_, loop_, options)
if disableMusic then return end
if soundInfo[name_] == nil then soundInfo[name_] = getDefaultInfo() end
soundInfo[name_].volume = volume_
soundInfo[name_].url = url_
soundInfo[name_].id = name_
soundInfo[name_].playing = true
soundInfo[name_].loop = loop_ or false
soundInfo[name_].isDynamic = false
globalOptionsCache[name_] = options or { }
if loop_ then
soundInfo[name_].destroyOnFinish = false
else
soundInfo[name_].destroyOnFinish = true
end
CheckForCloseMusic()
UpdatePlayerPositionInNUI()
SendNUIMessage({ status = "unmuteAll" })
SendNUIMessage({
status = "url",
name = name_,
url = url_,
x = 0,
y = 0,
z = 0,
dynamic = false,
volume = volume_,
loop = loop_ or false,
})
end
exports('PlayUrl', PlayUrl)
function PlayUrlPos(name_, url_, volume_, pos, loop_, options)
if disableMusic then return end
if soundInfo[name_] == nil then soundInfo[name_] = getDefaultInfo() end
soundInfo[name_].volume = volume_
soundInfo[name_].url = url_
soundInfo[name_].position = pos
soundInfo[name_].id = name_
soundInfo[name_].playing = true
soundInfo[name_].loop = loop_ or false
soundInfo[name_].isDynamic = true
globalOptionsCache[name_] = options or { }
CheckForCloseMusic()
if #(GetEntityCoords(PlayerPedId()) - pos) < 10.0 + config.distanceBeforeUpdatingPos then
UpdatePlayerPositionInNUI()
SendNUIMessage({ status = "unmuteAll" })
end
SendNUIMessage({
status = "url",
name = name_,
url = url_,
x = pos.x,
y = pos.y,
z = pos.z,
dynamic = true,
volume = volume_,
loop = loop_ or false,
})
if loop_ then
soundInfo[name_].destroyOnFinish = false
else
soundInfo[name_].destroyOnFinish = true
end
end
exports('PlayUrlPos', PlayUrlPos)
function PlayUrlPosSilent(name_, url_, volume_, pos, loop_)
if disableMusic then return end
SendNUIMessage({
status = "url",
name = name_,
url = url_,
x = pos.x,
y = pos.y,
z = pos.z,
dynamic = true,
volume = volume_,
loop = loop_ or false,
})
end
--function TextToSpeech(name_, lang, text, volume_)
-- if disableMusic then return end
-- SendNUIMessage({
-- status = "textSpeech",
-- name = name_,
-- text = text,
-- lang = lang,
-- x = 0,
-- y = 0,
-- z = 0,
-- dynamic = false,
-- volume = volume_,
-- })
--
-- if soundInfo[name_] == nil then soundInfo[name_] = getDefaultInfo() end
--
-- soundInfo[name_].volume = volume_
-- soundInfo[name_].url = "is text to speech"
-- soundInfo[name_].id = name_
-- soundInfo[name_].playing = true
-- soundInfo[name_].loop = false
-- soundInfo[name_].isDynamic = false
-- soundInfo[name_].destroyOnFinish = true
--
--
-- globalOptionsCache[name_] = options or { }
--end
--
--exports('TextToSpeech', TextToSpeech)
--function TextToSpeechPos(name_, lang, text, volume_, pos)
-- if disableMusic then return end
-- SendNUIMessage({
-- status = "textSpeech",
-- name = name_,
-- text = text,
-- lang = lang,
-- x = pos.x,
-- y = pos.y,
-- z = pos.z,
-- dynamic = true,
-- volume = volume_,
-- })
--
-- if soundInfo[name_] == nil then soundInfo[name_] = getDefaultInfo() end
--
-- soundInfo[name_].volume = volume_
-- soundInfo[name_].url = "is text to speech"
-- soundInfo[name_].position = pos
-- soundInfo[name_].id = name_
-- soundInfo[name_].playing = true
-- soundInfo[name_].loop = false
-- soundInfo[name_].isDynamic = true
-- soundInfo[name_].destroyOnFinish = true
--
--
-- globalOptionsCache[name_] = options or { }
--end
--
--exports('TextToSpeechPos', TextToSpeechPos)