Skip to content

注册项

几乎 Minecraft 中的所有东西都使用一种格式来辨识各自的种类,例如 minecraft:stone。这一般被称作命名空间 ID(详细内容可点击链接查看)。WorldEdit 保持着一些注册项,允许它们读取方块、物品、生物群系、实体、流体以及其他在当前的 Minecraft 平台上以不依赖平台的方式创建的 ID。

这些注册项在大多数以 *Type 命名的类上可用,例如 BlockTypeItemType。但是,非常推荐只使用 *Types,这会在返回非内建类型,例如模组方块时返回 null 或 get 方法,以此防止出错。

注意:

这些注册项的常量可能会为 null,因为 API 不会在 Minecraft 版本之间产生变动,所以这就意味着某些方块不存在于低版本的 Minecraft 中,或者像 1.13 那样,方块的 ID 被改成英文 ID 而不是数字 ID,这就导致在 1.12 的 WorldEdit 不能正确地识别这些内容。[1]若你需要这么一个方块,你必须将这些内容包装使得它们能访问 Objects.requireNonNull 中的常量,或者相似的检查代码,以确保它不会在运行时出现常量缺失的情况。

贡献者

页面历史


  1. 这里的识别问题仅针对跨版本存档描述,单方块图案一类的内容不受影响。 ↩︎