Advertisement
kovakovi2000

_SPONGE

Feb 20th, 2021 (edited)
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.12 KB | None | 0 0
  1. local spongeSpacing = 2
  2. local linespace = 4
  3. local chucksize = 16
  4. local grid = 2
  5. local size = chucksize * grid
  6. local iMax = (size / linespace) - 1
  7.  
  8. function ExternalRefuelCheck()
  9.     if turtle.getFuelLevel() < 10000 then
  10.         turtle.up()
  11.         turtle.select(16)
  12.         turtle.placeUp()
  13.         turtle.down()
  14.         turtle.select(15)
  15.         turtle.placeUp()
  16.        
  17.         local fuelLevel = turtle.getFuelLevel()
  18.         local flmx = turtle.getFuelLimit()
  19.         while fuelLevel ~= flmx do
  20.             fuelLevel = turtle.getFuelLevel()
  21.             oldxc, oldyc = term.getCursorPos()
  22.             term.setCursorPos(1,oldyc-1)
  23.             print("Refueled: " .. fuelLevel)
  24.             sleep(1)
  25.         end
  26.  
  27.         turtle.digUp()
  28.         turtle.up()
  29.         turtle.select(16)
  30.         turtle.digUp()
  31.         turtle.down()
  32.     end
  33.     turtle.select(1)
  34. end
  35.  
  36. function ClearLayer()
  37.     for i=0, iMax do
  38.         local _j = 0;
  39.         local m = 0
  40.  
  41.         turtle.placeDown() --place under
  42.         turtle.digUp()
  43.         ExternalRefuelCheck()
  44.         while m ~= spongeSpacing do -- forward 2
  45.             if turtle.forward() then
  46.                 m = m + 1
  47.             end
  48.         end
  49.  
  50.         while m ~= size - spongeSpacing do
  51.             local _m = m
  52.  
  53.             turtle.placeDown() --place under | #1place
  54.             turtle.digUp()
  55.             ExternalRefuelCheck()
  56.             while (_m + spongeSpacing) ~= m do --forward 2
  57.                 if turtle.forward() then
  58.                     m = m + 1
  59.                 end
  60.                 print("fisrt: m=" .. m .. " | i=" .. i)
  61.             end
  62.  
  63.             turtle.placeDown() --place under | #2place
  64.             turtle.digUp()
  65.             ExternalRefuelCheck()
  66.            
  67.             while _m ~= m do --back to where #1place
  68.                 if turtle.back() then
  69.                     m = m - 1
  70.                 end
  71.                 print("fisrt: m=" .. m .. " | i=" .. i)
  72.             end
  73.             turtle.digDown() -- pick it up
  74.  
  75.             while (_m + spongeSpacing) ~= m do -- go after #2place
  76.                 if turtle.forward() then
  77.                     m = m + 1
  78.                 end
  79.                 print("fisrt: m=" .. m .. " | i=" .. i)
  80.             end
  81.         end
  82.  
  83.         if i > 1 then --If on the third line pick up the previus line end
  84.             turtle.turnRight()
  85.             local temp = 0
  86.             while temp ~= linespace do
  87.                 if turtle.forward() then
  88.                     temp = temp + 1
  89.                 end
  90.             end
  91.             turtle.digDown()
  92.             while temp ~= 0 do
  93.                 if turtle.back() then
  94.                     temp = temp - 1
  95.                 end
  96.             end
  97.             turtle.turnLeft()
  98.         end
  99.        
  100.         while m ~= 0 do -- go back to line start
  101.             if turtle.back() then
  102.                 m = m - 1
  103.             end
  104.         end
  105.        
  106.         if i > 1 then --If on the third line pick up the previus line end
  107.             turtle.turnRight()
  108.             local temp = 0
  109.             while temp ~= linespace do
  110.                 if turtle.forward() then
  111.                     temp = temp + 1
  112.                 end
  113.             end
  114.             turtle.digDown()
  115.             while temp ~= 0 do
  116.                 if turtle.back() then
  117.                     temp = temp - 1
  118.                 end
  119.             end
  120.             turtle.turnLeft()
  121.         end
  122.        
  123.         if i ~= iMax then --go to next line start
  124.             turtle.turnLeft()
  125.             local m = 0
  126.             while m ~= linespace do
  127.                 if turtle.forward() then
  128.                     m = m + 1
  129.                 end
  130.             end
  131.             turtle.turnRight()
  132.         end
  133.        
  134.     end
  135. end
  136.  
  137. turtle.select(1)
  138. while true do
  139.     ClearLayer()
  140.     turtle.turnRight()
  141.     local temp = 0
  142.     while temp ~= iMax * linespace do
  143.         if turtle.forward() then
  144.             temp = temp + 1
  145.         end
  146.     end
  147.     while not turtle.turnLeft() do end
  148.     while not turtle.forward() do end
  149.     while not turtle.down() do end
  150.     while not turtle.down() do end
  151.     while not turtle.back() do end
  152.  
  153.     ExternalRefuelCheck()
  154. end
  155.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement