林场 · 10 × 10 地块左上角 (0,0) 为木材仓库
🚜
空地
树苗
生长期
成熟大树
土壤湿润
🚜 运输车(同时负责种植与搬运)
脚本编辑器 · 林语 GroveScript
运行日志
📖 林语速查表(点开)
规则:一行一句;缩进只为好看、不影响语义;大小写不敏感;
数值比较:
组合:
只读内置:
# 起注释;块结构一律用 end 收尾;中英文关键字都认。
干活的指令
plant 种树 · water 浇水 · harvest 收割成熟树 ·
deliver 送木材回仓库 · goto x y 开到某块地 ·
wait 3 等 3 个时辰 · wait until ripe 等到条件成立 · say 文字 写日志
控制结构
repeat 5 … end 重复 5 次 · forever … end 一直循环 ·
while 条件 … end · if 条件 … else … end ·
for each plot … end 挨个巡视全部地块(可加范围:for each plot in row 1 / in col 3)·
leave 跳出循环 · skip 跳过本轮 · stop 收工
条件(都针对小车脚下这块地)
empty 空地 · sapling 树苗 · growing 生长期 ·
ripe 已成熟 · dry 缺水 · wet 水足 ·
full 车斗快满 · loaded 车上有货数值比较:
wood > 30 · load >= 6 · x = 4 · ticks > 200组合:
not · and · or · 可用小括号
中文写法(等价)
种树 浇水 收割 送货 前往 等待 直到 说 ·
重复 一直 当 如果 否则 结束 遍历地块 跳出 跳过 停止 ·
空地 树苗 生长中 成熟 干 湿 满 有货 非 并且 或者
阶段2 · 变量 / 子程序 / 标签 / 铲平
set 名 = 数字 存变量(仅整数)· say 名 把变量写进日志只读内置:
tick / wood / load / x / y(不能 set,但能在条件或 say 里读)proc 名 … end 在最外层定义子程序(中文:过程 … 结束);调用时独占一行写名字即可leave 跳出子程序(不在子程序里时等同跳出循环)· stop 收工tag "标签" / untag "标签" 给脚下地块打上 / 摘掉标签for each plot tagged "标签" 只遍历带该标签的地块 · 条件 tagged "标签" 判断脚下是否有这标签clear 铲平脚下地块(毁掉树/苗,不出木材)