View difference between Paste ID: AqaLY1Hv and Q9HVUfjP
SHOW: | | - or go back to the newest paste.
1
term.clear()
2
term.setCursorPos(1,1)
3
4
---Donnees----
5
write("Nombre de ligne optimisee: ")
6
p=read()
7
n=p*3
8
write("Longueur ligne: ")
9
v=read()
10
r=p-1
11
itemcount = turtle.getItemCount(16)
12
fuelLevel = turtle.getFuelLevel()
13
14
---Fonctions---
15
16
function tunnel()
17
18
turtle.dig()
19-
  turtle.forward()
19+
  move("forward")
20
turtle.digUp()
21
turtle.digDown()
22
  turtle.turnRight()
23
turtle.dig()
24-
  turtle.forward()
24+
  move("forward")
25
turtle.digUp()
26
turtle.digDown()
27
  turtle.turnLeft()
28
  turtle.turnLeft()
29-
  turtle.forward()
29+
  move("forward")
30
turtle.dig()
31
turtle.dig()
32-
  turtle.forward()
32+
  move("forward")
33
turtle.digUp()
34
turtle.digDown()
35
  turtle.turnRight()
36
  turtle.turnRight()
37-
  turtle.forward()
37+
  move("forward")
38
  turtle.turnLeft()
39
end
40
41
function ligne()
42
43
turtle.dig()
44-
  turtle.forward()
44+
  move("forward")
45
turtle.digUp()
46
turtle.digDown()
47
end
48
49-
function fuel()
49+
function fuel() -- Fonction de vérification du niveau de carburant et réapprovisionnement si besoin
50
        turtle.select(1)
51-
write("Fuel Level")
51+
        while fuelLevel() < 200 do -- 200 est une valeur de sécurité estimée, elle peut être modifiée si besoin
52-
print(fuelLevel)
52+
                turtle.refuel(1)
53-
if fuelLevel < 200 then
53+
			if not print("Fuel OK")
54-
turtle.refuel(4)
54+
                end
55-
else
55+
        end
56-
print("Fuel Level OK")
56+
        turtle.select(2)
57
      end
58
59
function quarry()
60
61
for y=0,v do
62
ligne()
63
end
64
fuel()
65
turtle.turnLeft()
66
turtle.turnLeft()
67
68
for y=0,v do
69
  move("forward")
70-
  turtle.forward()
70+
71
vidage()
72
turtle.turnRight()
73
move("forward")
74-
turtle.forward()
74+
move("forward")
75-
turtle.forward()
75+
move("forward")
76-
turtle.forward()
76+
77
end
78
79
function vidage()
80
sleep(5)
81
turtle.select(2)
82
  for o=1,15 do
83
  turtle.select(o)
84
  turtle.drop()
85
end
86
turtle.select(1)
87
end
88
89
function move(direction)
90-
---Programme---
90+
        while true do
91
                if direction == "forward" then
92
                        if turtle.detect() then
93
                                turtle.dig()
94
                        else
95
                                if turtle.forward() then
96
                                         return true
97-
turtle.forward()
97+
                                else
98
                                        turtle.attack()
99-
turtle.forward()
99+
                                end
100
                        end
101
                elseif direction == "up" then
102
                        if turtle.digUp() then
103
                                os.sleep(0.4)
104
                        else
105
                                if turtle.up() then
106
                                        return true
107
                                else
108
                                        turtle.attackUp()
109-
 turtle.forward()
109+
                                end
110
                        end
111
                    end
112
             end
113-
turtle.forward()
113+
114-
turtle.forward()
114+
						---Programme---
115-
turtle.forward()
115+
116
for i=0,n do
117
tunnel()
118-
  
118+
119
turtle.turnLeft()
120
turtle.turnLeft()
121
move("forward")
122
turtle.turnRight()
123
move("forward")
124
125
for u=0,r do
126-
turtle.forward()
126+
127
ligne()
128
end
129-
  turtle.forward()
129+
130-
  turtle.forward()
130+
131
turtle.turnLeft()
132
 for y=0,v do
133
 move("forward")
134
end
135
 vidage()
136
turtle.turnRight()
137
move("forward")
138
move("forward")
139
move("forward")
140-
turtle.forward()
140+
141
end  
142
 
143
  for y=0,v do
144-
 turtle.forward()
144+
145-
 turtle.forward()
145+
146-
 turtle.forward()
146+
147
turtle.turnLeft()
148
turtle.turnLeft()
149
 for y=0,v do
150
move("forward")
151
end
152
 vidage()
153
  move("forward")
154
 move("forward")
155
 
156
for u=0,r do
157-
turtle.forward()
157+
158
ligne()
159
end
160
 fuel()
161-
turtle.forward()
161+
162
turtle.turnLeft()
163
 for y=0,v do
164
move("forward")
165-
  turtle.forward()
165+
166
turtle.turnRight()
167
 move("forward")
168
 move("forward")
169
 move("forward")
170
 turtle.turnRight()
171
end
172
 
173
for y=0,v do
174
ligne()
175
end
176
 fuel()
177
turtle.turnLeft()
178
turtle.turnLeft()
179
 for y=0,v do
180
move("forward")
181
end
182
 vidage()
183
  fuel()
184
move("forward")
185
turtle.turnLeft()
186
187
 for i=0,n do
188
  move("forward")
189
end
190
print("Fin cycle")
191
print("Bon Minage!")