Computercraft/src/main/programs/turtle-treeFarmer.lua
2024-06-02 16:23:35 +02:00

76 lines
1.4 KiB
Lua

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()