Enhanced harvesting and watering logic, introduced utility methods for efficient farming operations.

This commit is contained in:
james 2026-05-05 12:34:03 +09:30
parent 582bf2219e
commit 4de72dc92a
No known key found for this signature in database
GPG Key ID: E1FFBA228F4CAD87
3 changed files with 27 additions and 8 deletions

28
farm.py
View File

@ -1,5 +1,6 @@
#test
from __builtins__ import *
from __utils__ import *
# while True:
# move(North)
# if can_harvest():
@ -52,10 +53,15 @@ def goto(x, y):
def hay():
if can_harvest():
harvest()
if get_entity_type() == None and get_ground_type() != Grounds.Grassland:
till()
move_to_origin()
for _ in range(wsize * wsize):
if can_harvest():
harvest()
if get_entity_type() == None and get_ground_type() != Grounds.Grassland:
till()
if get_pos_y() == 0:
move(East)
move(North)
def bush():
@ -150,7 +156,7 @@ def sunflower():
goto(x, y)
harvest_except(Entities.Sunflower)
auto_till()
if get_entity_type != Entities.Sunflower:
if get_entity_type() != Entities.Sunflower:
plant(Entities.Sunflower)
flowers[(x, y)] = measure()
@ -182,4 +188,14 @@ def harvest_except(excluded_entity):
def auto_till():
if get_ground_type() != Grounds.Soil:
till()
till()
def water():
if num_items(Items.Water) >= pow(wsize,2):
move_to_origin()
for _ in range(wsize * wsize):
use_item(Items.Water)
if get_pos_y() == 0:
move(East)
move(North)

View File

@ -5,6 +5,7 @@ HAY_TARGET = 100
WOOD_TARGET = 100
POWER_TARGET = pow(get_world_size(), 2)
CARROT_TARGET = pow(get_world_size(), 2) * 3
farm.move_to_origin()
while True:
hay = num_items(Items.Hay)
wood = num_items(Items.Wood)
@ -41,4 +42,6 @@ while True:
# the drone somewhere predictable)
if get_pos_y() == 0:
move(East)
move(North)
move(North)
if get_water() < 0.25 and num_items(Items.Water) >= farm.pow(farm.wsize,2):
farm.water()

View File

