woodList = { [0] = "minecraft:oak_log", [1] = "minecraft:dark_oak_log", [2] = "minecraft:spruce_log", } local function isWood(blockData) for i=0, #woodList do if blockData["name"] == woodList[i] then return true end end return false end local function recursiveTreeFarming() for i=0, 3 do turtle.turnLeft() blockFound, blockData = turtle.inspect() if isWood(blockData) then turtle.dig() turtle.forward() recursiveTreeFarming() turtle.back() end end blockFound, blockData = turtle.inspectUp() if isWood(blockData) then turtle.digUp() turtle.up() recursiveTreeFarming() turtle.down() end blockFound, blockData = turtle.inspectDown() if isWood(blockData) then turtle.digDown() turtle.down() recursiveTreeFarming() turtle.up() end end local function placeTree() for i=1, 16 do turtle.select(i) local itemDetail = turtle.getItemDetail() if itemDetail ~= nil then if itemDetail.name == "minecraft:oak_sapling" then local blockFound, blockData = turtle.inspect() if not blockFound then turtle.place() end end end end end function main() while true do blockFound, blockData = turtle.inspect() if isWood(blockData) then recursiveTreeFarming() sleep(1) placeTree() end sleep(10) print("waiting...") end end main()