自 1.17 以来,挖掘等级以及工具分配的方式发生了显著变化,只需要将方块添加到特定的标签中即可。
要定义使用哪种工具挖掘你的方块,你需要将方块的 id 添加到 tags/blocks/mineable
中对应工具(pickaxe.json
、axe.json
等)的标签中。
{ "replace": false, "values": [ "tutorial:example_ore_block", "tutorial:example_cobblestone_block" ] }
Fabric API 也提供了两个额外的标签:fabric:mineable/sword
和 fabric:mineable/shears
,用于可以被剑或者剪刀破坏的方块,你可以将标签放在 resources/data/fabric/tags/blocks/mineable/
中。
要为方块添加下界合金以下的挖掘等级,你需要将其添加到以下标签中:
石质或更高 -> needs_stone_tool.json 铁质或更高 -> needs_iron_tool.json 钻石或更高 -> needs_diamond_tool.json
这里我们让我们的 late-game 矿石变种需要钻石工具才能挖掘:
{ "replace": false, "values": [ "tutorial:example_late_game_ore", "tutorial:example_late_game_deepslate_ore" ] }
Fabric API 为钻石以上的挖掘等级提供了动态的标签,同时也提供了木质(挖掘等级 0)的挖掘等级。动态挖掘等级标签的格式为 fabric:needs_tool_level_N
,其中 N
是需要的工具等级,是整数。例如,下界合金(挖掘等级 4)的挖掘等级标签是 fabric:needs_tool_level_4
。动态的标签是自动检查的。你可以将这些标签放置在 resources/fabric/tags/blocks/
中。
{ "replace": false, "values": [ "tutorial:example_tough_block", "tutorial:example_netherite_anvil_block" ] }
对于没有修改挖掘等级的方块,默认的挖掘等级是 -1(徒手挖掘)。
你需要将你的工具添加到 Fabric 的工具标签中以支持模组中的方块。
将镐子添加到 pickaxes
标签的例子:
{ "replace": false, "values": [ "tutorial:example_pickaxe" ] }