采冰火箭代码
alias 控制开关 d0 #火箭发射与召回开关
alias 处理器 d1 #自动化火箭控制套件
define 冰开采模块 74521920 #冰和矿石开采的资源放入筒仓,气体开采的气体放入燃料箱
#可放多个开采模块,加快开采速度
alias 燃料泵 d3
alias 筒仓 d4 #火箭筒仓套件
define 油箱容量 16000 #加燃料到多少发射
#发射与降落都需要500燃料,一次成功发射不得少于1000,尽量别把燃料浪费在频繁起降上
define 货仓容量 580 #开采到多少返航
发射前自检:
yield
l r0 处理器 Fuel #读取燃料数量
slt r0 r0 油箱容量 #燃料低于油箱容量输出1
s 燃料泵 On r0 #连接燃料管和火箭燃料箱
bnez r0 发射前自检
l r0 控制开关 Setting
beqz r0 发射前自检 #=0时不发射火箭
s 处理器 Activate 1 #对火箭下达发射指令
升空过程:
yield
l r0 处理器 Mode #读取火箭当前模式,从地面到太空不是瞬间的
bne r0 4 升空过程 #太空待命模式=4,不等于4循环等待
勘探开采:
yield
l r0 控制开关 Setting
beqz r0 返航 #=0时返航
jal 返航燃料检查
l r0 筒仓 Quantity
bgt r0 货仓容量 返航
l r0 处理器 CollectableGoods #箭载开采设备勘探资源,有资源返回1,否则返回0
sb 冰开采模块 Activate r0 #=1时开采,=0时停止,如有矿石开采设备要相应加上
beqz r0 探索新资源点 #=0时,关闭开采设备并探索新资源点
j 勘探开采
探索新资源点:
yield
l r0 控制开关 Setting
beqz r0 返航 #=0时返航
jal 返航燃料检查
s 处理器 Activate 2 #对火箭下达点火指令,模式2
sleep 2 #点火二秒
s 处理器 Activate 4 #进入太空待命模式,模式4
停运引擎中: #引擎熄火中是模式3,熄火完成后自动跳到模式4
yield
l r0 CPU Mode
bne r0 4 停运引擎中
l r0 处理器 CollectableGoods
beq r0 1 勘探开采
j 探索新资源点
返航:
yield
sb 冰开采模块 Activate 0 #关闭开采设备,如有矿石开采设备要相应加上
s 处理器 Activate 5 #对火箭下达着陆指令,模式5
返航过程:
l r0 处理器 Mode
beqz r0 卸货 #着陆需要时间,不是瞬间的,模式=0时说明着陆完成
j 返航过程
卸货:
yield
l r0 筒仓 Quantity
snez r0 r0 #不等于0说明有物品
s 筒仓 Open r0
beqz r0 发射前自检
j 卸货
返航燃料检查:
l r0 处理器 Fuel #读取燃料数量
l r1 处理器 ReturnFuelCost #读取返航需要的燃料
add r1 r1 50 #返航燃料加上冗余,暂定为50
blt r0 r1 返航 #库存燃料低于返航燃料,进入返航程序
j ra