Advertisement
Guest User

house2

a guest
Feb 6th, 2013
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.81 KB | None | 0 0
  1. house = {1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,1,4,1,4,1,1,6,4,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,4,6,5,1,0,0,1,0,0,1,4,4,1,1,0,4,0,0,0,0,0,0,0,0,4,6,5,1,0,0,1,0,0,1,0,0,1,0,0,4,0,0,0,3,3,0,0,0,4,6,6,4,0,0,0,3,3,0,0,0,4,0,0,1,4,4,1,4,4,1,4,4,4,6,6,6,6,6,1,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,6,0,8,8,8,8,8,8,8,8,0,0,0,0,0,0,8,1,4,1,4,1,4,1,6,0,4,0,0,0,0,0,1,8,0,0,0,0,0,0,8,1,0,0,0,0,0,4,0,0,1,0,0,1,0,0,1,4,4,1,6,0,4,0,0,0,0,0,0,0,0,4,0,0,1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,0,0,0,0,0,4,0,0,4,0,0,0,0,0,1,0,0,4,0,0,1,4,4,1,4,4,1,4,4,4,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,7,7,7,7,7,7,7,7,0,0,0,0,0,0,7,1,4,1,4,1,4,1,8,8,4,0,0,0,0,0,2,7,0,0,0,0,0,0,7,2,0,0,0,0,0,4,8,8,1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,8,8,8,0,8,8,4,8,8,1,8,8,1,8,8,1,4,4,1,0,0,7,0,0,2,0,0,0,8,8,4,8,8,4,8,8,0,0,0,2,0,0,7,0,0,7,7,7,1,4,4,1,4,4,4,8,8,8,8,8,8,8,8,8,8,8,8,0,0,8,8,8,8,0,0,0,0,0,0,0,6,6,6,6,6,6,6,6,6,8,8,0,0,8,8,6,3,3,3,3,3,3,3,6,6,3,4,4,4,4,4,4,6,8,8,0,0,8,8,6,4,4,4,4,4,4,3,6,6,3,3,3,3,3,3,3,6,6,3,0,0,4,4,4,6,6,6,0,6,6,6,6,6,1,6,6,1,6,6,3,6,6,3,0,0,6,0,0,6,0,0,0,6,6,6,6,6,6,6,6,0,0,0,6,0,0,6,0,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,0,0,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,0,0,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,3,0,0,4,0,0,7,0,0,0,0,0,0,0,0,7,0,7,7,7,7,7,7,7,3,0,0,7,4,4,7,4,4,4,7,0,0,0,0,0,0,7,4,4,4,7,4,4,7,0,0,7,7,7,7,7,7,7,7,0,0,0,0,0,0,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6}
  2.  
  3. if turtle.getItemCount(1) ~= 59 then
  4.     print("Usage: House" )
  5.     print("1:Bricks[59], 2:Glowstone[4], 3: Planks[25], 4:Glass[64+18]" )
  6.     print("5:Wood[3], 6: Wooden Slab[64+20], 7: Stone Slab[64+6], 8: Leaves[57]")
  7.     print("16:Fuel")
  8.     return
  9. end
  10.  
  11.  
  12.  
  13.    
  14. local depth = 0
  15. local placed = 0
  16. local used = 0
  17.  
  18. local function sorting()
  19. local space = 0
  20. local items = 0
  21. for n=1,8 do
  22.     turtle.select(n)
  23.     if turtle.getItemCount(n) >40 then
  24.         space = turtle.getItemSpace(n)
  25.         if space ~= 0 then
  26.             for m=7,15 do
  27.                 if turtle.compareTo(m) then
  28.                     turtle.select(m)
  29.                     items = turtle.getItemCount(m)
  30.                     if items > space then
  31.                         turtle.transferTo(n, space)
  32.                     else
  33.                         turtle.transferTo(n, items)
  34.                     end
  35.                 end
  36.             end
  37.         end
  38.     end
  39. end
  40. end
  41.                
  42.  
  43. local function refuel()
  44.     local fuelLevel = turtle.getFuelLevel()
  45.  
  46.     if fuelLevel == "unlimited" or fuelLevel > 4 then
  47.         return
  48.     end
  49.    
  50.     local function tryRefuel()
  51.         if turtle.getItemCount(16) > 0 then
  52.             turtle.select(16)
  53.             if turtle.refuel(1) then
  54.                 turtle.select(1)
  55.                 return true
  56.             end
  57.         end
  58.         turtle.select(16)
  59.         return false
  60.     end
  61.    
  62.     if not tryRefuel() then
  63.         print( "Add more fuel to continue." )
  64.         while not tryRefuel() do
  65.             sleep(1)
  66.         end
  67.         print( "Resuming Tunnel." )
  68.     end
  69. end
  70.  
  71. local function tryForward()
  72.     refuel()
  73.     while not turtle.forward() do
  74.         sleep( 0.5 )
  75.     end
  76.     return true
  77. end
  78.  
  79. local function tryUp()
  80.     refuel()
  81.     while not turtle.up() do
  82.         sleep( 0.5 )
  83.     end
  84.     return true
  85. end
  86.  
  87. for k=1,14 do
  88.     for i=1,12 do
  89.         for j=1,12 do
  90.             placed = placed + 1
  91.             if house[placed] == nil then
  92.                 return
  93.             end
  94.             if house[placed] ~= 0 then
  95.                 turtle.select(house[placed])
  96.                 turtle.placeDown()
  97.                 used = used + 1
  98.                 if used == 16 then
  99.                     used = 0
  100.                     sorting()
  101.                 end
  102.             end
  103.             if j ~= 12 then
  104.                 tryForward()
  105.             end
  106.         end
  107.         if i ~= 12 then
  108.             if math.fmod(i, 2) == 0 then
  109.                 turtle.turnRight()
  110.                 tryForward()
  111.                 turtle.turnRight()
  112.             else
  113.                 turtle.turnLeft()
  114.                 tryForward()
  115.                 turtle.turnLeft()
  116.             end
  117.         end
  118.     end
  119.     turtle.turnLeft()
  120.     for m=1,11 do
  121.         tryForward()
  122.     end
  123.     turtle.turnLeft()
  124.     tryUp()
  125. end
  126.  
  127.        
  128.  
  129. print( "House complete." )
  130. print( "Placed "..placed.." items total." )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement