После добавления предмета в инвентарь, я сохраняю ID предмета в базу данных. После следующего запуска сервера ID меняется. Как сделать чтобы ID не менялся
Ид предмета в инвентаре статичен и не меняется. Я не знаю о чем ты. Предоставь код с примером
Вот у меня есть callback
local callback = function(invDbID_or_iPurchID)
local id = invDbID_or_iPurchID
local ItemUID = IGS.GetItemByUID(tostring(coupoun.Amount))
PrintTable(ItemUID)
local data = dbRequest( ('SELECT * FROM `SAM_ActiveCoupounItems` WHERE InvID=%s'):format( SQLStr(id) ) ) or {}
if #data <= 0 then
dbRequest( ('INSERT INTO "SAM_ActiveCoupounItems" ("InvID") VALUES (%s);'):format( SQLStr(id)) ) -- Запись в базу данных
if not tblblock[id] then
tblblock[id] = true -- Запись в таблицу
end
end
end
Который запускается после IGS.AddToInventory
Потом после запуска сервера я записываю в таблицу айдишники из базы данных
local tblblock = {}
hook.Add("Initialize","LoadTBLBLOCK",function()
local data = dbRequest( ('SELECT * FROM `SAM_ActiveCoupounItems`') ) or {}
if #data <= 0 then return end
for i = 1, #data do
local invid = data[i]["InvID"]
if not tblblock[invid] then
print("Added tblblock invID: "..invid)
tblblock[invid] = true
end
end
end)
Всё я починил, оказалось что запись данных в базе данных была как string а надо было number