@ -1 +1 @@
{"items":{"serializeList":[{"name":"hay","nr":25030.0},{"name":"wood","nr":22989.0},{"name":"carrot","nr":24080.0},{"name":"pumpkin","nr":25951.0},{"name":"water","nr":507.0},{"name":"fertilizer","nr":267.0},{"name":"power","nr":2755.3881666666807}]},"dockedFiles":[],"minimizedFiles":[],"openFilePositions":[{"key":"farm","value":{"x":-947.4608154296875,"y":2463.12451171875}},{"key":"main","value":{"x":172.9576416015625,"y":2470.416015625}},{"key":"docs0","value":{"x":-1906.639892578125,"y":884.713134765625}},{"key":"docs1","value":{"x":-1937.482421875,"y":1556.6673583984375}},{"key":"docs2","value":{"x":-590.66552734375,"y":1308.072021484375}},{"key":"__utils__","value":{"x":785.8156127929688,"y":1809.6502685546875}}],"openFileScrollPositions":[{"key":"farm","value":4288.9580078125},{"key":"main","value":-0.0008544921875},{"key":"__utils__","value":0.0}],"openFileSizes":[{"key":"farm","value":{"x":0.0,"y":861.5}},{"key":"main","value":{"x":1554.4163818359375,"y":880.614990234375}},{"key":"docs0","value":{"x":900.0,"y":700.0}},{"key":"docs1","value":{"x":900.0,"y":700.0}},{"key":"docs2","value":{"x":900.0,"y":700.0}},{"key":"__utils__","value":{"x":0.0,"y":0.0}}],"openDocPages":[{"key":"docs0","value":"docs/unlocks/sunflowers.md"},{"key":"docs1","value":"docs/scripting/dicts.md"},{"key":"docs2","value":"docs/unlocks/sunflowers.md"}],"unlocks":["grass_5","soil","harvest","pass","do_a_flip","pet_the_piggy","grassland","hay","straw_hat","tap","while","true","false","break","continue","loops","can_harvest","if","else","elif","speed_5","traffic_cone","move","north","south","east","west","expand_6","for","range","get_world_size","wood","bush","entities","clear","plant","change_hat","gray_hat","purple_hat","green_hat","brown_hat","hats","and","or","not","operators","carrot","till","can_trade","trade","items","carrot_seed","carrots_5","get_entity_type","get_ground_type","grounds","get_pos_x","get_pos_y","none","num_items","num_unlocked","senses","variables","functions","def","return","global","trees_5","tree","tree_hat","carrot_hat","append","remove","pop","insert","len","list","lists","print","quick_print","unlocks","str","debug","pumpkins_4","pumpkin","pumpkin_seed","dead_pumpkin","from","import","pumpkin_hat","min","max","abs","random","utilities","dicts","sets","add","dict","set","dictionaries","get_cost","costs","unlock","auto_unlock","water","use_item","get_water","watering","sunflower_seed","sunflower","power","get_active_power","measure","sunflowers","weird_substance","fertilizer","sunflower_hat"],"version":3}
{"items":{"serializeList":[{"name":"hay","nr":120310.0},{"name":"wood","nr":133217.0},{"name":"carrot","nr":119784.0},{"name":"pumpkin","nr":117303.0},{"name":"water","nr":291.0},{"name":"fertilizer","nr":607.0},{"name":"power","nr":1651.3880000000581}]},"dockedFiles":[],"minimizedFiles":[],"openFilePositions":[{"key":"farm","value":{"x":-947.4605712890625,"y":2463.124267578125}},{"key":"main","value":{"x":-985.4107666015625,"y":553.1219482421875}},{"key":"docs0","value":{"x":-1906.6400146484375,"y":884.7133178710938}},{"key":"docs1","value":{"x":-1937.4825439453125,"y":1556.6676025390625}},{"key":"docs2","value":{"x":-590.6654052734375,"y":1308.072021484375}},{"key":"__utils__","value":{"x":2483.42041015625,"y":1381.6826171875}},{"key":"docs3","value":{"x":-147.0067138671875,"y":1238.170654296875}},{"key":"docs4","value":{"x":-529.3243408203125,"y":1380.8265380859375}},{"key":"docs5","value":{"x":-650.5819091796875,"y":1984.2607421875}},{"key":"docs6","value":{"x":-147.0067138671875,"y":1238.1705322265625}}],"openFileScrollPositions":[{"key":"farm","value":4949.4375},{"key":"main","value":583.925048828125},{"key":"__utils__","value":0.0}],"openFileSizes":[{"key":"farm","value":{"x":0.0,"y":861.5}},{"key":"main","value":{"x":1554.4163818359375,"y":880.614990234375}},{"key":"docs0","value":{"x":900.0,"y":700.0}},{"key":"docs1","value":{"x":900.0,"y":700.0}},{"key":"docs2","value":{"x":900.0,"y":700.0}},{"key":"__utils__","value":{"x":0.0,"y":0.0}},{"key":"docs3","value":{"x":900.0,"y":700.0}},{"key":"docs4","value":{"x":900.0,"y":700.0}},{"key":"docs5","value":{"x":900.0,"y":700.0}},{"key":"docs6","value":{"x":900.0,"y":700.0}}],"openDocPages":[{"key":"docs0","value":"docs/unlocks/sunflowers.md"},{"key":"docs1","value":"docs/scripting/dicts.md"},{"key":"docs2","value":"docs/unlocks/sunflowers.md"},{"key":"docs3","value":"docs/unlocks/timing.md"},{"key":"docs4","value":"docs/unlocks/watering.md"},{"key":"docs5","value":"docs/unlocks/cactus.md"},{"key":"docs6","value":"docs/unlocks/polyculture.md"}],"unlocks":["grass_6","soil","harvest","pass","do_a_flip","pet_the_piggy","grassland","hay","straw_hat","tap","while","true","false","break","continue","loops","can_harvest","if","else","elif","speed_5","traffic_cone","move","north","south","east","west","expand_7","for","range","get_world_size","wood","bush","entities","clear","plant","change_hat","gray_hat","purple_hat","green_hat","brown_hat","hats","and","or","not","operators","carrot","till","can_trade","trade","items","carrot_seed","carrots_5","get_entity_type","get_ground_type","grounds","get_pos_x","get_pos_y","none","num_items","num_unlocked","senses","variables","functions","def","return","global","trees_5","tree","tree_hat","carrot_hat","append","remove","pop","insert","len","list","lists","print","quick_print","unlocks","str","debug","pumpkins_4","pumpkin","pumpkin_seed","dead_pumpkin","from","import","pumpkin_hat","min","max","abs","random","utilities","dicts","sets","add","dict","set","dictionaries","get_cost","costs","unlock","auto_unlock","water","use_item","get_water","watering_6","sunflower_seed","sunflower","power","get_active_power","measure","sunflowers","weird_substance","fertilizer","sunflower_hat","timing","get_time","get_tick_count","traffic_cone_stack","cactus","swap","cactus_seed","polyculture","get_companion"],"version":3}