Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- p = peripheral.wrap("front")
- function resetInv()
- for i = 1,16 do
- p.insertItem(i, 64, "north")
- end
- turtle.select(1)
- end
- resetInv()
- function isTiny(v)
- if (v["name"]:match("GT_TinyDusts") or v["name"]:match("GT_Nuggets")) then return true end
- if (v["id"] == 21264 and v["dmg"] >= 6 and v["dmg"] <= 948) then return true end
- if (v["id"] == 21264 and v["dmg"] >= 9008 and v["dmg"] <= 9884) then return true end
- if (v["id"] == 371) then return true end
- return false
- end
- function isSmall(v)
- if (v["name"]:match("GT_SmallDusts")) then return true end
- if (v["id"] == 21264 and v["dmg"] >= 1006 and v["dmg"] <= 1948) then return true end
- return false
- end
- while true do
- for k,v in pairs(p.getAvailableItems()) do
- if isTiny(v) then
- if v["qty"] > 576 then
- v["qty"] = 64
- for i = 1,9 do
- p.extractItem(v, "north")
- end
- turtle.select(4)
- turtle.transferTo(10)
- turtle.select(8)
- turtle.transferTo(11)
- turtle.select(1)
- if not turtle.craft() then
- resetInv()
- end
- p.insertItem(1, 64, "north")
- elseif v["qty"] > 288 then
- v["qty"] = 32
- for i = 1,9 do
- p.extractItem(v, "north")
- end
- turtle.select(1)
- turtle.transferTo(11, 32)
- turtle.select(2)
- turtle.transferTo(10, 32)
- turtle.select(3)
- turtle.transferTo(9, 32)
- turtle.select(4)
- turtle.transferTo(7, 32)
- turtle.transferTo(6, 32)
- turtle.select(1)
- if not turtle.craft() then
- resetInv()
- end
- p.insertItem(1, 64, "north")
- elseif (v["qty"] > 8) then
- if v["qty"] > 63 then v["qty"] = 63 end
- n = math.floor(v["qty"] / 9)
- v["qty"] = 9 * n
- p.extractItem(v, "north")
- for o = 2,3 do
- turtle.transferTo(o, n)
- end
- for o = 5,7 do
- turtle.transferTo(o, n)
- end
- for o = 9,11 do
- turtle.transferTo(o, n)
- end
- if not turtle.craft() then
- resetInv()
- end
- p.insertItem(1, 64, "north")
- end
- end
- if isSmall(v) then
- if (v["qty"] > 256) then
- v["qty"] = 64
- for i = 1,4 do
- p.extractItem(v, "north")
- end
- turtle.select(3)
- turtle.transferTo(5)
- turtle.select(4)
- turtle.transferTo(6)
- turtle.select(1)
- if not turtle.craft() then
- resetInv()
- end
- p.insertItem(1, 64, "north")
- elseif (v["qty"] > 3) then
- if v["qty"] > 64 then v["qty"] = 64 end
- n = math.floor(v["qty"] / 4)
- v["qty"] = 4 * n
- p.extractItem(v, "north")
- turtle.transferTo(2, n)
- turtle.transferTo(5, n)
- turtle.transferTo(6, n)
- if not turtle.craft() then
- resetInv()
- end
- p.insertItem(1, 64, "north")
- end
- end
- end
- sleep(0.1)
- end
Add Comment
Please, Sign In to add comment