Advertisement
Bendix

Chunk-Schacht

May 2nd, 2016
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.58 KB | None | 0 0
  1. --Grรคbt einen Schacht der 16 weit und 16 breit ist bis zum Bedrock
  2.  
  3. print("in 1 den Treibstoff")
  4. print("in 2 die Fackeln")
  5.  
  6. weit = 16
  7. --breit nur die haelfte da immer vor und zurueck
  8. breit = 8
  9. --print("wie tief?")
  10. --hoch = io.read()
  11. local tief=0
  12. local bedrock = "minecraft:bedrock"
  13. local maxerreicht  = false
  14.  
  15.  
  16. function inspectDown()
  17.    local successDown, dataDown = turtle.inspectDown()
  18.    --if successDown then print("Unten:", dataDown.name) end
  19.    return dataDown.name
  20. end
  21. function inspectUp()
  22.    local successUp, dataUp = turtle.inspectUp()
  23.    --if successUp then print("Oben:", dataUp.name) end
  24.    return dataUp.name
  25. end
  26. function inspectFront()
  27.    local successFront, dataFront =  turtle.inspect()
  28.    --if successFront then print("Vorne:", dataFront.name) end
  29.    return dataFront.name
  30. end
  31.  
  32. function inspect()
  33.    inspectUp()
  34.    inspectDown()
  35.    inspectFront()
  36. end
  37.  
  38. function digUp()
  39.    ergebnis = inspectUp()
  40.    if turtle.getItemCount(16) == 0 then
  41.       if ergebnis == "minecraft:stone" or ergebnis== "minecraft:dirt" or ergebnis=="minecraft:cobblestone" or ergebnis=="minecraft:gravel" or ergebnis=="minecraft:gras"  then
  42.          turtle.select(16)
  43.          while turtle.detectUp() == true do
  44.             turtle.digUp()
  45.             turtle.attack()
  46.             sleep(0.5)
  47.             turtle.drop()
  48.          end
  49.          turtle.drop()
  50.       else
  51.          turtle.select(3)
  52.          turtle.digUp()
  53.       end
  54.    end
  55. end
  56.  
  57. function digFront()
  58.    ergebnis = inspectFront()
  59.    if turtle.getItemCount(16) == 0 then
  60.       if ergebnis == "minecraft:stone" or ergebnis== "minecraft:dirt" or ergebnis=="minecraft:cobblestone" or ergebnis=="minecraft:gravel" or ergebnis == "minecraft:gras" then
  61.          turtle.select(16)
  62.          while turtle.detect() == true do
  63.             turtle.dig()
  64.             turtle.attack()
  65.             sleep(0.5)
  66.             turtle.drop()
  67.          end
  68.          turtle.drop()
  69.       else
  70.          turtle.select(3)
  71.          turtle.dig()
  72.       end
  73.    end
  74. end
  75.  
  76. function digDown()
  77.    ergebnis = inspectDown()
  78.    if turtle.getItemCount(16) == 0 then
  79.       if ergebnis == "minecraft:stone" or ergebnis== "minecraft:dirt" or ergebnis=="minecraft:cobblestone" or ergebnis=="minecraft:gravel" or ergebnis=="minecraft:gras" then
  80.          turtle.select(16)
  81.          while turtle.detectDown() == true do
  82.             turtle.digDown()
  83.             turtle.attack()
  84.             sleep(0.5)
  85.             turtle.drop()
  86.          end
  87.          turtle.drop()
  88.       else
  89.          Fackel = inspectDown()
  90.          if Fackel ~= "minecraft:torch" then
  91.             turtle.select(3)
  92.             turtle.digDown()
  93.          end
  94.       end
  95.    end
  96. end
  97.  
  98.  
  99. function digDown2()
  100.    ergebnis = inspectDown()
  101.    if turtle.getItemCount(16) == 0 then
  102.       if ergebnis == "minecraft:stone" or ergebnis== "minecraft:dirt" or ergebnis=="minecraft:cobblestone" or ergebnis=="minecraft:gravel" or ergebnis== "minecraft:gras" then
  103.          turtle.select(16)
  104.          while turtle.detectDown() == true do
  105.             turtle.digDown()
  106.             turtle.attack()
  107.             sleep(0.5)
  108.             turtle.drop()
  109.          end
  110.          turtle.drop()
  111.       else
  112.          Fackel = inspectDown()
  113.          if Fackel ~= "minecraft:torch" then
  114.             turtle.select(3)
  115.             turtle.digDown()
  116.          end
  117.       end
  118.    end
  119. end
  120.  
  121.  
  122. if turtle.getItemCount(16) ~= 0 then turtle.select(16) turtle.drop() end
  123.  
  124. function fuel()
  125.    while turtle.getFuelLevel() < 5000 do
  126.       turtle.select(1)
  127.       turtle.refuel(1)
  128.       print(turtle.getFuelLevel())
  129.    end
  130. end
  131. function forward()
  132.    while turtle.forward() == false do
  133.       digFront()
  134.       turtle.attack()
  135.    end
  136. end
  137. function down()
  138.    while turtle.down() == false do
  139.    end
  140.    tief=tief+1
  141. end
  142. function up()
  143.    while turtle.up() == false do
  144.    end
  145.    tief=tief-1
  146. end
  147.  
  148. function unload()
  149.    for x=3,16 do
  150.       turtle.select(x)
  151.       turtle.dropDown()
  152.    end
  153.    fuel()
  154. end
  155.  
  156. function torch()
  157.    turtle.select(2)
  158.    turtle.placeDown()
  159.    print("torch")
  160. end
  161.  
  162. fuel()
  163.  
  164. forward()
  165. down()
  166. digDown2()
  167. down()
  168. digDown2()
  169. down()
  170. loops = 0
  171. while false == false do
  172.    fuel()
  173.    loops=loops+1
  174.    for x=1,breit do
  175.       for y=1,weit do
  176.          digFront()
  177.          forward()
  178.          digUp()
  179.          untergrund = inspectDown()
  180.          if untergrund ~= bedrock then
  181.             digDown()
  182.          end
  183.       end
  184.       turtle.turnRight()
  185.       digFront()
  186.       forward()
  187.       digUp()
  188.       digDown()
  189.       turtle.turnRight()
  190.       for y=1,weit do
  191.          digFront()
  192.          forward()
  193.          digUp()
  194.          digDown()
  195.       end
  196.       if x ~= breit then
  197.          print( "x liegt bei", x)
  198.          turtle.turnLeft()
  199.          digFront()
  200.          forward()
  201.          digUp()
  202.          turtle.turnLeft()
  203.          untergrund = inspectDown()
  204.          if untergrund ~= bedrock then
  205.             digDown()
  206.          end
  207.       else
  208.          maxerreicht = true
  209.          turtle.turnRight()
  210.          print ("wir haben bedrock erreicht")
  211.       end
  212.    end
  213.    for x=1,breit*2-1 do
  214.       forward()
  215.    end
  216.    turtle.turnLeft()
  217.    wiederhoch = tief
  218.    print(tief, " felder tief")
  219.    for z=1,wiederhoch do
  220.       up()
  221.       print("gehe", wiederhoch)
  222.    end
  223.    forward()
  224.    unload()
  225.    turtle.turnLeft()
  226.    turtle.turnLeft()
  227.    if maxerreicht ~= true then
  228.    else
  229.    print("max nicht erreicht")
  230.       turtle.forward()
  231.       wiederrunter = wiederhoch
  232.       for z=1,wiederrunter do
  233.          down()
  234.       end
  235.    end
  236.    digDown2()
  237.    down()
  238.    digDown2()
  239.    down()
  240.    digDown2()
  241.    down()
  242. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement