User Tools

Site Tools


zh_cn:tutorial:tags

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
zh_cn:tutorial:tags [2022/03/05 02:40] – [标签示例] xtexchooserzh_cn:tutorial:tags [2022/12/16 02:40] solidblock
Line 3: Line 3:
  
 ===== 标签示例 ===== ===== 标签示例 =====
-文件位置:''src/main/resources/data/examplemod/tags/blocks/example_ores.json''+文件位置:''src/main/resources/data/tutorial/tags/blocks/example_ores.json''
 <code javascript> <code javascript>
 { {
     "replace": false,     "replace": false,
     "values": [     "values": [
-        "examplemod:example_ore"+        "tutorial:example_ore"
     ]     ]
 } }
Line 15: Line 15:
  
 如需注册标签并在代码中使用,你需要这样使用: 如需注册标签并在代码中使用,你需要这样使用:
 +=== 1.19.3 及以上 ===
 +<yarncode java>
 +public class ModBlockTags {
 +  public static final TagKey<class_2248> EXAMPLE_ORES = class_6862.method_40092(class_7924.field_41254, new class_2960("tutorial", "example_ores"));
 +}
 +</yarncode>
  
-==== 1.18.2及更高====+=== 1.19.2 及以下 ===
  
-<code java> +<yarncode java> 
-import net.minecraft.block.Block; +public class ModBlockTags 
-import net.minecraft.tag.TagKey; +  public static final TagKey<class_2248> EXAMPLE_ORES = class_6862.method_40092(class_2378.BLOCK_KEY, new class_2960("tutorial", "example_ores"));
-import net.minecraft.util.Identifier; +
-import net.minecraft.util.registry.Registry; +
-  +
-public class BlockTags +
-  public static final TagKey<Block> EXAMPLE_ORES = TagKey.of(Registry.BLOCK_KEY, new Identifier("examplemod", "example_ores"));+
 } }
-</code>+</yarncode>
  
 +=== 1.18.1 及以下(需要 Fabric API) ===
 +<yarncode java>
 +public class ModBlockTags {
 +  public static final Tag<class_2248> EXAMPLE_ORES = TagFactory.BLOCK.create(new class_2960("tutorial", "example_ores"));
 +}
 +</yarncode>
  
-==== 1.18.1及以下(需要 Fabric API) ==== +=== 1.17 及以下,不含 1.17.1(需要 Fabric API) === 
-<code java> +<yarncode java> 
-import net.fabricmc.fabric.api.tag.TagRegistry; +public class ModBlockTags 
-import net.minecraft.block.Block; +  public static final Tag<class_2248> EXAMPLE_ORES = TagRegistry.block(new class_2960("tutorial", "example_ores"));
-import net.minecraft.tag.Tag; +
-import net.minecraft.util.Identifier; +
- +
-public class BlockTags +
-  public static final Tag<Block> EXAMPLE_ORES = TagRegistry.block(new Identifier("examplemod", "example_ores"));+
 } }
-</code>+</yarncode> 
 + 
 +注意 ''TagRegistry'' 自从 Fabric API 0.46.0 已经弃用,此时已有 ''TagFactory'',但不支持 1.17。 
 ===== 常见标签和模组标签 ===== ===== 常见标签和模组标签 =====
 如果你的标签仅仅适用于你的模组,其他的模组不太可能有类似物品,或则你尤其只需要将你的模组的物品包含到标签中,则使用 ''你的模组id:你的标签'',即上面的这个例子。如果你的模组添加其他模组也会添加的物品,你可以: 如果你的标签仅仅适用于你的模组,其他的模组不太可能有类似物品,或则你尤其只需要将你的模组的物品包含到标签中,则使用 ''你的模组id:你的标签'',即上面的这个例子。如果你的模组添加其他模组也会添加的物品,你可以:
zh_cn/tutorial/tags.txt · Last modified: 2023/08/15 01:30 by wjz_p