Skip to content

基本说明

覆雪模型比较特殊,由于涉及到游戏内容交互,所以需要在必要时定义服务器数据。

其为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

可以用于一些数值类型的属性。