View difference between Paste ID: cLKs1GqH and 9ZuVqjP2
SHOW: | | - or go back to the newest paste.
1
function f(loc)
2
 while not turtle[loc]() do
3
  sleep(0.5)
4
 end
5
end
6
function up() f("up") end
7
function down() f("down") end
8
function fw() f("forward") end
9
function back() f("back") end
10
function l() f("turnLeft") end
11
function r() f("turnRight") end
12
function d() turtle.dig() end
13
function du() turtle.digUp() end
14
function dd() turtle.digDown() end
15
function c(x)
16
for i=1,x do d() fw() du() dd() end
17
end
18
19
function makeTree()
20
        if turtle.getItemCount(1)==0 then
21
	print("Not enough Saplings.")
22
	return
23
	end
24
25
        if turtle.getItemCount(2)==0 then
26
	print("Not enough BoneMeal.")
27
	return
28
	end
29
turtle.select(1)
30
turtle.place()
31
sleep(1)
32
turtle.select(2)
33
turtle.place()
34
sleep(1)
35
end
36
37
38
function fuel()
39
	if turtle.getFuelLevel() <= 10 then
40
		turtle.select(16)
41
		turtle.refuel(1)
42
	print("Fuel less than 10, refueling.")
43
	sleep(2)
44
	return
45
	elseif turtle.getFuelLevel() == "unlimited" then
46
        print("This turtle does not use fuel to move")
47
	sleep(2)
48
        return
49
end
50
end
51-
	fuel()
51+
52-
print("Cutting Tree.")
52+
53
print("Resetting position.")
54-
        turtle.dig()
54+
55-
        turtle.forward()
55+
56-
        y=1
56+
57-
        while y==1 do
57+
58
                turtle.down()
59-
                turtle.digUp()
59+
60-
                turtle.up()
60+
61-
                if turtle.detectUp()==false then
61+
62-
                        y=0
62+
63
        turtle.back()
64
end
65
66-
resetPos()
66+
--function cutTree()
67
--	sleep(2)
68
69
--	fuel()
70
--print("Cutting Tree.")
71
--	sleep(2)
72
--        turtle.dig()
73
--        turtle.forward()
74
--        y=1
75
--        while y==1 do
76
--		fuel()
77
--                turtle.digUp()
78
--                turtle.up()
79
--                if turtle.detectUp()==false then
80
--                        y=0
81
--                end
82
--       end
83
--
84
--resetPos()
85
--end
86
 
87
function cutTree()
88
print("tree cut")
89
hi = 0
90
while not turtle.detectUp() do
91
up() hi=hi+1
92
end
93
du() up() du() up() du() l() l()
94
c(1) r() c(2) r() c(4) r() c(4) r()
95
c(4) r() c(1) r() c(3) l() c(2) l()
96
c(2) back() l() c(1) l() down()
97
for r=1,hi do dd() down() end
98
dd() turtle.placeDown() back()
99
down() down()
100
print(hi)
101
end
102
103
function checkMats()
104
        -- Checking saplings slot
105
print("Checking for mats.")
106
	sleep(2)
107
        if turtle.getItemCount(1)==0 then
108
	print("Not enough Saplings.")
109
                s=1
110
                turtle.turnLeft()
111
                turtle.select(1)
112
                turtle.suck()
113
                turtle.turnRight()
114
                if turtle.getItemCount(1)>0 then
115
                        s=0
116
                end
117
        end
118
       
119
        -- Checking bonemeal slot
120
        if turtle.getItemCount(2)==0 then
121
	print("Not enough bonemeal.")
122
                turtle.turnLeft()
123
                turtle.turnLeft()
124
                turtle.select(1)
125
                turtle.suck()
126
                turtle.turnRight()
127
                turtle.turnRight()
128
        end
129
130
        -- Checking fuel slot
131
        if turtle.getItemCount(16)<=10 then
132
	print("Not enough Fuel.")
133
                turtle.turnRight()
134
                turtle.select(1)
135
                turtle.suck()
136
                turtle.turnLeft()
137
        end
138
139
140
141
end
142
143
function checkStop()
144
        if s==0         then
145
                shell.exit()
146
        end
147
end
148
149
function ConsolidateMats()
150
turtle.turnLeft()
151
	print("Consolidating saplings.")
152
for i=3,15 do
153
turtle.select(i)
154
155
if turtle.compareTo(1) then -- It's a sapling not in slot one
156
turtle.drop() -- put it in the chest to our left
157
end
158
end
159
turtle.turnRight()
160
161
	print("Sending all other mats to processing.")
162
	sleep(2)
163
for i=3,15 do
164
turtle.select(i)
165
turtle.dropDown()
166
end
167
end
168
169
while true do
170
fuel()
171
makeTree()
172
checkMats()
173
cutTree()
174
ConsolidateMats()
175
checkStop()
176
end