1
0
Fork 0
forked from Simnation/Main
Main/resources/[tools]/uz_PureHud/server.lua
2025-07-16 23:20:28 +02:00

81 lines
No EOL
3.3 KiB
Lua

Framework = nil
PlayerStress = json.decode(LoadResourceFile(GetCurrentResourceName(), "./Stress.json"))
Citizen.CreateThread(function()
while Framework == nil do Citizen.Wait(750) end
Citizen.Wait(2500)
for _,v in pairs(GetPlayers()) do
local ID = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Framework.GetPlayerFromId(tonumber(v))?.identifier or Framework.Functions.GetPlayer(tonumber(v))?.PlayerData?.citizenid
if Player ~= nil then
if not PlayerStress[ID] then PlayerStress[ID] = 0 end
TriggerClientEvent('PlayerLoaded', tonumber(v), tonumber(PlayerStress[ID]))
Wait(74)
end
end
end)
Citizen.CreateThread(function()
Framework = GetFramework()
Callback = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Framework.RegisterServerCallback or Framework.Functions.CreateCallback
Citizen.Wait(2000)
Callback('Players', function(source, cb)
local count = 0
local plyr = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Framework.GetPlayers() or Framework.Functions.GetPlayers()
for k,v in pairs(plyr) do
if v ~= nil then count = count + 1 end
end
cb(count)
end)
Callback('GetMoney', function(source, cb)
cb(Framework.GetPlayerFromId(source).getAccount("bank").money)
end)
end)
RegisterNetEvent('esx:playerLoaded')
AddEventHandler('esx:playerLoaded', function(src)
Wait(700)
local ID = Framework.GetPlayerFromId(src)?.identifier
if not PlayerStress[ID] then PlayerStress[ID] = 0 end
TriggerClientEvent('PlayerLoaded', src, tonumber(PlayerStress[ID]))
end)
RegisterNetEvent('QBCore:Server:OnPlayerLoaded')
AddEventHandler('QBCore:Server:OnPlayerLoaded', function()
local source = source
Wait(700)
local ID = Framework.Functions.GetPlayer(source)?.PlayerData?.citizenid
if not PlayerStress[ID] then PlayerStress[ID] = 0 end
TriggerClientEvent('PlayerLoaded', source, tonumber(PlayerStress[ID]))
end)
-- PlayerStress = {}
RegisterNetEvent('SetStress', function(amount)
local Player = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Framework.GetPlayerFromId(source) or Framework.Functions.GetPlayer(source)
local JobName = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Player.job.label or Player.PlayerData.job.label
local ID = (Customize.Framework == "ESX" or Customize.Framework == "NewESX") and Player.identifier or Player.PlayerData.citizenid
local newStress
if not Player or IsWhitelisted(Player, JobName) then return end -- OLD: if not Player or (Customize.DisablePoliceStress and JobName == 'police') then return end
if not PlayerStress[ID] then PlayerStress[ID] = 0 end
newStress = PlayerStress[ID] + amount
if newStress <= 0 then newStress = 0 end
if newStress > 100 then newStress = 100 end
PlayerStress[ID] = newStress
TriggerClientEvent('UpdateStress', source, PlayerStress[ID])
SaveResourceFile(GetCurrentResourceName(), "./Stress.json", json.encode(PlayerStress), -1)
end)
function IsWhitelisted(Player, JobName)
if Player then
for _, v in pairs(Customize.DisableJobsStress) do
if jobName == v then
return true
end
end
end
return false
end