Revamp hunger and thirst events

Realised I made a mistake, and the server function wasn't working fully on ESX

moved it to use the jim_bridge `setNeed` trigger and made the function smarter
This commit is contained in:
Jim Shield
2025-06-14 22:29:40 +01:00
parent 518c5204ae
commit 4b015e5efa
2 changed files with 19 additions and 44 deletions

View File

@@ -313,24 +313,33 @@ RegisterNetEvent(getScript()..':Consume', function(itemName)
end
end)
if needStats then
if needStats.hunger then
jsonPrint(needStats)
if needStats.hunger > 0 then
local hunger = 0
if Core.Functions and Core.Functions.GetPlayerData then
hunger = Core.Functions.GetPlayerData().metadata["hunger"] or 0
if Core and Core.Functions then
hunger = (Core.Functions.GetPlayerData().metadata["hunger"] or 0) + needStats.hunger
hunger = hunger > 100 and 100 or hunger
elseif ESX and ESX.GetPlayerData then
hunger = ESX.GetPlayerData().hunger or 0
hunger = (needStats.thirst / 100) * 1000000
hunger = hunger > 1000000 and 1000000 or hunger
end
TriggerServerEvent(getScript()..":server:addNeed", hunger + needStats.hunger, "hunger")
TriggerServerEvent(getScript()..":server:setNeed", "hunger", hunger)
end
if needStats.thirst then
if needStats.thirst > 0 then
local thirst = 0
if Core.Functions and Core.Functions.GetPlayerData then
thirst = Core.Functions.GetPlayerData().metadata["thirst"] or 0
if Core and Core.Functions then
thirst = (Core.Functions.GetPlayerData().metadata["thirst"] or 0) + needStats.thirst
thirst = thirst > 100 and 100 or thirst
elseif ESX and ESX.GetPlayerData then
thirst = ESX.GetPlayerData().thirst or 0
thirst = (needStats.thirst / 100) * 1000000
thirst = thirst > 1000000 and 1000000 or thirst
end
TriggerServerEvent(getScript()..":server:addNeed", thirst + needStats.thirst, "thirst")
TriggerServerEvent(getScript()..":server:setNeed", "thirst", thirst)
end
end
debugPrint("^5Debug^7: ^2Hunger^7: [^6"..(needStats.hunger or 0).."^7] ^2Thrist^7: [^6"..(needStats.thirst or 0).."^7]" )