SHOW:
|
|
- or go back to the newest paste.
1 | rednet.open("right") | |
2 | ||
3 | function Puntaje() | |
4 | beeTable["Industrious"] = 31 | |
5 | beeTable["Imperial"] = 30 | |
6 | beeTable["Unweary"] = 21 | |
7 | beeTable["Majestic"] = 20 | |
8 | beeTable["Diligent"] = 11 | |
9 | beeTable["Noble"] = 10 | |
10 | beeTable["Cultivated"] = 6 | |
11 | beeTable["Common"] = 5 | |
12 | beeTable["Forest"] = 1 | |
13 | beeTable["Meadows"] = 1 | |
14 | end | |
15 | ||
16 | function agarroBee(pos) | |
17 | turtle.up() | |
18 | turtle.forward() | |
19 | turtle.forward() | |
20 | turtle.turnRight() | |
21 | for i = 1,pos do | |
22 | turtle.forward() | |
23 | end | |
24 | turtle.turnLeft() | |
25 | ||
26 | for i = 1,6 do | |
27 | if turtle.suck() then | |
28 | contarBees = contarBees + 1 | |
29 | end | |
30 | end | |
31 | end | |
32 | ||
33 | function buscoCombs(pos) | |
34 | checkCombs = 0 | |
35 | for i = 1,6 do | |
36 | turtle.select(i) | |
37 | for j = 16, 16 do | |
38 | if turtle.compareTo(j) then | |
39 | rednet.send(45, "Encontre Combs!\n") | |
40 | print("Encontre Combs!") | |
41 | if checkCombs == 0 then | |
42 | turtle.turnRight() | |
43 | turtle.down() | |
44 | temp = 8 - pos | |
45 | for h = 1,temp do | |
46 | turtle.forward() | |
47 | end | |
48 | turtle.turnLeft() | |
49 | turtle.forward() | |
50 | turtle.forward() | |
51 | checkCombs = 1 | |
52 | end | |
53 | turtle.drop() | |
54 | turtle.select(contarBees) | |
55 | turtle.transferTo(i, 1) | |
56 | contarBees = contarBees - 1 | |
57 | end | |
58 | end | |
59 | end | |
60 | end | |
61 | ||
62 | function scanBees(pos) | |
63 | if checkCombs == 1 then | |
64 | turtle.turnLeft() | |
65 | turtle.turnLeft() | |
66 | turtle.up() | |
67 | turtle.forward() | |
68 | else | |
69 | turtle.turnRight() | |
70 | temp = 7 - pos | |
71 | for i = 1,temp do | |
72 | turtle.forward() | |
73 | end | |
74 | turtle.turnLeft() | |
75 | turtle.forward() | |
76 | turtle.turnRight() | |
77 | turtle.forward() | |
78 | turtle.turnRight() | |
79 | end | |
80 | ||
81 | ||
82 | for i = 1, contarBees do | |
83 | turtle.select(i) | |
84 | turtle.drop() | |
85 | end | |
86 | turtle.down() | |
87 | turtle.forward() | |
88 | - | rednet.send(45, "Esperando 30 segundos mientras escane la primera abeja...\n") |
88 | + | rednet.send(45, "\nEsperando 30 segundos mientras escane la primera abeja...\n") |
89 | - | print("Esperando 30 segundos mientras escanea Bees") |
89 | + | |
90 | end | |
91 | ||
92 | ||
93 | function determineBest(slot) | |
94 | score = beeTable[data["speciesPrimary"]] + beeTable[data["speciesSecondary"]] | |
95 | rednet.send(45, "Actual: "..currScore) | |
96 | - | rednet.send(45, "-------------------------") |
96 | + | |
97 | print("Actual: "..currScore) | |
98 | print("Nuevo Puntaje: "..score) | |
99 | if(bestDrone == 0) then | |
100 | bestDrone = slot | |
101 | currScore = score | |
102 | else | |
103 | if (score > currScore) then | |
104 | bestDrone = slot | |
105 | currScore = score | |
106 | end | |
107 | end | |
108 | end | |
109 | ||
110 | ||
111 | function analyzeBees() | |
112 | for i = 1, contarBees do | |
113 | turtle.select(i) | |
114 | turtle.suckUp() | |
115 | turtle.drop() | |
116 | m = peripheral.wrap("front") | |
117 | data = m.analyze() | |
118 | rednet.send(45, "\n-------------------------") | |
119 | if (data["type"] == "princess") then | |
120 | princess = i | |
121 | rednet.send(45, "Princesa = "..i) | |
122 | print("Princesa = "..i) | |
123 | else | |
124 | determineBest(i) | |
125 | end | |
126 | rednet.send(45, data["speciesPrimary"]..":"..data["speciesSecondary"]) | |
127 | rednet.send(45, "Mejor Drone = "..bestDrone) | |
128 | print(data["speciesPrimary"]..":"..data["speciesSecondary"]) | |
129 | - | rednet.send(46, data["speciesPrimary"]..":"..data["speciesSecondary"]) |
129 | + | |
130 | - | rednet.send(46, "Mejor Drone = "..bestDrone) |
130 | + | |
131 | rednet.send(45, "-------------------------\n") | |
132 | if i ~= contarBees then sleep(26) end | |
133 | end | |
134 | end | |
135 | ||
136 | ||
137 | function returnBees(pos) | |
138 | turtle.turnRight() | |
139 | temp = 8 - pos | |
140 | for i = 1,temp do | |
141 | turtle.forward() | |
142 | end | |
143 | ||
144 | turtle.turnRight() | |
145 | turtle.forward() | |
146 | ||
147 | turtle.select(bestDrone) | |
148 | turtle.dropUp() | |
149 | ||
150 | turtle.turnLeft() | |
151 | turtle.turnLeft() | |
152 | turtle.forward() | |
153 | turtle.up() | |
154 | turtle.up() | |
155 | turtle.turnLeft() | |
156 | turtle.turnLeft() | |
157 | turtle.forward() | |
158 | turtle.select(princess) | |
159 | turtle.dropDown() | |
160 | turtle.back() | |
161 | turtle.down() | |
162 | end | |
163 | ||
164 | function Home(pos) | |
165 | turtle.turnLeft() | |
166 | for i = 1,pos do | |
167 | turtle.forward() | |
168 | end | |
169 | turtle.turnLeft() | |
170 | turtle.forward() | |
171 | turtle.forward() | |
172 | turtle.down() | |
173 | turtle.turnLeft() | |
174 | turtle.turnLeft() | |
175 | end | |
176 | ||
177 | ||
178 | function dropExcess() | |
179 | for i = 1, 6 do | |
180 | turtle.select(i) | |
181 | turtle.drop() | |
182 | end | |
183 | end | |
184 | ||
185 | ||
186 | while true do | |
187 | for nextpos=1,5 do | |
188 | rednet.send(45, "\n\n-------------------------") | |
189 | rednet.send(45, "\nApiary Nro. "..nextpos) | |
190 | rednet.send(45, "-------------------------") | |
191 | - | rednet.send(45, "------------------------") |
191 | + | |
192 | currslot = 1 | |
193 | princess = 0 | |
194 | bestDrone = 0 | |
195 | data="" | |
196 | contarBees = 0 | |
197 | beeTable = {} | |
198 | currScore = 0 | |
199 | ||
200 | haybreak = 0 | |
201 | turtle.select(1) | |
202 | Puntaje() | |
203 | agarroBee(nextpos) | |
204 | ||
205 | if (turtle.getItemCount(1) == 0) then | |
206 | Home(nextpos) | |
207 | print("No hay abejas para retirar") | |
208 | rednet.send(45, "No hay abejas para retirar") | |
209 | haybreak = 1 | |
210 | - | rednet.send(46, "No hay abejas para retirar") |
210 | + | |
211 | if haybreak == 0 then | |
212 | buscoCombs(nextpos, countBees) | |
213 | - | rednet.send(45, "Abejas: "..contarBees) |
213 | + | |
214 | - | rednet.send(45, "---------------------") |
214 | + | |
215 | returnBees(nextpos) | |
216 | Home(nextpos) | |
217 | dropExcess() | |
218 | - | rednet.send(45, "Abejas: "..contarBees) |
218 | + | |
219 | - | rednet.send(45, "---------------------") |
219 | + | |
220 | rednet.send(45, "\n\nEsperando 5 Minutos...\n") | |
221 | print("Esperando 5 Minutos") | |
222 | sleep(300) | |
223 | end |