Skip to content

载荷方块

本篇作者: pardon

我不建议将本篇看作单独的教程,而是作为参考答案,来检验你阅读、理解的java代码是否正确.

载荷方块,我们通常认为指的是载荷传送带(PayloadConveyor)载荷路由器(PayloadRouter)构造器(Constructor)解构器(PayloadDeconstructor)装载器(PayloadLoader)、*卸载器(PayloadUnloader)载荷质量驱动器(PayloadMassDriver)*这七种类型的方块.

这七种类型及相关类的继承关系如下图所示(箭头表示继承).

继承关系

PayloadConveyor和PayloadRouter

这两不继承PayloadBlock,我们先介绍它们.

PayloadConveyor 类

类型默认值说明
moveTimenumber45载荷移动所需时间(帧)
moveForcenumber201推动单位的力度
payloadLimitnumber3可承载载荷的最大尺寸(格)
pushUnitsbooleantrue是否推动踩在上面的单位
topRegionstringname + "-top"顶部贴图
edgeRegionstringname + "-edge"边缘贴图

PayloadRouter 类

类型默认值说明
invertbooleanfalsefalse时类似分类器,true时类似反向分类器
overRegionstringname + "-over"覆盖层贴图(绘制在顶部)

PayloadBlock类

PayloadBlock定义了载荷方块的基本属性和行为,如果我们使用的是java或者js的话,你能在其中发现很多载荷方块的通用方法,不过我们这里是json,可调整的参数不多.

以下是PayloadBlock类的主要参数:

类型默认值说明
payloadSpeednumber0.7载荷在方块中的移动速度
payloadRotateSpeednumber5载荷在方块中的旋转速度
regionSuffixstring""贴图后缀
topRegionstringname + "-top"顶部贴图
outRegionstringname + "-in"输入贴图
inRegionstringname + "-out"输出贴图

以上的接口,对于继承PayloadBlock类的子类方块都是适用的.

BlockProducer 类

类型默认值说明
buildSpeednumber0.4建造速度倍率

来自 PayloadBlock 的参数(如 payloadSpeed、payloadRotateSpeed、regionSuffix 等)同样可用。

Constructor 类

类型默认值说明
filterarray[]可生产的方块(空表示无限制)
minBlockSizenumber1可生产方块的最小尺寸(格)
maxBlockSizenumber2可生产方块的最大尺寸(格)

来自 BlockProducer 的 buildSpeed 以及 PayloadBlock 的全部参数均生效。

PayloadDeconstructor 类

类型默认值说明
maxPayloadSizenumber4可分解载荷的最大尺寸(格)
deconstructSpeednumber2.5分解速度倍率
dumpRatenumber4每帧输出物品的次数

来自 PayloadBlock 的参数(如 payloadSpeed,该方块构造中设为 1.0)同样生效。

PayloadLoader 类

类型默认值说明
loadTimenumber2每次装载操作的间隔时间(帧)
itemsLoadednumber8每次装载时转移的物品数量
liquidsLoadednumber40每次装载时转移的液体量(单位)
maxBlockSizenumber3可装载方块的最大尺寸(格)
maxPowerConsumptionnumber40满载时的额外功率消耗
loadPowerDynamicbooleantrue是否根据负载动态调整功率消耗
overRegionstringname + "-over"覆盖层贴图

来自 PayloadBlock 的参数同样生效

PayloadUnloader 类

类型默认值说明
offloadSpeednumber4每帧输出物品的次数
maxPowerUnloadnumber80每帧最大输出功率(从电池中卸载)

来自 PayloadLoader 的全部参数(如 loadTime、itemsLoaded、liquidsLoaded 等)以及 PayloadBlock 的参数均生效。

PayloadMassDriver 类

类型默认值说明
rangenumber100射程
rotateSpeednumber5炮塔旋转速度(度/帧)
lengthnumber11.125炮管长度(世界单位)
knockbacknumber5后坐力位移量
reloadnumber30装填冷却时间(帧)
chargeTimenumber100充能时间(帧)
maxPayloadSizenumber3可发射载荷的最大尺寸(格)
grabWidthnumber8抓取宽度
grabHeightnumber2.75抓取高度
baseRegionstringname + "-base"底座贴图
capRegionstringname + "-cap"炮管末端贴图
leftRegionstringname + "-left"左侧臂贴图
rightRegionstringname + "-right"右侧臂贴图
capOutlineRegionstringname + "-cap-outline"炮管末端轮廓贴图
leftOutlineRegionstringname + "-left-outline"左侧臂轮廓贴图
rightOutlineRegionstringname + "-right-outline"右侧臂轮廓贴图
arrowstring"bridge-arrow"瞄准箭头贴图

来自 PayloadBlock 的参数同样生效