Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local function is_number(a)
- if type(a) == "number" then
- return true
- end
- return false
- end
- local function init()
- if #Args == 0 or #Args == nil then
- print("No starting parameters added!\n")
- print("--down <value> | Default: " .. Down)
- print("--width <value> | Default: " .. Width)
- print("--length <value> | Default: " .. Length)
- print("\n\n Do you still want to start the Turtle with default values?\n\t- Enter: y or n")
- local input = tostring(read() or "")
- if input == nil or input:lower() ~= "y" then
- shutdown()
- end
- end
- for i = 1, #Args, 2 do
- if Args[i]:lower() == "--down" then
- if not is_number(Args[i]) then
- print("value for down is not a number, default: " .. Down .. "\n")
- break
- end
- Down = tonumber(Args[i + 1])
- elseif Args[i]:lower() == "--length" then
- if not is_number(Args[i]) then
- print("value for length is not a number, default: " .. Length .. "\n")
- break
- end
- Length = tonumber(Args[i + 1])
- elseif Args[i]:lower() == "--width" then
- if not is_number(Args[i]) then
- print("value for width is not a number, default: " .. Width .. "\n")
- break
- end
- Width = tonumber(Args[i + 1])
- end
- end
- end
- local function next_layer()
- while not turtle.down() do
- turtle.digDown()
- end
- turtle.turnLeft()
- end
- local function dig_width()
- for i = 1, Width, 1 do
- while not turtle.forward() do
- turtle.dig()
- end
- end
- turtle.turnLeft()
- turtle.turnLeft()
- for i = 1, Width, 1 do
- while not turtle.forward() do
- turtle.dig()
- end
- end
- turtle.turnLeft()
- end
- local function next_line()
- while not turtle.forward() do
- turtle.dig()
- end
- turtle.turnLeft()
- end
- local function reset_turtle()
- turtle.turnLeft()
- turtle.turnLeft()
- for i = 1, Length - 1, 1 do
- while not turtle.forward() do
- turtle.dig()
- end
- end
- turtle.turnLeft()
- turtle.turnLeft()
- end
- local function start()
- for i = 1, Down, 1 do
- term.clear()
- print("Current Layer: " .. i)
- next_layer()
- for e = 1, Length, 1 do
- dig_width()
- if e ~= Length then
- next_line()
- end
- end
- reset_turtle()
- end
- end
- Args = {...}
- Down = 3
- Length = 10
- Width = 10
- init()
- start()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement