ModularMachinery Wiki(ZH)/变量

正如Wiki的上一页末尾所示,机械的定义JSON可能会十分臃肿,特别是当一个位置允许有多种方块(机械结构模块)状态时 定义文件会变得很乱而且还会出现重复的内容,因为大多数的机械结构模块只是在位置上有差异,而不是在所允许的结构模块状态上有差异。

变量(数组变量)在一定程度上能帮助解决这个问题,所以你可以定义一个变量,变量的值为那组的特定结构模块的状态。然后用变量就行了,cv这笨法子老蠢了。

变量(并非每一个!!!)需要在一个单独的文件中定义. 你可以有多个变量json文件。用相同的名字定义两个变量(即使是在不同文件中)会导致后定义的变量覆盖先定义的变量。变量json文件必须以 .var.json 结尾。变量json文件必须与机械的jsons在同一个文件夹,变量json加载优先级高于机械优先级。


变量的样例: 此为上一页的样例中离心机底部的"外壳":

{
    "x": 1,
    "y": -1,
    "z": 2,
    "elements": [
        "modularmachinery:blockcasing",
        "modularmachinery:blockinputitem",
        "modularmachinery:blockinputenergy",
        "modularmachinery:blockoutputitem",
        "modularmachinery:blockoutputfluid"
    ]
}

变量文件 (假如它叫 "variables.var.json") 里面的内容应该是这样:

{
    "iron_centrifuge_casing": [
        "modularmachinery:blockcasing",
        "modularmachinery:blockinputitem",
        "modularmachinery:blockinputenergy",
        "modularmachinery:blockoutputitem",
        "modularmachinery:blockoutputfluid"
    ]
}

当然,你也可以在同一个变量json文件中定义多个变量,用逗号分开即可。变量的定义值不能有其他变量。 使用变量之后的效果:

{
    "x": 1,
    "y": -1,
    "z": 2,
    "elements": "iron_centrifuge_casing"
}

短多了是不是。

Tr:垠儿 Eicy