编程农场吧 关注:131贴子:344
  • 2回复贴,共1

萌新请教为什么会提早收获

只看楼主收藏回复

我种的胡萝卜,想自动种植一列然后收菜,但是为什么总是在还没成熟的时候就收了。
以下是我的代码:
while True:
if get_entity_type() == Entities.Grass:
till()
else:
move(North)
if get_entity_type() == Entities.Carrot:
can_harvest()
harvest()
else:
plant(Entities.Carrot)


IP属地:广西1楼2025-10-18 23:43回复
    can_harvest()是一个判断函数,而不是一个疑问句。如果成熟了,则返回True,但并不直接影响后续执行。
    你的代码相当于这样:
    无人机:“胡萝卜熟了吗?”田地:“没熟。”无人机:“管你有的没的,收获”
    这里应该用
    while True:
    if can_havest():
    havest()
    break


    IP属地:湖南来自Android客户端2楼2025-10-19 00:26
    收起回复