Mineuniverse
Mods
EventsLib

EventsLib

MOD
An events library adding in missing event listeners
by STS15
Download Claim this project
1,504,337 downloads
0 likes
0 followers
Updated Oct 14, 2026
0 hypes
Follow0
API and Library
Advertisement Remove ads with Premium →

This library is intended to be used along side some of my mods that require more specific events for effects.  This mod adds in no items or changes the game in any way.  It has no beneficial use for players unless there is another mod that requires it and utilizes the additional events.

 

It adds in an event called MobEffectTickEvent which provides the modder with an interface to get the percentage left of the duration of the effect, as well as the effect instance and entity should you need any of those.

// Example for 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("Entity: " + entityName
                + " is affected by: " + effectName
                + " with " + percentageLeft + "% duration remaining.");
        
        if (percentageLeft == 50.0f) {
            System.out.println("Effect on " + entityName + " is at 50% duration for effect: " + effectName);
        }
        if (percentageLeft == 20.0f) {
            System.out.println("Effect on " + entityName + " is at 20% duration for effect: " + effectName);
        }
    }

 

It also adds in a method that is run once when the effect wears off.  In my Fargo's Talismans mod, I use this to remove the attributes that are added to the player by the pedestal, rather than by running a PlayerTick method.

    // Example for onEffectRemoved (In a MobEffectEndEffect extended class)
    @Override
    public void onEffectRemoved(LivingEntity entity, int amplifier) {
        super.onEffectRemoved(entity, amplifier);
        if (entity instanceof Player) {
            System.out.println("Effect has worn off.");
        }
    }
eventslib-26.1.2.5.jar
MC Client, NeoForge, Server, 26.1.2
Release 2026-08-06 Get
eventslib-1.0.57.jar
MC 1.21, NeoForge, 1.21.1
Release 2025-07-31 Get
eventslib-1.0.56.jar
MC 1.21, NeoForge, 1.21.1
Release 2025-01-07 Get
eventslib-1.0.55.jar
MC 1.21, NeoForge, 1.21.1
Release 2024-10-15 Get

More from STS15

Advertisement Remove ads with Premium →

You Might Also Like