Advertisement
neo678123

Turtle autocrushing/smelting 0.01

Aug 24th, 2016
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.93 KB | None | 0 0
  1. function isEmpty()
  2.     if nextStack() == -1 then
  3.         return True
  4.     end
  5.     return False
  6. end
  7.  
  8. function nextStack()
  9.     for k = turtle.getSelectedSlot() + 1,16 do
  10.         if turtle.getItemCount(k) > 0 then
  11.             return k
  12.         end
  13.     end
  14.     return -1
  15. end
  16.  
  17. while true do
  18.     chest = peripheral.wrap("back") --chest loc
  19.   if next(chest.getAllStacks()) ~= nill then
  20.         --main procedure
  21.        
  22.         turtle.select(1)      
  23.         chest.condenseItems()
  24.         for k = 1,16 do chest.pushItem("north", k, 32, k)  end
  25.         for k = 1,3 do turtle.forward() end
  26.        
  27.         crush = peripheral.wrap("front")
  28.         while isEmpty() == True do
  29.             x = turtle.getItemCount(turtle.getSelectedSlot())
  30.             crush.pullItem("south", turtle.getSelectedSlot())
  31.             while next(crush.getAllStacks()) ~= nill do
  32.                 for k = 2,5 do
  33.                     crush.pushItem("south", k)
  34.                 end
  35.             end
  36.             if nextStack() == -1 then break end
  37.             turtle.select(nextStack())
  38.         end
  39.        
  40.         turtle.turnRight()
  41.         turtle.forward()
  42.         turtle.turnLeft()
  43.        
  44.         turtle.select(1)
  45.         furn = peripheral.wrap("front")
  46.         while isEmpty() == True do
  47.             x = turtle.getItemCount(turtle.getSelectedSlot())
  48.             furn.pullItem("south", turtle.getSelectedSlot())
  49.             while next(crush.getAllStacks()) ~= nill do
  50.                 for k = 2,3 do
  51.                     furn.pushItem("south", k)
  52.                 end
  53.             end
  54.             if nextStack() == -1 then break end
  55.             turtle.select(nextStack())
  56.         end
  57.        
  58.         turtle.turnRight()
  59.         turtle.back()
  60.         turtle.back()
  61.         turtle.turnLeft()
  62.        
  63.         turtle.back()
  64.         turtle.back()
  65.  
  66.         for k = 1,16 do peripheral.wrap("back").pullItem("north", k) end
  67.        
  68.         turtle.turnLeft()
  69.         turtle.back()
  70.         turtle.turnRight()
  71.  
  72.        
  73.     end
  74.     turtle.turnLeft()
  75.     turtle.turnRight()
  76. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement