Feat: done except full reset, maze, dino
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import utils, solve
|
||||
import sunflower
|
||||
|
||||
def grow(xl, xr, yl, yr):
|
||||
def init():
|
||||
@@ -98,6 +99,5 @@ if __name__ == '__main__':
|
||||
clear()
|
||||
|
||||
solve.run([
|
||||
grow.cactus(0, 32, 0, 32),
|
||||
check(),
|
||||
grow(0, 32, 0, 32),
|
||||
])()
|
||||
|
||||
28
farm24.py
28
farm24.py
@@ -7,21 +7,29 @@ base24 = [
|
||||
]
|
||||
|
||||
mixs24 = [
|
||||
[mix.grow(0, 4, 8, 16)],
|
||||
[mix.grow(4, 8, 8, 16)],
|
||||
[mix.grow(0, 4, 16, 24)],
|
||||
[mix.grow(4, 8, 16, 24)],
|
||||
[mix.grow( 0, 4, 8, 16)],
|
||||
[mix.grow( 4, 8, 8, 16)],
|
||||
[mix.grow( 0, 4, 16, 24)],
|
||||
[mix.grow( 4, 8, 16, 24)],
|
||||
[mix.grow( 8, 12, 0, 8)],
|
||||
[mix.grow(12, 16, 0, 8)],
|
||||
[mix.grow(16, 20, 8, 16)],
|
||||
[mix.grow(20, 24, 8, 16)],
|
||||
[mix.grow( 8, 12, 8, 16)],
|
||||
[mix.grow(12, 16, 8, 16)],
|
||||
[mix.grow(16, 20, 0, 8)],
|
||||
[mix.grow(20, 24, 0, 8)],
|
||||
|
||||
[pumpkin.grow(8, 16, 8)],
|
||||
[pumpkin.grow(16, 8, 8)],
|
||||
#[pumpkin.grow( 8, 0, 8)],
|
||||
#[pumpkin.grow(16, 8, 8)],
|
||||
|
||||
[cactus.grow( 8, 16, 8, 16)],
|
||||
[cactus.grow(16, 24, 16, 24)],
|
||||
#[cactus.grow( 8, 16, 8, 16)],
|
||||
#[cactus.grow(16, 24, 0, 8)],
|
||||
]
|
||||
|
||||
mazes24 = [
|
||||
[maze.grow( 8, 0, 8)],
|
||||
[maze.grow(16, 0, 8)],
|
||||
[maze.grow( 8, 16, 8)],
|
||||
[maze.grow(16, 16, 8)],
|
||||
]
|
||||
|
||||
def farm24():
|
||||
|
||||
59
farm32.py
59
farm32.py
@@ -1,42 +1,51 @@
|
||||
import solve, grow, utils
|
||||
import solve, utils
|
||||
import sunflower, mix
|
||||
|
||||
base32 = [
|
||||
grow.sunflower_base(0, 2, 24, 32),
|
||||
grow.sunflower(2, 8, 24, 32),
|
||||
sunflower.growbase(0, 8, 0, 2),
|
||||
sunflower.grow(0, 8, 2, 8),
|
||||
]
|
||||
|
||||
mixs32 = [
|
||||
[grow.three_mix(0, 4, 0, 8)],
|
||||
[grow.three_mix(4, 8, 0, 8)],
|
||||
[grow.three_mix(0, 4, 8, 16)],
|
||||
[grow.three_mix(4, 8, 8, 16)],
|
||||
[grow.three_mix(0, 4, 16, 24)],
|
||||
[grow.three_mix(4, 8, 16, 24)],
|
||||
[mix.grow( 8, 12, 0, 8)],
|
||||
[mix.grow(12, 16, 0, 8)],
|
||||
[mix.grow(16, 20, 0, 8)],
|
||||
[mix.grow(20, 24, 0, 8)],
|
||||
[mix.grow(24, 28, 0, 8)],
|
||||
[mix.grow(28, 32, 0, 8)],
|
||||
|
||||
[grow.pumpkin( 8, 0, 8)],
|
||||
[grow.pumpkin(16, 8, 8)],
|
||||
[grow.pumpkin( 8, 16, 8)],
|
||||
[grow.pumpkin(16, 24, 8)],
|
||||
[mix.grow( 0, 4, 8, 16)],
|
||||
[mix.grow( 4, 8, 8, 16)],
|
||||
[mix.grow( 8, 12, 8, 16)],
|
||||
[mix.grow(12, 16, 8, 16)],
|
||||
[mix.grow(16, 20, 8, 16)],
|
||||
[mix.grow(20, 24, 8, 16)],
|
||||
[mix.grow(24, 28, 8, 16)],
|
||||
[mix.grow(28, 32, 8, 16)],
|
||||
|
||||
[grow.cactus(16, 24, 0, 8)],
|
||||
[grow.cactus( 8, 16, 8, 16)],
|
||||
[grow.cactus(16, 24, 16, 24)],
|
||||
[grow.cactus( 8, 16, 24, 32)],
|
||||
]
|
||||
[mix.grow( 0, 4, 16, 24)],
|
||||
[mix.grow( 4, 8, 16, 24)],
|
||||
[mix.grow( 8, 12, 16, 24)],
|
||||
[mix.grow(12, 16, 16, 24)],
|
||||
[mix.grow(16, 20, 16, 24)],
|
||||
[mix.grow(20, 24, 16, 24)],
|
||||
[mix.grow(24, 28, 16, 24)],
|
||||
[mix.grow(28, 32, 16, 24)],
|
||||
|
||||
mazes32 = [
|
||||
[grow.maze(24, 0, 8)],
|
||||
[grow.maze(24, 8, 8)],
|
||||
[grow.maze(24, 16, 8)],
|
||||
[grow.maze(24, 24, 8)],
|
||||
[mix.grow( 0, 4, 24, 32)],
|
||||
[mix.grow( 4, 8, 24, 32)],
|
||||
[mix.grow( 8, 12, 24, 32)],
|
||||
[mix.grow(12, 16, 24, 32)],
|
||||
[mix.grow(16, 20, 24, 32)],
|
||||
[mix.grow(20, 24, 24, 32)],
|
||||
[mix.grow(24, 28, 24, 32)],
|
||||
[mix.grow(28, 32, 24, 32)],
|
||||
]
|
||||
|
||||
def farm32():
|
||||
set_world_size(32)
|
||||
clear()
|
||||
|
||||
for maze in mazes32:
|
||||
utils.spawn(solve.run(maze, 4000))
|
||||
for mix in mixs32:
|
||||
utils.spawn(solve.run(mix))
|
||||
solve.run(base32)()
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
leaderboard_run(Leaderboards.Dinosaur, "snake", 10000)
|
||||
# leaderboard_run(Leaderboards.Dinosaur, "snake", 10000)
|
||||
leaderboard_run(Leaderboards.Sunflowers, "sunflower", 10000)
|
||||
|
||||
40
maze.py
40
maze.py
@@ -1,5 +1,5 @@
|
||||
import solve, utils
|
||||
import sunflower
|
||||
import pumpkin
|
||||
|
||||
d = [North, West, South, East]
|
||||
def grow(xl, yl, n, repeat=1):
|
||||
@@ -45,10 +45,36 @@ def grow(xl, yl, n, repeat=1):
|
||||
|
||||
return (init, run)
|
||||
|
||||
def grow_full(x, y, replant=False):
|
||||
substance = 4 * 2**(num_unlocked(Unlocks.Mazes) - 1)
|
||||
|
||||
def ret():
|
||||
utils.mv(x, y)
|
||||
do_a_flip()
|
||||
|
||||
while True:
|
||||
if get_entity_type() == Entities.Treasure:
|
||||
harvest()
|
||||
if replant and get_entity_type() != Entities.Hedge:
|
||||
plant(Entities.Bush)
|
||||
use_item(Items.Weird_Substance, substance)
|
||||
|
||||
return ret
|
||||
|
||||
if __name__ == '__main__':
|
||||
set_world_size(32)
|
||||
utils.spawn(solve.run([
|
||||
sunflower.growbase(0, 2, 0, 8),
|
||||
sunflower.grow(2, 8, 0, 8),
|
||||
]))
|
||||
solve.run([grow(0, 0, 32)])()
|
||||
set_world_size(8)
|
||||
clear()
|
||||
|
||||
jobs = list()
|
||||
for d in range(2):
|
||||
for x in range(4):
|
||||
for y in range(4):
|
||||
if x == 2 and y == 2:
|
||||
jobs.append(grow_full(d*4+x, y, True))
|
||||
else:
|
||||
jobs.append(grow_full(d*4+x, y))
|
||||
|
||||
for job in jobs[:-1]:
|
||||
spawn_drone(job)
|
||||
|
||||
jobs[-1]()
|
||||
|
||||
36
mix.py
36
mix.py
@@ -1,4 +1,8 @@
|
||||
import utils
|
||||
import solve
|
||||
|
||||
def mv(tx, ty):
|
||||
utils.mv(tx, ty, True)
|
||||
|
||||
def grow(xl, xr, yl, yr):
|
||||
def init():
|
||||
@@ -35,5 +39,35 @@ def grow(xl, xr, yl, yr):
|
||||
utils.replant(Entities.Carrot)
|
||||
return (init, run)
|
||||
|
||||
if __name__ == '__main__':
|
||||
def grow_row(x, yl, yr):
|
||||
def ret():
|
||||
for y in range(yl, yr):
|
||||
mv(x, y)
|
||||
typ = x%2 + y%2
|
||||
if typ == 0:
|
||||
utils.grass()
|
||||
utils.replant(Entities.Tree)
|
||||
if typ == 1:
|
||||
utils.soil()
|
||||
utils.replant(Entities.Carrot)
|
||||
if typ == 2:
|
||||
utils.grass()
|
||||
|
||||
while True:
|
||||
for y in range(yl, yr):
|
||||
mv(x, y)
|
||||
typ = x%2 + y%2
|
||||
if typ == 1:
|
||||
utils.water()
|
||||
while not utils.harv():
|
||||
pass
|
||||
utils.replant(Entities.Carrot)
|
||||
return ret
|
||||
|
||||
if __name__ == '__main__':
|
||||
set_world_size(32)
|
||||
clear()
|
||||
|
||||
for x in range(0, 32-1):
|
||||
spawn_drone(grow_row(x, 0, 32))
|
||||
grow_row(32-1, 0, 32)()
|
||||
|
||||
99
pumpkin.py
99
pumpkin.py
@@ -1,38 +1,115 @@
|
||||
import utils
|
||||
import solve
|
||||
|
||||
def grow(xl, yl, n):
|
||||
def init():
|
||||
for x in range(xl, xl+n):
|
||||
l, r, d = yl, yl+n, 1
|
||||
if x%2 == 1:
|
||||
l, r, d = yl+n-1, yl-1, -1
|
||||
for y in range(l, r, d):
|
||||
def fillx(x):
|
||||
def ret():
|
||||
for y in range(yl, yl+n):
|
||||
utils.mv(x, y)
|
||||
utils.soil()
|
||||
return ret
|
||||
|
||||
drowns = list()
|
||||
for x in range(xl+1, xl+n):
|
||||
drown = None
|
||||
while drown == None:
|
||||
drown = spawn_drone(fillx(x))
|
||||
drowns.append(drown)
|
||||
fillx(xl)()
|
||||
for drown in drowns:
|
||||
wait_for(drown)
|
||||
|
||||
def run():
|
||||
check = list()
|
||||
for x in range(xl, xl+n):
|
||||
l, r, d = yl, yl+n, 1
|
||||
if x%2 == 1:
|
||||
l, r, d = yl+n-1, yl-1, -1
|
||||
for y in range(l, r, d):
|
||||
for y in range(yl, yl+n):
|
||||
check.append((x, y))
|
||||
|
||||
def fillx(x):
|
||||
def ret():
|
||||
for y in range(yl, yl+n):
|
||||
utils.mv(x, y)
|
||||
utils.water()
|
||||
utils.replant(Entities.Pumpkin)
|
||||
check.append((x, y))
|
||||
return ret
|
||||
|
||||
drowns = list()
|
||||
for x in range(xl+1, xl+n):
|
||||
drown = None
|
||||
while drown == None:
|
||||
drown = spawn_drone(fillx(x))
|
||||
drowns.append(drown)
|
||||
fillx(xl)()
|
||||
for drown in drowns:
|
||||
wait_for(drown)
|
||||
|
||||
while len(check):
|
||||
nxt = list()
|
||||
for x, y in check[::-1]:
|
||||
utils.mv(x, y)
|
||||
if not can_harvest():
|
||||
nxt.append((x, y))
|
||||
if get_entity_type() == Entities.Dead_Pumpkin:
|
||||
while not can_harvest():
|
||||
plant(Entities.Pumpkin)
|
||||
if not use_item(Items.Fertilizer):
|
||||
nxt.append((x, y))
|
||||
break
|
||||
else:
|
||||
nxt.append((x, y))
|
||||
check = nxt
|
||||
|
||||
utils.mv(xl, yl)
|
||||
utils.harv()
|
||||
|
||||
return (init, run)
|
||||
|
||||
def grow_parallel(xl, xm, xr, yl, yr):
|
||||
def ret():
|
||||
|
||||
def init(check, xl, xr, yl, yr):
|
||||
for x in range(xl, xr):
|
||||
for y in range(yl, yr):
|
||||
utils.mv(x, y)
|
||||
utils.soil()
|
||||
utils.water()
|
||||
plant(Entities.Pumpkin)
|
||||
check.append((x, y))
|
||||
|
||||
def replant(xl, xr, yl, yr):
|
||||
def ret():
|
||||
check = list()
|
||||
init(check, xl, xr, yl, yr)
|
||||
|
||||
while len(check):
|
||||
nxt = list()
|
||||
for x, y in check[::-1]:
|
||||
utils.mv(x, y)
|
||||
utils.water()
|
||||
if not can_harvest():
|
||||
if get_entity_type() == Entities.Dead_Pumpkin:
|
||||
plant(Entities.Pumpkin)
|
||||
nxt.append((x, y))
|
||||
check = nxt
|
||||
|
||||
return ret
|
||||
|
||||
while True:
|
||||
drown = spawn_drone(replant(xl, xm, yl, yr))
|
||||
replant(xm, xr, yl, yr)()
|
||||
wait_for(drown)
|
||||
utils.harv()
|
||||
|
||||
return ret
|
||||
|
||||
if __name__ == '__main__':
|
||||
set_world_size(32)
|
||||
clear()
|
||||
|
||||
jobs = list()
|
||||
for x in range(0, 4):
|
||||
for y in range(0, 4):
|
||||
jobs.append(grow_parallel(x*8, x*8+4, x*8+7, y*8, y*8+7))
|
||||
for job in jobs[:-1]:
|
||||
spawn_drone(job)
|
||||
jobs[-1]()
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"items":{"serializeList":[{"name":"hay","nr":732862776.0},{"name":"wood","nr":4085470918.0},{"name":"carrot","nr":1111796064.0},{"name":"pumpkin","nr":109301095.0},{"name":"cactus","nr":371811694.0},{"name":"bone","nr":30887608.0},{"name":"weird_substance","nr":428014.0},{"name":"gold","nr":20484298.0},{"name":"water","nr":1232080.0},{"name":"fertilizer","nr":25358.0}]},"dockedFiles":[{"key":"cactus","value":"maze"},{"key":"farm24","value":"farm32"},{"key":"hats","value":"utils"},{"key":"leaderboard","value":"farm24"},{"key":"maze","value":"snake"},{"key":"pumpkin","value":"mix"},{"key":"sunflower","value":"pumpkin"},{"key":"utils","value":"solve"}],"minimizedFiles":["farm24","farm32","leaderboard"],"openFilePositions":[{"key":"cactus","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"farm24","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"farm32","value":{"x":-634.2324829101563,"y":2230.040283203125}},{"key":"hats","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"leaderboard","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"maze","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"mix","value":{"x":-1656.432861328125,"y":1936.912841796875}},{"key":"pumpkin","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"snake","value":{"x":-693.8130493164063,"y":1927.7490234375}},{"key":"solve","value":{"x":-2349.65087890625,"y":2051.2119140625}},{"key":"sunflower","value":{"x":825.1744995117188,"y":158.076904296875}},{"key":"utils","value":{"x":825.1744995117188,"y":158.076904296875}}],"openFileScrollPositions":[{"key":"cactus","value":1007.769775390625},{"key":"farm24","value":450.0},{"key":"farm32","value":149.98077392578126},{"key":"hats","value":0.0},{"key":"leaderboard","value":0.0},{"key":"maze","value":299.99945068359377},{"key":"mix","value":0.0},{"key":"pumpkin","value":-0.0008544921875},{"key":"snake","value":2418.223388671875},{"key":"solve","value":0.00030517578125},{"key":"sunflower","value":0.0},{"key":"utils","value":599.9998779296875}],"openFileSizes":[{"key":"cactus","value":{"x":0.0,"y":0.0}},{"key":"farm24","value":{"x":0.0,"y":0.0}},{"key":"farm32","value":{"x":0.0,"y":0.0}},{"key":"hats","value":{"x":0.0,"y":0.0}},{"key":"leaderboard","value":{"x":0.0,"y":0.0}},{"key":"maze","value":{"x":0.0,"y":0.0}},{"key":"mix","value":{"x":0.0,"y":0.0}},{"key":"pumpkin","value":{"x":0.0,"y":0.0}},{"key":"snake","value":{"x":0.0,"y":0.0}},{"key":"solve","value":{"x":0.0,"y":0.0}},{"key":"sunflower","value":{"x":0.0,"y":0.0}},{"key":"utils","value":{"x":0.0,"y":0.0}}],"openDocPages":[],"unlocks":["grass_10","soil","harvest","pass","do_a_flip","pet_the_piggy","grassland","hay","straw_hat","while","true","false","break","continue","loops","speed_5","can_harvest","if","else","elif","expand_9","move","north","south","east","west","for","range","get_world_size","wood","bush","entities","clear","plant","change_hat","gray_hat","purple_hat","green_hat","brown_hat","hats","traffic_cone","and","or","not","operators","carrots_10","carrot","till","can_trade","trade","items","carrot_seed","get_entity_type","get_ground_type","grounds","get_pos_x","get_pos_y","none","num_items","num_unlocked","senses","watering_9","water","use_item","get_water","trees_10","tree","tree_hat","sunflower_seed","sunflower","power","get_active_power","measure","sunflowers","pumpkins_10","pumpkin","pumpkin_seed","dead_pumpkin","carrot_hat","variables","functions","def","return","global","from","import","fertilizer_4","weird_substance","append","remove","pop","insert","len","list","lists","traffic_cone_stack","print","quick_print","unlocks","str","debug","pumpkin_hat","sunflower_hat","swap","cactus_seed","cactus_6","get_companion","polyculture_5","hedge","treasure","gold","can_move","mazes_6","dicts","sets","add","dict","set","dictionaries","get_cost","costs","min","max","abs","random","utilities","get_time","get_tick_count","timing","unlock","auto_unlock","wizard_hat","cactus_hat","gold_hat","megafarm_5","get_drone_id","num_drones","max_drones","wait_for","spawn_drone","has_finished","dinosaurs_6","dinosaur","egg","bone","dinosaur_hat","apple","set_execution_speed","set_world_size","debug_2","simulate","simulation","leaderboard_run","leaderboards","leaderboard","golden_cactus_hat","the_farmers_remains"],"version":3}
|
||||
{"items":{"serializeList":[{"name":"hay","nr":2126151992.0},{"name":"wood","nr":13442136262.0},{"name":"carrot","nr":2433310170.0},{"name":"pumpkin","nr":386010855.0},{"name":"cactus","nr":45521902.0},{"name":"bone","nr":30887608.0},{"name":"weird_substance","nr":7421646.0},{"name":"gold","nr":14014922.0},{"name":"water","nr":1571836.0},{"name":"fertilizer","nr":28066.0},{"name":"power","nr":597564.7140000112}]},"dockedFiles":[{"key":"cactus","value":"maze"},{"key":"farm24","value":"farm32"},{"key":"hats","value":"utils"},{"key":"leaderboard","value":"farm24"},{"key":"maze","value":"snake"},{"key":"pumpkin","value":"mix"},{"key":"sunflower","value":"pumpkin"},{"key":"utils","value":"solve"}],"minimizedFiles":["farm32","leaderboard"],"openFilePositions":[{"key":"cactus","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"farm24","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"farm32","value":{"x":-681.9122314453125,"y":2821.310302734375}},{"key":"hats","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"leaderboard","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"maze","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"mix","value":{"x":-1656.432861328125,"y":1936.9075927734375}},{"key":"pumpkin","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"snake","value":{"x":-693.814208984375,"y":1927.741943359375}},{"key":"solve","value":{"x":-2349.65283203125,"y":2051.204833984375}},{"key":"sunflower","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"utils","value":{"x":825.173583984375,"y":-109.423828125}},{"key":"docs0","value":{"x":1122.8577880859375,"y":1939.3671875}}],"openFileScrollPositions":[{"key":"cactus","value":48.94798278808594},{"key":"farm24","value":757.3106689453125},{"key":"farm32","value":0.0},{"key":"hats","value":0.0},{"key":"leaderboard","value":-100.0},{"key":"maze","value":1620.765625},{"key":"mix","value":205.3017578125},{"key":"pumpkin","value":0.0},{"key":"snake","value":2418.223388671875},{"key":"solve","value":-0.0001220703125},{"key":"sunflower","value":400.8338928222656},{"key":"utils","value":2209.4697265625}],"openFileSizes":[{"key":"cactus","value":{"x":0.0,"y":0.0}},{"key":"farm24","value":{"x":0.0,"y":0.0}},{"key":"farm32","value":{"x":0.0,"y":0.0}},{"key":"hats","value":{"x":0.0,"y":0.0}},{"key":"leaderboard","value":{"x":0.0,"y":0.0}},{"key":"maze","value":{"x":0.0,"y":0.0}},{"key":"mix","value":{"x":0.0,"y":0.0}},{"key":"pumpkin","value":{"x":0.0,"y":0.0}},{"key":"snake","value":{"x":0.0,"y":0.0}},{"key":"solve","value":{"x":0.0,"y":0.0}},{"key":"sunflower","value":{"x":0.0,"y":0.0}},{"key":"utils","value":{"x":0.0,"y":0.0}},{"key":"docs0","value":{"x":900.0,"y":700.0}}],"openDocPages":[{"key":"docs0","value":"docs/home.md"}],"unlocks":["grass_10","soil","harvest","pass","do_a_flip","pet_the_piggy","grassland","hay","straw_hat","while","true","false","break","continue","loops","speed_5","can_harvest","if","else","elif","expand_9","move","north","south","east","west","for","range","get_world_size","wood","bush","entities","clear","plant","change_hat","gray_hat","purple_hat","green_hat","brown_hat","hats","traffic_cone","and","or","not","operators","carrots_10","carrot","till","can_trade","trade","items","carrot_seed","get_entity_type","get_ground_type","grounds","get_pos_x","get_pos_y","none","num_items","num_unlocked","senses","watering_9","water","use_item","get_water","trees_10","tree","tree_hat","sunflower_seed","sunflower","power","get_active_power","measure","sunflowers","pumpkins_10","pumpkin","pumpkin_seed","dead_pumpkin","carrot_hat","variables","functions","def","return","global","from","import","fertilizer_4","weird_substance","append","remove","pop","insert","len","list","lists","traffic_cone_stack","print","quick_print","unlocks","str","debug","pumpkin_hat","sunflower_hat","swap","cactus_seed","cactus_6","get_companion","polyculture_5","hedge","treasure","gold","can_move","mazes_6","dicts","sets","add","dict","set","dictionaries","get_cost","costs","min","max","abs","random","utilities","get_time","get_tick_count","timing","unlock","auto_unlock","wizard_hat","cactus_hat","gold_hat","megafarm_5","get_drone_id","num_drones","max_drones","wait_for","spawn_drone","has_finished","dinosaurs_6","dinosaur","egg","bone","dinosaur_hat","apple","set_execution_speed","set_world_size","debug_2","simulate","simulation","leaderboard_run","leaderboards","leaderboard","golden_cactus_hat","the_farmers_remains","top_hat","golden_sunflower_hat","golden_tree_hat","golden_carrot_hat","golden_pumpkin_hat"],"version":3}
|
||||
38
sunflower.py
38
sunflower.py
@@ -88,19 +88,23 @@ def growparallel(xl, xr, yl, yr):
|
||||
return ret
|
||||
|
||||
drowns = list()
|
||||
for x in range(xl+1, xr):
|
||||
for x in range(xl, xr-1):
|
||||
utils.mv(x, get_pos_y())
|
||||
drown = None
|
||||
while drown == None:
|
||||
drown = spawn_drone(fillx(x))
|
||||
drowns.append(drown)
|
||||
fillx(xl)()
|
||||
fillx(xr-1)()
|
||||
for drown in drowns:
|
||||
wait_for(drown)
|
||||
|
||||
def run():
|
||||
def harvx(k, x):
|
||||
def harvx(k, x, inv):
|
||||
def ret():
|
||||
for y in range(yl, yr):
|
||||
l, r, d = yl, yr, 1
|
||||
if inv == True:
|
||||
l, r, d = yr-1, yl-1, -1
|
||||
for y in range(l, r, d):
|
||||
utils.mv(x, y)
|
||||
if measure() == k:
|
||||
while not utils.harv():
|
||||
@@ -109,12 +113,16 @@ def growparallel(xl, xr, yl, yr):
|
||||
|
||||
for k in range(15, 6, -1):
|
||||
drowns = list()
|
||||
for x in range(xl+1, xr):
|
||||
l, r, d = xl, xr, 1
|
||||
if k%2 == 1:
|
||||
l, r, d = xr-1, xl-1, -1
|
||||
for x in range(l, r-d, d):
|
||||
utils.mv(x, get_pos_y())
|
||||
drown = None
|
||||
while drown == None:
|
||||
drown = spawn_drone(harvx(k, x))
|
||||
drown = spawn_drone(harvx(k, x, k%2 == 1))
|
||||
drowns.append(drown)
|
||||
harvx(k, xl)()
|
||||
harvx(k, r-d, k%2 == 1)()
|
||||
for drown in drowns:
|
||||
wait_for(drown)
|
||||
|
||||
@@ -122,11 +130,21 @@ def growparallel(xl, xr, yl, yr):
|
||||
|
||||
return (init, run)
|
||||
|
||||
def check():
|
||||
def init():
|
||||
pass
|
||||
|
||||
def run():
|
||||
if num_items(Items.Power) >= 100000:
|
||||
return True
|
||||
|
||||
return (init, run)
|
||||
|
||||
if __name__ == '__main__':
|
||||
set_world_size(8)
|
||||
set_world_size(32)
|
||||
clear()
|
||||
|
||||
solve.run([
|
||||
growbase(0, 8, 0, 2),
|
||||
grow(0, 8, 2, 8),
|
||||
growparallel(0, 32, 0, 32)
|
||||
# check(),
|
||||
])()
|
||||
|
||||
Reference in New Issue
Block a user