Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Quarry Script for CC: Tweaked Turtle
- -- Get user input
- print("Enter length (forward):")
- local length = tonumber(read())
- print("Enter width (right):")
- local width = tonumber(read())
- print("Enter height (up):")
- local height = tonumber(read())
- -- Basic dig + move forward
- function forward()
- while turtle.detect() do
- turtle.dig()
- sleep(0.2)
- end
- turtle.forward()
- end
- -- Dig up if needed
- function digUp()
- while turtle.detectUp() do
- turtle.digUp()
- sleep(0.2)
- end
- end
- -- Dig down if needed
- function digDown()
- while turtle.detectDown() do
- turtle.digDown()
- sleep(0.2)
- end
- end
- -- Turn helpers
- function turnRight()
- turtle.turnRight()
- end
- function turnLeft()
- turtle.turnLeft()
- end
- -- Mine one layer (2D area)
- function mineLayer()
- for w = 1, width do
- for l = 1, length - 1 do
- digUp()
- digDown()
- forward()
- end
- -- Move to next row
- if w < width then
- if w % 2 == 1 then
- turnRight()
- digUp()
- digDown()
- forward()
- turnRight()
- else
- turnLeft()
- digUp()
- digDown()
- forward()
- turnLeft()
- end
- end
- end
- -- Return to starting side of layer
- if width % 2 == 1 then
- turnRight()
- for i = 1, width - 1 do
- forward()
- end
- turnRight()
- else
- turnLeft()
- for i = 1, width - 1 do
- forward()
- end
- turnLeft()
- end
- -- Go back to starting corner of the layer
- turnLeft()
- for i = 1, length - 1 do
- forward()
- end
- turnLeft()
- end
- -- Main loop (height layers)
- for h = 1, height do
- mineLayer()
- if h < height then
- digUp()
- turtle.up()
- end
- end
- print("Mining complete!")
Advertisement
Add Comment
Please, Sign In to add comment