serafim7

открытие коробок утильсырья [OpenComputers]

May 11th, 2019
580
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.72 KB | None | 0 0
  1. --[[opencomputers открытие коробок утильсырья by serafim
  2.     pastebin.com/z4ZqDAmd              update 12.05.2019
  3.  
  4. требования:
  5. инвентарь,контроллер инвентаря
  6.      
  7. использование:
  8. в судук сверху робота ложим коробки.
  9. в судук снизу, робот скидует лут.
  10. ]]--
  11.  
  12. local com = require("component")
  13. local term = require("term")
  14.  
  15. local box,drop = 0,0
  16.  
  17. if not com.isAvailable("robot") then
  18.   print("только роботы могут использовать эту программу")
  19.   os.exit()
  20. end
  21. local r = require('robot')
  22.  
  23. if not com.isAvailable("inventory_controller") then
  24.   print("для работы нужен контроллер инвентаря")
  25.   os.exit()
  26. end
  27. local i_c = require('component').inventory_controller
  28.  
  29. local function unload()
  30.   print("складываю лут...")
  31.   for i = 2, r.inventorySize() do
  32.     if r.count(i) > 0 then
  33.       drop = drop + r.count(i)
  34.       r.select(i)
  35.       if not r.dropDown() then
  36.         print("в сундуке нет места :(")
  37.         os.exit()
  38.       end
  39.     end
  40.   end
  41.   r.select(1)
  42. end
  43.  
  44. while true do
  45.   term.clear()
  46.   print("всего открыто коробок  "..box)
  47.   print("всего скинуто лута     "..math.ceil(drop).."\n")
  48.   if r.count(1) > 0 or r.suckUp(64) then
  49.     r.select(1)
  50.     i_c.equip()
  51.     r.select(2)
  52.     print("открываю коробки...")
  53.     while r.use() do
  54.       box = box + 1
  55.       if r.count(r.inventorySize()-2) > 0 then
  56.         unload()
  57.       end
  58.     end
  59.     unload()
  60.   else
  61.     print("нет коробок, жду...")
  62.     os.sleep(10)
  63.   end
  64. end
Advertisement
Add Comment
Please, Sign In to add comment