基本说明¶
覆雪模型比较特殊,由于涉及到游戏内容交互,所以需要在必要时定义服务器数据。
其为json文件,在资源包的放置根目录路径为assets/<命名空间>/eclipticseasons/snow_definitions.
在数据包放置路径为data/<命名空间>/eclipticseasons/snow_definitions
文件内容¶
如果将该文件放于数据包,可以用于数据交互,如是否可以扫雪、滑雪(模组兼容)等。 如果放于模型包,则无法改变一些属性,但是仍然可以改变模型。 对于模型,通常而言,覆雪模型可以具有通用性,比如杜鹃木板竖半砖和橡木板竖半砖,它们模型不应该有太多区别。
定义示例¶
下方展示了一个用于粉色小花的覆雪模型。
{
"blocks": "minecraft:pink_petals",
"mid": "eclipticseasons:snowy_pink_petals",
"flag": 1001,
"offset": 1
}
参数说明¶
参数:blocks【String|Object】¶
用于定义方块应用对象,可以是id,tag(#开头的字符),或者是HolderSet。但是HolderSet过于复杂,推荐一般使用标签或者id即可。
参数:mid【String】¶
指向在模型映射中的id。
可选参数:mid2【String】¶
指向在模型映射中的id,对于树叶等方块来说,这里可以写位于非顶层的模型映射id。
可选参数:flag【Int】¶
一些特殊方块需要设置这个属性。
| Flag | 含义 |
|---|---|
| 1000(默认值) | 基础状态,在使用光影时会改变方块类型。 |
| 1001 | 覆雪的草、花等。 |
| 1100 | 覆雪的树叶类,顶层。 |
| 1101 | 覆雪的树叶类,下层。 |
| 1200 | 覆雪的藤蔓等,不需要计算高度偏移值。 |
未来也许会改变为其他方式。如果你希望用一点魔法来偷懒,也可以将flag设置为999或998(自动构建面,前者为无AO),我们会自动生成覆雪模型而无需你手写。
当然,最好的方式是您提供模型,这样会最美观。
可选参数:offset【Int】¶
这个参数用于设置植物类方块到地面方块的偏移值,注意其一般为正数。
待定参数:ignore_offset【Bool】¶
目前计划添加该参数用于控制是否需要使用偏移值。
待定参数:snow_passable【Bool】¶
目前计划添加该参数用于是否雪可以穿过该方块,这将有助于进一步扩展,也许未来可以更容易的制作覆雪的竹子、底部栅栏等模型。
待定参数:properties【Object Array】(即将推出)¶
这个参数一般应该用于数据包,对于常规BlockState,模型映射文件已经足够区分。此处为设置某些方块状态不覆雪而使用。 此处列表的含义为全,即需要全匹配。
子参数:name【String】
方块的属性名称。
可选子参数:reverse【Bool】
是否翻转判断结果。
子参数:matcher【Object】
用于匹配,有两种类型,一种是精确匹配,一种是范围匹配。
子对象:精确匹配¶
提供一个结果即可。
{"value": "..."}
子对象:范围匹配¶
- 可选子参数:ignore_min、ignore_max
- 可选子参数:min、max
可以用于一些数值类型的属性。