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 [2024/06/02 16:39] – [创建新的常用标签] sjk1949zh_cn:tutorial:tags [2024/06/02 16:58] – 增添新的内容 sjk1949
Line 3: Line 3:
  
 ===== 标签示例 ===== ===== 标签示例 =====
 +
 +==== 在 JSON 文件中定义 ====
 +
 文件位置:''src/main/resources/data/tutorial/tags/blocks/example_ores.json'' 文件位置:''src/main/resources/data/tutorial/tags/blocks/example_ores.json''
 <code javascript> <code javascript>
Line 12: Line 15:
 } }
 </code> </code>
 +
 ''"replace"'' 标签决定了模组是否要从标签中移除该文件中未提及的其他物品。不建议设为true,且破坏和其他模组的兼容性。文件路径的 ''blocks'' 也可以是 ''items'' 或者 ''fluids'',用于表示不同的类型。多个词语用下划线隔开,且标签名称使用复数形式(不可数名词除外)。 ''"replace"'' 标签决定了模组是否要从标签中移除该文件中未提及的其他物品。不建议设为true,且破坏和其他模组的兼容性。文件路径的 ''blocks'' 也可以是 ''items'' 或者 ''fluids'',用于表示不同的类型。多个词语用下划线隔开,且标签名称使用复数形式(不可数名词除外)。
  
-如需注册标签并在代码中使用,你需要这样使用:+==== 在代码中使用标签 ==== 
 + 
 +在一些情况下,你可能想要在代码中使用带有标签的注册物品。比如,像 ''Block#isIn'' 一类的方法需要这些标签参数。除此之外,例如 ''FlammableBlockRegistry'', ''FuelRegistry'' 以及 ''CompostingChanceRegistry'' 这样的 Fabric 注册表也接受方块标签或者物品标签。 
 + 
 +原版的标签物品可以在 ''<yarn class_3481>'' 和 ''<yarn class_3489>'' 类中找到。如需注册标签并在代码中使用,你需要这样使用: 
 === 1.19.3 及以上 === === 1.19.3 及以上 ===
 +
 <yarncode java> <yarncode java>
 public class ModBlockTags { public class ModBlockTags {
Line 31: Line 41:
  
 === 1.18.1 及以下(需要 Fabric API) === === 1.18.1 及以下(需要 Fabric API) ===
 +
 <yarncode java> <yarncode java>
 public class ModBlockTags { public class ModBlockTags {
Line 38: Line 49:
  
 === 1.17 及以下,不含 1.17.1(需要 Fabric API) === === 1.17 及以下,不含 1.17.1(需要 Fabric API) ===
 +
 <yarncode java> <yarncode java>
 public class ModBlockTags { public class ModBlockTags {
Line 44: Line 56:
 </yarncode> </yarncode>
  
-注意 ''TagRegistry'' 自从 Fabric API 0.46.0 已经弃用,此时已有 ''TagFactory'',但不支持 1.17。+注意由于 ''TagFactory'' 的出现,''TagRegistry'' 自从 Fabric API 0.46.0 已经弃用''TagRegistry'' 可以在我的世界1.17及低于1.17的版本使用,因为这些版本的 Fabric API 没有收到 ''TagFactory'' 的更新
  
 ===== 常用标签和模组标签 ===== ===== 常用标签和模组标签 =====
Line 63: Line 75:
 标签名应使用平面结构而不是层次结构。比如,''c:iron_ores'' 比 ''c:ores/iron'' 更可取。 标签名应使用平面结构而不是层次结构。比如,''c:iron_ores'' 比 ''c:ores/iron'' 更可取。
 ==== 已存在的常用标签 ==== ==== 已存在的常用标签 ====
 +
 +Fabric API在其 ''Fabric-conconventional-tags-v1'' 模块中发布了常用标签的定义。提供的标签可以在 [[https://github.com/FabricMC/fabric/tree/HEAD/fabric-convention-tags-v1/src/generated/resources/data/c/tags|这里]] 查看。
 +
 +一个(可能过时的)普遍得到认可的常用标签目录可以在 [[community:common_tags|一个单独的页面]] 看到。
  
 常用标签的列表请参考[[tutorial:tags#Existing Common Tags|英文页面]],其内容[[https://github.com/fabric-community/fabric-convention-tags|由脚本自动生成]]。如果你的物品适用于这些标签中的一个,则应该将其添加到这个标签而非定义你自己的。如果你的模组的配方与其他模组兼容,则在配方中将物品替换为 ''#c:标签名称'' 常用标签的列表请参考[[tutorial:tags#Existing Common Tags|英文页面]],其内容[[https://github.com/fabric-community/fabric-convention-tags|由脚本自动生成]]。如果你的物品适用于这些标签中的一个,则应该将其添加到这个标签而非定义你自己的。如果你的模组的配方与其他模组兼容,则在配方中将物品替换为 ''#c:标签名称''
zh_cn/tutorial/tags.txt · Last modified: 2024/06/30 10:07 by solidblock