Advertisement
Kyominii

VDK_Recolt__Limitations

Apr 30th, 2017
2,654
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. Step 1 :
  2. Add a new column limitation to your item table name (not null)
  3.  
  4. Step 2 :
  5. add "i1.limitation AS raw_lim, i2.limitation AS treat_lim" in SQL request and add "'raw_lim', 'treat_lim'" in getResults (server.lua in vdk_recolt : jobs:getJobs event handler)
  6.  
  7. Step 3 :
  8. You can use this piece of code if you want (from CitizenThread in vdkrec.lua):
  9.  
  10. if (exports.vdk_inventory:notFull() == true) then
  11. if (near == 'field' and exports.vdk_inventory:getQuantity(item.raw_id) < item.raw_lim ) then
  12. recolt('Récolte', item, '+1')
  13. elseif (near == 'treatment' and exports.vdk_inventory:getQuantity(item.raw_id) > 0 and exports.vdk_inventory:getQuantity(item.treat_id) < item.treat_lim) then
  14. recolt('Traitement', item, '+1')
  15. elseif (near == 'seller' and exports.vdk_inventory:getQuantity(item.treat_id) > 0) then
  16. recolt('Vente', item, '-1')
  17. end
  18. else
  19. if (near == 'treatment' and exports.vdk_inventory:getQuantity(item.raw_id) > 0 and exports.vdk_inventory:getQuantity(item.treat_id) < item.treat_lim) then
  20. recolt('Traitement', item, '+1')
  21. elseif (near == 'seller' and exports.vdk_inventory:getQuantity(item.treat_id) > 0) then
  22. recolt('Vente', item, '-1')
  23. end
  24. end
  25.  
  26. Step 4 :
  27. In vdkinv.lua, change getQuantity function to :
  28.  
  29. function getQuantity(itemId)
  30. if(not ITEMS[tonumber(itemId)]) then
  31. return 0
  32. else
  33. return ITEMS[tonumber(itemId)].quantity
  34. end
  35. end
  36.  
  37. Step 5 (if you have vdk_recolt 1.5) :
  38. In server.lua, there is the giveItem event modified
  39.  
  40. AddEventHandler("player:giveItem", function(item, name, qty, target)
  41. local player = getPlayerID(target)
  42. local executed_query = MySQL:executeQuery("SELECT SUM(quantity) as total FROM user_inventory WHERE user_id = '@username'", { ['@username'] = player })
  43. local result = MySQL:getResults(executed_query, { 'total' })
  44.  
  45. local executed_query2 = MySQL:executeQuery("SELECT quantity, limitation FROM `items` JOIN user_inventory ON items.id = user_inventory.item_id WHERE user_id = '@user' AND id = '@id'", { ['@user'] = player, ['@id'] = item })
  46. local result2 = MySQL:getResults(executed_query2, { 'quantity', 'limitation' })
  47.  
  48. if(result and result2) then
  49. local total = result[1].total
  50. if (total + qty <= 60 and result2[1].quantity < result2[1].limitation) then
  51. TriggerClientEvent("player:looseItem", source, item, qty)
  52. TriggerClientEvent("player:receiveItem", target, item, qty)
  53. TriggerClientEvent("es_freeroam:notify", target, "CHAR_MP_STRIPCLUB_PR", 1, "Mairie", false, "Vous venez de recevoir " .. qty .. " " .. name)
  54. end
  55. end
  56. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement