EventsLib
No reviews yet
An events library adding in missing event listeners
Neoforge is a fork of the Minecraft Forge available for versions 1.20.1+ of Minecraft. Many Forge mods are compatible with Neoforge and vice versa.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
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.");
}
}
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.");
}
}
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources