介绍
此库用于配合我的一些模组,这些模组需要更具体的事件来实现效果。此模组不会添加任何物品,也不会以任何方式改变游戏。除非另一个模组需要它并使用这些额外事件,否则它对玩家没有任何实际用途。
它添加了一个名为 MobEffectTickEvent 的事件,模组开发者可以通过该事件获取效果持续时间的剩余百分比,以及效果实例和实体(如有需要)。
// MobEffectTickEvent 示例
@SubscribeEvent
public static void onMobEffectTick(MobEffectTickEvent event) {
float percentageLeft = event.getPercentageLeft();
String entityName = event.getEntity().getName().getString();
String effectName = event.getEffectInstance().getEffect().value().toString();
System.out.println("实体:" + entityName
+ " 受到效果:" + effectName
+ ",剩余持续时间为 " + percentageLeft + "%。");
if (percentageLeft == 50.0f) {
System.out.println(entityName + "身上的效果 " + effectName + " 已持续至 50%。");
}
if (percentageLeft == 20.0f) {
System.out.println(entityName + "身上的效果 " + effectName + " 已持续至 20%。");
}
}
它还添加了一个在效果消失时运行一次的方法。在我的 Fargo’s Talismans 模组中,我用它来移除由 pedestal 添加到玩家身上的属性,而不是通过 PlayerTick 方法来实现。
// onEffectRemoved 示例(位于 MobEffectEndEffect 扩展类中)
@Override
public void onEffectRemoved(LivingEntity entity, int amplifier) {
super.onEffectRemoved(entity, amplifier);
if (entity instanceof Player) {
System.out.println("效果已消失。");
}
}
常见问题
EventsLib 支持哪些 Minecraft 版本?
EventsLib 支持 Minecraft Java 版 1.21–26.1.2,共 7 个版本,可用的加载器:NeoForge。下载时注意选择和你游戏版本一致的文件。
EventsLib 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端和服务端都要装。
STS15 的其他作品
查看全部 →EnderDrives
添加类似 AE2 驱动器的末影箱功能
Fargo’s Talismans
Fargo's Talismans 为 Minecraft 添加了多种护符,灵感来自泰拉瑞亚模组 Fargo's Soul Mod,每种护符都有独特能力。
Faster Ladders
Spiritual Sucessor to Faster Ladder Climbing
Dimensional Trial Chambers
Dimensional Trial Chambers adds in a nether and end themed trial chamber, with fully custom loot tables and mob spawns for a unique experience.
评论
登录后评论和评分