Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local depth = 0
- local pile = 2
- local function tryDown()
- if not turtle.down() then
- if not turtle.digDown() then
- return false
- end
- if not turtle.down() then
- return false
- end
- end
- depth = depth + 1
- return true
- end
- local function tryUp()
- if not turtle.up() then
- if not turtle.digUp() then
- return false
- end
- if not turtle.up() then
- return false
- end
- end
- depth = depth - 1
- return true
- end
- local function tryForward()
- if not turtle.forward() then
- if not turtle.dig() then
- return false
- end
- if not turtle.forward() then
- return false
- end
- end
- return true
- end
- local function tryBack()
- if not turtle.back() then
- turtle.turnLeft()
- turtle.turnLeft()
- if not turtle.dig() then
- turtle.turnLeft()
- turtle.turnLeft()
- return false
- end
- turtle.turnLeft()
- turtle.turnLeft()
- if not turtle.back() then
- return false
- end
- end
- return true
- end
- local function getResources()
- return turtle.getItemCount(2)+turtle.getItemCount(3)+turtle.getItemCount(4)+turtle.getItemCount(5)+turtle.getItemCount(6) - 5
- end
- local function diveForResources()
- if getResources() > 64 * 3 then
- return false
- end
- while tryDown() do
- end
- while depth > 0 do
- tryUp()
- if depth < 3 and turtle.getItemCount(1) > 1 then
- turtle.select(1)
- turtle.placeDown()
- end
- end
- return true
- end
- local function towerLayer()
- turtle.select(pile)
- while turtle.getItemCount(pile) <= 10 do
- pile = pile + 1
- turtle.select(pile)
- end
- if (pile > 6) then
- return false
- end
- tryForward()
- for n = 1,4 do
- turtle.place()
- turtle.turnRight()
- tryForward()
- turtle.place()
- turtle.turnLeft()
- turtle.place()
- tryBack()
- turtle.turnRight()
- end
- tryBack()
- return true;
- end
- local function createTower()
- diveForResources()
- for n = 1,4 do
- tryForward()
- diveForResources()
- turtle.back()
- turtle.turnRight()
- end
- pile = 2
- while towerLayer() do
- tryUp()
- end
- while depth > 0 do
- tryDown()
- end
- end
- createTower();
Add Comment
Please, Sign In to add comment