1
0
Fork 0
forked from Simnation/Main
Main/resources/[freizeit]/[gym]/ps-ui/client/utils.lua
2025-08-11 16:51:34 +02:00

56 lines
No EOL
1.4 KiB
Lua

local callback = nil
local isActive = false
local debug = false
-- When the NUI is closed, call the callback function and returns result
RegisterNUICallback('minigame:callback', function(res, cb)
SetNuiFocus(false, false)
if callback then
callback(res)
end
DebugPrint("Minigame closed. Result: " .. tostring(res))
isActive = false
cb('ok')
end)
-- Sends a NUI message to the UI
---@param action string -- Action to be sent to the NUI
---@param cb fun()|nil -- Callback function to be called when the NUI is closed, or nil if no callback is needed
---@param data table -- Data to be sent to the NUI
---@param nuiFocus boolean -- Whether to set NUI focus or not
function SendNUI(action, cb, data, nuiFocus)
if not isActive then
isActive = true
SetNuiFocus(nuiFocus, nuiFocus)
SendNUIMessage({
action = action,
data = data
})
if not cb then
isActive = false
end
end
if cb then
callback = cb
end
end
-- Debug function to print to the console
function DebugPrint(...)
if not debug then return end
local args <const> = { ... }
local appendStr = ''
for _, v in ipairs(args) do
appendStr = appendStr .. ' ' .. tostring(v)
end
local msgTemplate = '^3[%s]^0%s'
local finalMsg = msgTemplate:format("ps-ui", appendStr)
print(finalMsg)
end