Hello guys,
i’m trying to do a simple check for given item quantity
Client.lua
ESX = nil
Citizen.CreateThread(function()
while ESX == nil do
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
Citizen.Wait(0)
end
while ESX.GetPlayerData().job == nil do Citizen.Wait(10) end
PlayerData = ESX.GetPlayerData()
end)
Citizen.CreateThread(function()
while true do
Citizen.Wait(0)
if IsControlJustReleased(0, 170) then
ESX.TriggerServerCallback('fill_helper:getItemQty', function(count)
ESX.ShowNotification(count)
end, "wood")
end
end
end)
Server.lua
ESX = nil
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
ESX.RegisterServerCallback('fill_helper:getItemQty', function(source, cb, item)
local xPlayer = ESX.GetPlayerFromId(source)
for key, value in ipairs(xPlayer.inventory) do
if value.name == item then
cb(value.count)
end
end
cb(0)
end)
Everything works, but i’m getting an error: es_extended/client/functions.lua:1121 attempt to call nil value (field ‘?’)
Error is related to the function
RegisterNetEvent('esx:serverCallback')
AddEventHandler('esx:serverCallback', function(requestId, ...)
ESX.ServerCallbacks[requestId](...)
ESX.ServerCallbacks[requestId] = nil
end)
What am i doing wrong?