
生成蛋 BYID 重定向
同类型刷怪蛋兼容所需
面向用户:
某些模组可能依赖本模组在后台执行的操作才能正常运行。只需在客户端和服务端将其与任何需要它的模组一同安装即可。
使用场景:如果你安装的某个模组为同一种生物添加了多个刷怪蛋(例如针对不同变种),而其中一个刷怪蛋因此丢失了颜色,本模组或许能修复该颜色。
点击下方链接,并在结账时使用优惠码 “JACKBUSTERS” 即可享受服务器托管 25% 折扣。
面向开发者:
本模组会将 SpawnEggItem 构造函数中的 BY_ID#put() 调用改为 BY_ID#putIfAbsent()。虽然这一改动看似微小,但当你希望拥有多个使用相同实体类型的刷怪蛋时(例如,你想要生成变种的刷怪蛋),它会带来很大的不同。
以下是一个简短教程,介绍在添加诸如变种刷怪蛋之类的内容时如何使用本模组:
1) 创建一个继承 SpawnEggItem 的新类(Mojang 官方映射,请将其转换为你所选择映射中的对应类)。
2) 在你创建的类中创建一个类型为 SpawnEggItem 的公共静态 ArrayList,如下所示:
public static final ArrayList<SpawnEggItem> EGGS = new ArrayList<>();
3) 在你的构造函数中,将当前实例添加到你所创建的 ArrayList 中,如下所示:
super(entityType, i, j, properties);
[...]
EGGS.add(this);
4) 在你的 ClientModInitializer 中,为你的刷怪蛋注册颜色,如下所示:
@Override
public void onInitializeClient() {
WolfVariantEgg.EGGS.forEach((egg) ->
ColorProviderRegistry.ITEM.register((stack, tintIndex)
-> egg.getColor(tintIndex), egg));
}
5) 如果你现在运行该模组,你会注意到你的通用刷怪蛋(未指定变种的刷怪蛋)会丢失颜色。只要你没有对 BY_ID 映射做任何改动,这正是本模组无需你额外工作就能修复的问题。
大多数其他工作可能都需要通过重写 SpawnEggItem 的 useOn 方法来完成。我不会带你走一遍这个过程,因为它实际上与本模组无关,但如果你遇到任何问题可以告诉我,我可能会尝试帮忙。
正在加载版本记录…

正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。