Advertisement
actuallykane

Untitled

Apr 18th, 2020
353
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.43 KB | None | 0 0
  1.     -- Get Inventory
  2.     table.insert(tasks, function(cb)
  3.  
  4.       MySQL.Async.fetchAll(
  5.         'SELECT * FROM `user_inventory` WHERE `identifier` = @identifier',
  6.         {
  7.           ['@identifier'] = player.getIdentifier()
  8.         },
  9.         function(inventory)
  10.  
  11.           local tasks2 = {}
  12.  
  13.           for i=1, #inventory, 1 do
  14.             table.insert(userData.inventory, {
  15.               name      = inventory[i].item,
  16.               count     = inventory[i].count,
  17.               label     = ESX.Items[inventory[i].item].label,
  18.               limit     = ESX.Items[inventory[i].item].limit,
  19.               usable    = ESX.UsableItemsCallbacks[inventory[i].item] ~= nil,
  20.               rare      = ESX.Items[inventory[i].item].rare,
  21.               canRemove = ESX.Items[inventory[i].item].canRemove,
  22.             })
  23.           end
  24.  
  25.           for k,v in pairs(ESX.Items) do
  26.  
  27.             local found = false
  28.  
  29.             for j=1, #userData.inventory, 1 do
  30.               if userData.inventory[j].name == k then
  31.                 found = true
  32.                 break
  33.               end
  34.             end
  35.  
  36.             if not found then
  37.  
  38.               table.insert(userData.inventory, {
  39.                 name      = k,
  40.                 count     = 0,
  41.                 label     = ESX.Items[k].label,
  42.                 limit     = ESX.Items[k].limit,
  43.                 usable    = ESX.UsableItemsCallbacks[k] ~= nil,
  44.                 rare      = ESX.Items[k].rare,
  45.                 canRemove = ESX.Items[k].canRemove,
  46.               })
  47.  
  48.               local scope = function(item, identifier)
  49.  
  50.                 table.insert(tasks2, function(cb2)
  51.  
  52.                   MySQL.Async.execute(
  53.                     'INSERT INTO user_inventory (identifier, item, count) VALUES (@identifier, @item, @count)',
  54.                     {
  55.                       ['@identifier'] = identifier,
  56.                       ['@item']       = item,
  57.                       ['@count']      = 0
  58.                     },
  59.                     function(rowsChanged)
  60.                       cb2()
  61.                     end
  62.                   )
  63.  
  64.                 end)
  65.  
  66.               end
  67.  
  68.               scope(k, player.getIdentifier())
  69.  
  70.             end
  71.  
  72.           end
  73.  
  74.           Async.parallelLimit(tasks2, 5, function(results) end)
  75.  
  76.           table.sort(userData.inventory, function(a,b)
  77.             return a.label < b.label
  78.           end)
  79.  
  80.           cb()
  81.         end
  82.       )
  83.  
  84.     end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement