天才一秒记住【第一中文网】地址:www.dyzww.cc
这一章原本是第六十四章的番外,但由于内容感觉十分水就去掉了。
所以这里就变成了多出来一章,写什么呢?
这一章我们不妨来填一下一些之前挖的坑。
我们在第二十六章讲到family参数时,提到了这么一句话:
『记分板、Nbt和标签可以很好的解决这个问题。但在了解这三个东西之前,我们暂且没有除多弄命令方块以外的更好的办法。』
计分板我们已经了解过了,Nbt我们会在100章开始进入正式学习阶段。
那么这个『标签』是什么东西?计分板标签吗?
我们知道,minecraft Java版可以装上各种第三方的模组加载器(mod Loader),其中最出名的就是minecraft Forge。在minecraft1.13版本更新之前,minecraft Forge内有一个重要的系统:矿物词典(oredictionary)。
『矿物词典』又是什么鬼?这跟『标签』有什么关系?
minecraft Forge官方文档中对『矿物词典』的定义如下:
『矿物词典(oredictionary)主要是为了mod间兼容而存在。
已注册到矿物词典的物品将能够代替其它拥有相同矿物词典名的物品。这样就可以使用以上任一物品合成相同的结果。
虽然名字是“矿物(ore)”词典,但是它也可以使用在非矿物的物品上。只要一个物品与另一个物品(比如染料)相似,就都可以注册进矿物词典,并通过矿物词典调用。』
举个例子,在工业时代2(Industrial craft 2)模组中添加了铜锭,沉浸工程(Immersive Engineering)模组中也添加了铜锭,这两个铜锭由于是不同模组所添加的,所以是不同的物品,这就导致一个问题:
假如我死活搞不到工业时代2的铜锭,只能搞到沉浸工程的铜锭,既然都是铜锭,为什么就不能通用啊!!!我还想造Ic2的机器呢!!!
于是,矿物词典就来了。沉浸工程的开发者只需要给自家的铜锭添加上一个铜锭的矿物词典(ingotcopper),工业时代2的开发者也只需要给自家的铜锭添加上一样的矿物词典(ingotcopper),然后你就会惊喜地发现,两边的铜锭可以通用了!
当然,实际情况肯定比这更加复杂,只不过我们又不开发模组,干嘛要去管这些更深层次的东西。我们只需要知道:
不同模组类似的物品可以注册到同一个矿物词典中,来使得不同模组的类似物品能够通用。
那么标签又是什么呢?
mc百科(mcmod.cn)中对标签的解释如下:
『数据包中的标签(tag)允许玩家使用JSoN文件将物品、方块、流体、实体类型和函数分组,标签在原版 1.13 及以上版本中替代了矿物词典的功能。』
需要注意,这里的原版指的是minecraft Java版,基岩版并没有什么矿物词典和这种类型的标签。
看起来很高端的样子啊?但其实这标签仅仅是一个官方逼死第三方的更高端的『矿物词典』。
和矿物词典一样,不同的物品也可以注册到同一个标签中,来使得不同模组的类似物品能够通用。
但在之前,矿物词典最多也仅仅能让物品在工作台中、熔炉中等特定功能性方块中才能通用,官方的标签却更上一层楼,使得类似物品几乎能在任何地方通用!
比如你可以给你自己开发的箭添加上arrows标签,你这个物品
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!