Advertisement
Guest User

Tunnel.lua

a guest
Jun 19th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.67 KB | None | 0 0
  1. fd   = turtle.forward
  2. t    = turtle
  3. L    = turtle.turnLeft
  4. R    = turtle.turnRight
  5. up   = turtle.up
  6. down = turtle.down
  7. start_legth = 0
  8. wave = 0
  9.  
  10. function dig()
  11.  while turtle.detect() do
  12.   turtle.dig()
  13.  end
  14. end
  15.  
  16. function digDown()
  17.   turtle.digDown()
  18.  end
  19.  
  20. function Ndig()
  21.  dig()
  22.  digDown()
  23. end
  24.  
  25. function DFd()
  26.  for i = 1, 3 do
  27.   Ndig()
  28.   fd()
  29.  end
  30. end
  31.  
  32. function search_torch()
  33.  for i = 1, 16 do
  34.   turtle.select(i)
  35.   local item = t.getItemDetail(i)
  36.   if item then
  37.    if item.name == "minecraft:torch" then
  38.     turtle.transferTo(1)
  39.    end
  40.   end
  41.  end
  42. end
  43. function search_torch_konsekvens()
  44.  turtle.select(1)
  45.  local Item = turtle.getItemDetail()
  46.  if Item.count <= 2 * wave then
  47.   print("You haven't got ".. tostring(Iten.count).. "torches, but you need ".. tostring(2 * wave))
  48.   write("Do you want to carry on (y/N)")
  49.   local answer = read()
  50.   if string.lower(answer) == "n" or answer == "" then
  51.    return false
  52.   end
  53.  end
  54. end
  55.  
  56.  
  57. function refuel()
  58.  local fuel = t.getFuelLevel()
  59.  if fuel <= 1000 then
  60.   for i = 1, 16 do
  61.    t.select(i)
  62.    local item = t.getItemDetail()
  63.    if item.name == "minecraft:coal" then
  64.     local how_much = (2000 - fuel)/80
  65.     if item.count >= how_much then
  66.      t.refuel(how_much)
  67.      return true
  68.     else
  69.      t.refuel(item.count)
  70.      return false
  71.     end
  72.    end
  73.   end
  74.  else
  75.   return true
  76.  end
  77. end
  78.  
  79. print("I will refuel my self with everything in my inventory in")
  80. for i = 10, 1, -1 do
  81.  print(i, "seconds")
  82.  sleep(1)
  83. end
  84. shell.run("refuel", "all")
  85. f = t.getFuelLevel()
  86. if f <= 1000 then
  87.  write("your fuelLevel is under 1000, do you want to carry on? (y/N)    ")
  88.  answer = read()
  89.  if string.lower(answer) == "n" or answer == "" then
  90.   return false
  91.  end
  92. end
  93.  
  94. search_torch()
  95. search_torch_konsekvens()
  96.  
  97. write("How many 30 legth do you want to mine?   ")
  98. wave = read()
  99. wave = tonumber(wave)
  100. varv = 0
  101.  
  102. while t.detect() == false do
  103.  fd()
  104.  start_legth = start_legth + 1
  105. end
  106. for i = 1, wave do
  107.  for n = 1, 30 do
  108.   print(n)
  109.   dig()
  110.   fd()
  111.   R()
  112.   DFd()
  113.   digDown()
  114.   t.down()
  115.   digDown()
  116.   if n % 15 == 0 then
  117.    L()
  118.    dig()
  119.    R()
  120.    t.down()
  121.    t.select(1)
  122.    t.placeUp()
  123.   else
  124.    t.down()
  125.   end
  126.   L()
  127.   L()
  128.   DFd()
  129.   digDown()
  130.   t.up()
  131.   t.up()
  132.   R()
  133.  end
  134.  R()
  135.  R()
  136.  varv = varv + 1
  137.  for a = 1, (30 * varv) + 1 + start_legth do
  138.   fd()
  139.  end
  140.  for p = 2, 16 do
  141.   t.select(p)
  142.   t.drop()
  143.  end
  144.  if not varv == wave then
  145.   local fuel = refuel()
  146.   if fuel == false then
  147.    local fuelLevel = t.getFuelLevel()
  148.    print("low fuel level! "..tostring(fuelLevel))
  149.   end
  150.   R()
  151.   R()
  152.   for p = 1, (30 * varv) + 1 + start_legth do
  153.    fd()
  154.   end
  155.  else
  156.   break
  157.  end
  158. end
  159. L()
  160. L()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement