Advertisement
Guest User

build1

a guest
May 29th, 2015
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 12.94 KB | None | 0 0
  1. --variables
  2.  
  3. floors = 10
  4.  
  5. --Functions
  6.  
  7. function refuel()
  8.     while turtle.getFuelLevel() < 3000 do
  9.         print("Gathering fuel")
  10.         turtle.turnRight()
  11.         turtle.suck()
  12.         turtle.refuel()
  13.         turtle.turnLeft()
  14.     end
  15. end
  16.  
  17. function craftTorches()
  18.     turtle.turnLeft()
  19.     for i=1,16 do
  20.         turtle.select(i)
  21.         turtle.drop()
  22.     end
  23.     turtle.turnRight()
  24.     turtle.forward()
  25.     turtle.turnRight()
  26.     turtle.forward()
  27.     turtle.forward()
  28.     turtle.turnRight()
  29.     turtle.select(1)
  30.     turtle.suck(2)
  31.     turtle.select(16)
  32.     turtle.craft()
  33.     turtle.turnLeft()
  34.     turtle.forward()
  35.     turtle.forward()
  36.     turtle.turnRight()
  37.     for i=1,16 do
  38.         turtle.select(i)
  39.         turtle.drop()
  40.     end
  41.     turtle.drop()
  42.    
  43.     turtle.select(1)
  44.     turtle.suck(4)
  45.     turtle.select(5)
  46.     turtle.suck(4)
  47.    
  48.     turtle.turnLeft()
  49.     turtle.select(16)
  50.     turtle.craft()
  51.    
  52.     turtle.forward()
  53.     turtle.turnRight()
  54.    
  55.     for i=1,16 do
  56.         turtle.select(i)
  57.         turtle.drop()
  58.     end
  59.    
  60.     turtle.turnLeft()
  61.     turtle.turnRight()
  62.     turtle.select(5)
  63.     turtle.suck(16)
  64.    
  65.     turtle.turnLeft()
  66.    
  67.     turtle.back()
  68.     turtle.back()
  69.     turtle.back()
  70.     turtle.back()
  71.    
  72.    
  73.     turtle.turnRight()
  74.     turtle.select(1)
  75.     turtle.suck(16)
  76.     turtle.turnLeft()
  77.     turtle.select(16)
  78.     turtle.craft()
  79.    
  80.     turtle.forward()
  81.     turtle.forward()
  82.     turtle.forward()
  83.     turtle.forward()
  84.     turtle.forward()
  85.    
  86.     turtle.turnRight()
  87.    
  88.     for i=1,16 do
  89.         turtle.select(i)
  90.         turtle.drop()
  91.     end
  92.    
  93.     turtle.turnLeft()
  94.    
  95.     turtle.back()
  96.     turtle.back()
  97.     turtle.back()
  98.     turtle.back()
  99.     turtle.back()
  100.     turtle.back()
  101.    
  102.     turtle.turnLeft()
  103.     turtle.back()
  104.    
  105. end
  106.  
  107. function getMaterials()
  108.    
  109.     turtle.forward()
  110.     turtle.turnRight()
  111.     turtle.forward()
  112.     turtle.forward()
  113.     turtle.forward()
  114.     turtle.turnRight()
  115.     turtle.select(14)
  116.     turtle.suck()
  117.     turtle.select(15)
  118.     turtle.suck()
  119.     turtle.select(12)
  120.     turtle.suck()
  121.     turtle.turnLeft()
  122.     turtle.forward()
  123.     turtle.forward()
  124.     turtle.forward()
  125.     turtle.turnRight()
  126.     turtle.select(16)
  127.     turtle.suck()
  128.     turtle.turnLeft()
  129.    
  130.     turtle.forward()
  131.     turtle.turnRight()
  132.     turtle.select(13)
  133.     turtle.suck()
  134.     turtle.turnLeft()
  135.    
  136.     turtle.back()
  137.     turtle.back()
  138.     turtle.back()
  139.     turtle.back()
  140.     turtle.back()
  141.     turtle.back()
  142.     turtle.back()
  143.    
  144.     turtle.turnLeft()
  145.     turtle.back()
  146.    
  147. end
  148.  
  149. function dump1to11()
  150.     turtle.turnLeft()
  151.     for i=1,11 do
  152.         turtle.select(i)
  153.         turtle.drop()
  154.     end
  155.     turtle.turnRight()
  156. end
  157.  
  158. function clearGround()
  159.     turtle.forward()
  160.     turtle.turnRight()
  161.     turtle.forward()
  162.     turtle.forward()
  163.     turtle.forward()
  164.     turtle.turnRight()
  165.     turtle.select(14)
  166.     turtle.suck()
  167.     turtle.select(15)
  168.     turtle.suck()
  169.     turtle.turnLeft()
  170.     turtle.back()
  171.     turtle.back()
  172.     turtle.back()
  173.     turtle.turnLeft()
  174.    
  175.     turtle.dig()
  176.     turtle.forward()
  177.     turtle.dig()
  178.     turtle.forward()
  179.    
  180.     turtle.dig()
  181.     for i=1,4 do
  182.         for ii=1,8 do
  183.             turtle.select(1)
  184.             turtle.digDown()
  185.             if  turtle.getItemCount(14) == 0 then
  186.                 turtle.select(15)
  187.             else
  188.                 turtle.select(14)
  189.             end
  190.             turtle.placeDown()
  191.             turtle.dig()
  192.             turtle.forward()
  193.         end
  194.         turtle.turnRight()
  195.         turtle.dig()
  196.         turtle.forward()
  197.         turtle.turnRight()
  198.         turtle.dig()
  199.         turtle.forward()
  200.        
  201.         for ii=1,8 do
  202.             turtle.select(1)
  203.             turtle.digDown()
  204.             selectCobble()
  205.             turtle.placeDown()
  206.             turtle.dig()
  207.             turtle.forward()
  208.         end
  209.         turtle.turnLeft()
  210.         turtle.dig()
  211.         turtle.forward()
  212.         turtle.turnLeft()
  213.         turtle.dig()
  214.         turtle.forward()
  215.        
  216.     end
  217.    
  218.     turtle.turnLeft()
  219.     turtle.turnLeft()
  220.     turtle.dig()
  221.     turtle.forward()
  222.     turtle.turnRight()
  223.     turtle.forward()
  224.     turtle.forward()
  225.     turtle.forward()
  226.     turtle.forward()
  227.     turtle.forward()
  228.     turtle.forward()
  229.     turtle.forward()
  230.     turtle.forward()
  231.     turtle.turnLeft()
  232.     turtle.forward()
  233.     turtle.forward()
  234.     turtle.turnLeft()
  235.     turtle.turnLeft()
  236.     print("Cleared the ground")
  237.    
  238. end
  239.  
  240. function buildFloor()
  241.     print("Building A Floor")
  242.     for i=1,3 do
  243.         turtle.select(1)
  244.         turtle.dig()
  245.         turtle.forward()
  246.         turtle.dig()
  247.         turtle.forward()
  248.  
  249.         turtle.select(1)
  250.         for iiii=1,i do
  251.             turtle.digUp()
  252.             turtle.up()
  253.         end
  254.         turtle.dig()
  255.         turtle.forward()
  256.  
  257.         for ii=1,4 do
  258.             for iii=1,7 do
  259.                 turtle.select(1)
  260.                 turtle.digDown()
  261.                 selectCobble()
  262.                 turtle.placeDown()
  263.                 turtle.select(1)
  264.                 turtle.dig()
  265.                 turtle.forward()
  266.             end
  267.             turtle.turnRight()
  268.         end
  269.         turtle.back()
  270.         for iiii=1,i do
  271.             turtle.down()
  272.         end
  273.         turtle.back()
  274.         turtle.back()
  275.     end
  276.    
  277.     turtle.forward()
  278.     turtle.turnRight()
  279.     turtle.forward()
  280.     turtle.forward()
  281.     turtle.forward()
  282.     turtle.turnRight()
  283.     turtle.select(14)
  284.     turtle.suck()
  285.     turtle.turnLeft()
  286.     turtle.back()
  287.     turtle.back()
  288.     turtle.back()
  289.     turtle.turnLeft()
  290.     turtle.back()
  291.    
  292.    
  293.     turtle.forward()
  294.     turtle.forward()
  295.    
  296.     turtle.select(1)
  297.     turtle.digUp()
  298.     turtle.up()
  299.     turtle.digUp()
  300.     turtle.up()
  301.     turtle.digUp()
  302.     turtle.up()
  303.     turtle.digUp()
  304.     turtle.up()
  305.    
  306.     turtle.dig()
  307.     turtle.forward()
  308.     turtle.turnRight()
  309.    
  310.     --1
  311.     for i=1,7 do
  312.         selectCobble()
  313.         turtle.placeDown()
  314.         turtle.select(1)
  315.         turtle.dig()
  316.         turtle.forward()
  317.     end
  318.    
  319.     selectCobble()
  320.     turtle.placeDown()
  321.     turtle.select(1)
  322.    
  323.     turtle.turnLeft()
  324.     turtle.dig()
  325.     turtle.forward()
  326.     turtle.turnLeft()
  327.    
  328.     --2
  329.     for i=1,7 do
  330.         selectCobble()
  331.         turtle.placeDown()
  332.         turtle.select(1)
  333.         turtle.dig()
  334.         turtle.forward()
  335.     end
  336.    
  337.     selectCobble()
  338.     turtle.placeDown()
  339.     turtle.select(1)
  340.    
  341.     turtle.turnRight()
  342.     turtle.dig()
  343.     turtle.forward()
  344.     turtle.turnRight()
  345.    
  346.    
  347.     --3
  348.     for i=1,7 do
  349.         selectCobble()
  350.         turtle.placeDown()
  351.         turtle.select(1)
  352.         turtle.dig()
  353.         turtle.forward()
  354.     end
  355.    
  356.     selectCobble()
  357.     turtle.placeDown()
  358.     turtle.select(1)
  359.    
  360.     turtle.turnLeft()
  361.     turtle.dig()
  362.     turtle.forward()
  363.     turtle.turnLeft()
  364.    
  365.     --4
  366.     for i=1,7 do
  367.         selectCobble()
  368.         turtle.placeDown()
  369.         turtle.select(1)
  370.         turtle.dig()
  371.         turtle.forward()
  372.     end
  373.    
  374.     selectCobble()
  375.     turtle.placeDown()
  376.     turtle.select(1)
  377.    
  378.     turtle.turnRight()
  379.     turtle.dig()
  380.     turtle.forward()
  381.     turtle.turnRight()
  382.    
  383.     --5
  384.     for i=1,7 do
  385.         selectCobble()
  386.         turtle.placeDown()
  387.         turtle.select(1)
  388.         turtle.dig()
  389.         turtle.forward()
  390.     end
  391.    
  392.     selectCobble()
  393.     turtle.placeDown()
  394.     turtle.select(1)
  395.    
  396.     turtle.turnLeft()
  397.     turtle.dig()
  398.     turtle.forward()
  399.     turtle.turnLeft()
  400.    
  401.     --6
  402.     for i=1,7 do
  403.         selectCobble()
  404.         turtle.placeDown()
  405.         turtle.select(1)
  406.         turtle.dig()
  407.         turtle.forward()
  408.     end
  409.    
  410.     selectCobble()
  411.     turtle.placeDown()
  412.     turtle.select(1)
  413.    
  414.     turtle.turnRight()
  415.     turtle.dig()
  416.     turtle.forward()
  417.     turtle.turnRight()
  418.    
  419.     --7
  420.     for i=1,7 do
  421.         selectCobble()
  422.         turtle.placeDown()
  423.         turtle.select(1)
  424.         turtle.dig()
  425.         turtle.forward()
  426.     end
  427.    
  428.     selectCobble()
  429.     turtle.placeDown()
  430.     turtle.select(1)
  431.    
  432.     turtle.turnLeft()
  433.     turtle.dig()
  434.     turtle.forward()
  435.     turtle.turnLeft()
  436.    
  437.     --8
  438.     for i=1,7 do
  439.         selectCobble()
  440.         turtle.placeDown()
  441.         turtle.select(1)
  442.         turtle.dig()
  443.         turtle.forward()
  444.     end
  445.    
  446.     selectCobble()
  447.     turtle.placeDown()
  448.     turtle.select(1)
  449.    
  450.  
  451.     turtle.turnLeft()
  452.     turtle.forward()
  453.     turtle.forward()
  454.     turtle.forward()
  455.     turtle.forward()
  456.     turtle.forward()
  457.     turtle.forward()
  458.    
  459.     turtle.turnLeft()
  460.     turtle.forward()
  461.    
  462.     --when on top corner of floor build ladder
  463.     turtle.digDown()
  464.     turtle.down()
  465.     turtle.digDown()
  466.     turtle.down()
  467.     turtle.digDown()
  468.     turtle.down()
  469.    
  470.     turtle.turnRight()
  471.    
  472.     turtle.select(13) -- ladderSlot
  473.     turtle.placeDown()
  474.     turtle.up()
  475.     turtle.turnLeft()
  476.     turtle.select(16)
  477.     turtle.forward()
  478.     turtle.forward()
  479.     turtle.forward()
  480.     turtle.forward()
  481.     turtle.forward()
  482.     turtle.turnLeft()
  483.     turtle.forward()
  484.     turtle.forward()
  485.     turtle.forward()
  486.     turtle.forward()
  487.     turtle.place()
  488.     turtle.back()
  489.     turtle.back()
  490.     turtle.back()
  491.     turtle.back()
  492.     turtle.turnRight()
  493.     turtle.back()
  494.     turtle.back()
  495.     turtle.back()
  496.     turtle.back()
  497.     turtle.back()
  498.     turtle.place()
  499.    
  500.     turtle.turnRight()
  501.     turtle.select(13)
  502.     turtle.placeDown()
  503.     turtle.up()
  504.     turtle.placeDown()
  505.     turtle.up()
  506.     turtle.placeDown()
  507.     turtle.up()
  508.     turtle.turnLeft()
  509.     turtle.back()
  510.     turtle.turnLeft()
  511.     turtle.back()
  512.     turtle.back()
  513.     turtle.back()
  514.     turtle.back()
  515.     while turtle.detectDown() == false do
  516.         turtle.down()
  517.     end
  518.    
  519.    
  520.    
  521. end
  522.  
  523. function selectCobble()
  524.     if  turtle.getItemCount(12) == 0 then
  525.         if  turtle.getItemCount(14) == 0 then
  526.             turtle.select(15)
  527.         else
  528.             turtle.select(14)
  529.         end
  530.     else
  531.         turtle.select(12)
  532.     end
  533. end
  534.  
  535. function CraftLadder()
  536.    
  537.     for i=1,4 do
  538.         turtle.turnLeft()
  539.         for i=1,16 do
  540.             turtle.select(i)
  541.             turtle.drop()
  542.         end
  543.         turtle.turnRight()
  544.         turtle.forward()
  545.         turtle.turnRight()
  546.         turtle.forward()
  547.         turtle.forward()
  548.         turtle.turnRight()
  549.         turtle.select(1)
  550.         turtle.suck(4)
  551.         turtle.select(16)
  552.         turtle.craft()
  553.         turtle.turnLeft()
  554.         turtle.forward()
  555.         turtle.forward()
  556.         turtle.turnRight()
  557.         for i=1,16 do
  558.             turtle.select(i)
  559.             turtle.drop()
  560.         end
  561.         turtle.drop()
  562.        
  563.         turtle.select(1)
  564.         turtle.suck(8)
  565.         turtle.select(5)
  566.         turtle.suck(8)
  567.        
  568.         turtle.turnLeft()
  569.         turtle.select(16)
  570.         turtle.craft()
  571.        
  572.         turtle.forward()
  573.         turtle.turnRight()
  574.        
  575.         for i=1,16 do
  576.             turtle.select(i)
  577.             turtle.drop()
  578.         end
  579.         turtle.turnLeft()
  580.         turtle.back()
  581.         turtle.back()
  582.         turtle.back()
  583.         turtle.back()
  584.         turtle.back()
  585.         turtle.turnLeft()
  586.         turtle.back()
  587.     end
  588.    
  589.     turtle.forward()
  590.     turtle.turnRight()
  591.     turtle.forward()
  592.     turtle.forward()
  593.     turtle.forward()
  594.     turtle.forward()
  595.     turtle.forward()
  596.     turtle.turnRight()
  597.     turtle.select(1)
  598.     turtle.suck(18)
  599.     turtle.select(3)
  600.     turtle.suck(18)
  601.     turtle.select(5)
  602.     turtle.suck(18)
  603.     turtle.select(6)
  604.     turtle.suck(18)
  605.     turtle.select(7)
  606.     turtle.suck(18)
  607.     turtle.select(9)
  608.     turtle.suck(18)
  609.     turtle.select(11)
  610.     turtle.suck(18)
  611.    
  612.     turtle.craft()
  613.    
  614.     turtle.turnLeft()
  615.     turtle.forward()
  616.     turtle.forward()
  617.     turtle.turnRight()
  618.     for i=1,16 do
  619.         turtle.select(i)
  620.         turtle.drop()
  621.     end
  622.     turtle.turnLeft()
  623.    
  624.     turtle.back()
  625.     turtle.back()
  626.     turtle.back()
  627.     turtle.back()
  628.     turtle.back()
  629.     turtle.back()
  630.     turtle.back()
  631.     turtle.turnLeft()
  632.     turtle.back()
  633.    
  634. end
  635.  
  636.  
  637. function dumpAll()
  638.     print("Dumping items")
  639.     turtle.turnLeft()
  640.     for i=1,16 do
  641.         turtle.select(i)
  642.         local data = turtle.getItemDetail()
  643.         if data then
  644.             if data.name == "minecraft:cobblestone" then
  645.                 turtle.turnRight()
  646.                 turtle.forward()
  647.                 turtle.turnRight()
  648.                 turtle.forward()
  649.                 turtle.forward()
  650.                 turtle.forward()
  651.                 turtle.turnRight()
  652.                 turtle.drop()
  653.                 turtle.turnLeft()
  654.                 turtle.back()
  655.                 turtle.back()
  656.                 turtle.back()
  657.                 turtle.turnLeft()
  658.                 turtle.back()
  659.                 turtle.turnLeft()
  660.             elseif data.name == "minecraft:coal" then
  661.                 turtle.turnRight()
  662.                 turtle.turnRight()
  663.                 turtle.drop()
  664.                 turtle.turnRight()
  665.                 turtle.turnRight()
  666.             elseif data.name == "minecraft:log" then
  667.                 turtle.turnRight()
  668.                 turtle.forward()
  669.                 turtle.turnRight()
  670.                 turtle.forward()
  671.                 turtle.forward()
  672.                 turtle.turnRight()
  673.                 turtle.drop()
  674.                 turtle.turnLeft()
  675.                 turtle.back()
  676.                 turtle.back()
  677.                 turtle.turnLeft()
  678.                 turtle.back()
  679.                 turtle.turnLeft()
  680.             elseif data.name == "minecraft:torch" then
  681.                 turtle.turnRight()
  682.                 turtle.forward()
  683.                 turtle.turnRight()
  684.                 turtle.forward()
  685.                 turtle.forward()
  686.                 turtle.forward()
  687.                 turtle.forward()
  688.                 turtle.forward()
  689.                 turtle.forward()
  690.                 turtle.turnRight()
  691.                 turtle.drop()
  692.                 turtle.turnLeft()
  693.                 turtle.back()
  694.                 turtle.back()
  695.                 turtle.back()
  696.                 turtle.back()
  697.                 turtle.back()
  698.                 turtle.back()
  699.                 turtle.turnLeft()
  700.                 turtle.back()
  701.                 turtle.turnLeft()
  702.             elseif data.name == "minecraft:ladder" then
  703.                 turtle.turnRight()
  704.                 turtle.forward()
  705.                 turtle.turnRight()
  706.                 turtle.forward()
  707.                 turtle.forward()
  708.                 turtle.forward()
  709.                 turtle.forward()
  710.                 turtle.forward()
  711.                 turtle.forward()
  712.                 turtle.forward()
  713.                 turtle.turnRight()
  714.                 turtle.drop()
  715.                 turtle.turnLeft()
  716.                 turtle.back()
  717.                 turtle.back()
  718.                 turtle.back()
  719.                 turtle.back()
  720.                 turtle.back()
  721.                 turtle.back()
  722.                 turtle.back()
  723.                 turtle.turnLeft()
  724.                 turtle.back()
  725.                 turtle.turnLeft()
  726.             else
  727.                 turtle.drop()
  728.             end
  729.         end
  730.     end
  731.     turtle.turnRight()
  732. end
  733.  
  734. function goUpToFloor(i)
  735.     iii = i*4
  736.     iiii = iii-4
  737.     for ii=1,iiii do
  738.         turtle.select(1)
  739.         turtle.digUp()
  740.         turtle.up()
  741.     end
  742. end
  743.  
  744. function addEntrance()
  745.     turtle.select(1)
  746.     turtle.dig()
  747.     turtle.forward()
  748.     turtle.turnLeft()
  749.     turtle.dig()
  750.     turtle.forward()
  751.     turtle.turnRight()
  752.     turtle.dig()
  753.     turtle.forward()
  754.     turtle.dig()
  755.     turtle.forward()
  756.     turtle.dig()
  757.     turtle.forward()
  758.     turtle.turnRight()
  759.     turtle.dig()
  760.     turtle.digUp()
  761.     turtle.up()
  762.     turtle.dig()
  763.     turtle.digUp()
  764.     turtle.up()
  765.     turtle.down()
  766.     turtle.down()
  767.     turtle.turnLeft()
  768.     turtle.back()
  769.     turtle.back()
  770.     turtle.back()
  771.     turtle.turnLeft()
  772.     turtle.back()
  773.     turtle.turnRight()
  774.     turtle.back()
  775. end
  776.  
  777. function gotoGround()
  778.     goDown = true
  779.     while goDown == true do
  780.         if turtle.detectDown() then
  781.             turtle.down()
  782.         else
  783.             goDown = false
  784.         end
  785.     end
  786. end
  787.  
  788. --Script
  789. print("Turtle Builder By BillBodkin")
  790.  
  791. dumpAll()
  792.  
  793. refuel()
  794.  
  795.  
  796.  
  797. clearGround()
  798.  
  799. for i=1,floors do
  800.     refuel()
  801.     craftTorches()
  802.     CraftLadder()
  803.     getMaterials()
  804.     goUpToFloor(i)
  805.     buildFloor()
  806.     dumpAll()
  807. end
  808.  
  809. addEntrance()
  810.  
  811. dump1to11()
  812.  
  813. print("Finished")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement