mirror of
https://github.com/jimathy/jim-consumables.git
synced 2026-08-16 22:16:02 +01:00
Try to fix hunger/thirst for essx
This commit is contained in:
@@ -314,10 +314,23 @@ RegisterNetEvent(getScript()..':Consume', function(itemName)
|
||||
end)
|
||||
if needStats then
|
||||
if needStats.hunger then
|
||||
TriggerServerEvent(getScript()..":server:addNeed", Core.Functions.GetPlayerData().metadata["hunger"] + needStats.hunger, "hunger")
|
||||
local hunger = 0
|
||||
if Core.Functions and Core.Functions.GetPlayerData then
|
||||
hunger = Core.Functions.GetPlayerData().metadata["hunger"] or 0
|
||||
elseif ESX and ESX.GetPlayerData then
|
||||
hunger = ESX.GetPlayerData().hunger or 0
|
||||
end
|
||||
TriggerServerEvent(getScript()..":server:addNeed", hunger + needStats.hunger, "hunger")
|
||||
end
|
||||
|
||||
if needStats.thirst then
|
||||
TriggerServerEvent(getScript()..":server:addNeed", Core.Functions.GetPlayerData().metadata["thirst"] + needStats.thirst, "thirst")
|
||||
local thirst = 0
|
||||
if Core.Functions and Core.Functions.GetPlayerData then
|
||||
thirst = Core.Functions.GetPlayerData().metadata["thirst"] or 0
|
||||
elseif ESX and ESX.GetPlayerData then
|
||||
thirst = ESX.GetPlayerData().thirst or 0
|
||||
end
|
||||
TriggerServerEvent(getScript()..":server:addNeed", thirst + needStats.thirst, "thirst")
|
||||
end
|
||||
end
|
||||
debugPrint("^5Debug^7: ^2Hunger^7: [^6"..(needStats.hunger or 0).."^7] ^2Thrist^7: [^6"..(needStats.thirst or 0).."^7]" )
|
||||
|
||||
@@ -19,14 +19,37 @@ onResourceStop(function()
|
||||
end)
|
||||
|
||||
RegisterNetEvent(getScript()..':server:addNeed', function(amount, type)
|
||||
local Player = Core.Functions.GetPlayer(source) if not Player then return end
|
||||
if type == "thirst" then
|
||||
Player.Functions.SetMetaData('thirst', amount)
|
||||
TriggerClientEvent('hud:client:UpdateNeeds', source, Player.PlayerData.metadata.hunger, amount)
|
||||
elseif type == "hunger" then
|
||||
Player.Functions.SetMetaData('hunger', amount)
|
||||
TriggerClientEvent('hud:client:UpdateNeeds', source, amount, Player.PlayerData.metadata.thirst)
|
||||
end
|
||||
local src = source
|
||||
|
||||
if Core.Functions and Core.Functions.GetPlayer then -- QBCore/QBox
|
||||
local Player = Core.Functions.GetPlayer(src)
|
||||
if not Player then return end
|
||||
|
||||
if type == "thirst" then
|
||||
Player.Functions.SetMetaData('thirst', amount)
|
||||
TriggerClientEvent('hud:client:UpdateNeeds', src, Player.PlayerData.metadata.hunger, amount)
|
||||
elseif type == "hunger" then
|
||||
Player.Functions.SetMetaData('hunger', amount)
|
||||
TriggerClientEvent('hud:client:UpdateNeeds', src, amount, Player.PlayerData.metadata.thirst)
|
||||
end
|
||||
|
||||
elseif ESX and ESX.GetPlayerFromId then -- ESX
|
||||
local xPlayer = ESX.GetPlayerFromId(src)
|
||||
if not xPlayer then return end
|
||||
|
||||
local hunger = xPlayer.get('hunger') or 0
|
||||
local thirst = xPlayer.get('thirst') or 0
|
||||
|
||||
if type == "thirst" then
|
||||
thirst = amount
|
||||
xPlayer.set('thirst', thirst)
|
||||
elseif type == "hunger" then
|
||||
hunger = amount
|
||||
xPlayer.set('hunger', hunger)
|
||||
end
|
||||
|
||||
TriggerClientEvent('hud:client:UpdateNeeds', src, hunger, thirst)
|
||||
end
|
||||
end)
|
||||
|
||||
local syncScheduled = false
|
||||
|
||||
Reference in New Issue
Block a user