Updated the file to support modules.lua and check fuel
The app now checks if it has enough fuel and if not, it asks for more. Additionally it digs everythin in front of it, except for the last block.
This commit is contained in:
parent
58f282e0bf
commit
591b06aa19
@ -1,10 +1,10 @@
|
||||
--[[Tree Farming App by Al Sweigart
|
||||
Plants tree and cuts it down.]]
|
||||
|
||||
os.loadAPI('hare.lua') -- Load the hare module
|
||||
os.loadAPI('modules.lua') -- Load the modules module
|
||||
|
||||
local NUM_OF_TREES = 4
|
||||
local TREE_SAPLING = 'spruce'
|
||||
local TREE_SAPLING = 'oak'
|
||||
|
||||
-- Check if choptree program exists
|
||||
if not fs.exists('choptree.lua') then
|
||||
@ -14,11 +14,10 @@ end
|
||||
while true do
|
||||
-- First of all, wait a few minutes
|
||||
os.sleep(300)
|
||||
-- Check if turtle has enough fuel
|
||||
if turtle.getFuelLevel() < (2 * (3 * NUM_OF_TREES)) then
|
||||
hare.selectItem('minecraft:' .. TREE_SAPLING .. 'log')
|
||||
turtle.refuel(2)
|
||||
end
|
||||
|
||||
-- Sort all Items together
|
||||
modules.sort_items()
|
||||
|
||||
|
||||
-- Empty everything except for the saplings
|
||||
for i = 1, 16 do
|
||||
@ -32,19 +31,25 @@ while true do
|
||||
|
||||
|
||||
-- Check if we have saplings in our inventory
|
||||
if not hare.selectItem('minecraft:' .. TREE_SAPLING .. '_sapling') then
|
||||
if not modules.select_item('minecraft:' .. TREE_SAPLING .. '_sapling') then
|
||||
error('Out of ' .. TREE_SAPLING .. ' saplings')
|
||||
end
|
||||
|
||||
-- Build a Loop, where we plant and cut trees
|
||||
turtle.turnLeft()
|
||||
turtle.turnLeft()
|
||||
for i = 1, NUM_OF_TREES do
|
||||
turtle.back()
|
||||
turtle.back()
|
||||
turtle.back()
|
||||
turtle.turnRight()
|
||||
for j = 1, 3 do
|
||||
check_fuel()
|
||||
if i ~= 3 * NUM_OF_TREES then
|
||||
turtle.dig()
|
||||
end
|
||||
turtle.forward()
|
||||
end
|
||||
turtle.turnLeft()
|
||||
blockExists, item = turtle.inspect()
|
||||
if blockExists and item['name'] == 'minecraft:' .. TREE_SAPLING .. '_log' then
|
||||
hare.selectEmtySlot()
|
||||
modules.selectEmptySlot()
|
||||
shell.run('choptree.lua') -- Run Choptree
|
||||
elseif blockExists and item['name'] ~= 'minecraft:' .. TREE_SAPLING .. '_sapling' then
|
||||
print('Error! Wrong block')
|
||||
@ -56,16 +61,22 @@ while true do
|
||||
turtle.back()
|
||||
else
|
||||
turtle.back()
|
||||
hare.selectItem('minecraft:' .. TREE_SAPLING .. '_sapling')
|
||||
modules.selectItem('minecraft:' .. TREE_SAPLING .. '_sapling')
|
||||
turtle.place()
|
||||
end
|
||||
end
|
||||
turtle.turnLeft()
|
||||
turtle.turnRight()
|
||||
end
|
||||
|
||||
-- Move forward to the chest again
|
||||
turtle.turnLeft()
|
||||
turtle.turnLeft()
|
||||
for i = 1, (3 * NUM_OF_TREES) do
|
||||
turtle.forward()
|
||||
check_fuel()
|
||||
if i ~= 3 * NUM_OF_TREES then
|
||||
turtle.dig()
|
||||
end
|
||||
turtle.foward()
|
||||
end
|
||||
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user