LeashedPlayer/src/main/java/com/r3944realms/leashedplayer/content/effects/ModEffectRegister.java
3944Realms 4e005d8e91 2025/01/28
版本更新至1.21.3_0.0.3.9.9
迁移大部分1.21版本本模组的内容到1.21.3
1.药水拴绳箭
2.Neoforge物品
3.全身可戴物品
2025-01-28 20:29:52 +08:00

34 lines
1.4 KiB
Java

package com.r3944realms.leashedplayer.content.effects;
import com.r3944realms.leashedplayer.LeashedPlayer;
import com.r3944realms.leashedplayer.content.effects.type.NoLeashEffect;
import net.minecraft.core.registries.Registries;
import net.minecraft.world.effect.MobEffect;
import net.minecraft.world.effect.MobEffectCategory;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredHolder;
import net.neoforged.neoforge.registries.DeferredRegister;
import java.util.function.Supplier;
public class ModEffectRegister {
public static DeferredRegister<MobEffect> MOB_EFFECT = DeferredRegister.create(Registries.MOB_EFFECT, LeashedPlayer.MOD_ID);
public static DeferredHolder<MobEffect, ? extends MobEffect> NO_LEASH_EFFECT = register(
"no_leash",
() -> new NoLeashEffect(MobEffectCategory.NEUTRAL, 12063764)
);
public static <T extends MobEffect>DeferredHolder<MobEffect, T> register(String name, Supplier<T> effect) {
return MOB_EFFECT.register(name, effect);
}
public static String getEffectKey(MobEffect effect) {
return effect.getDescriptionId();
}
public static String getModEffectKey(DeferredHolder<MobEffect, ? extends MobEffect> effect) {
return getEffectKey(effect.get());
}
public static void register(IEventBus eventBus) {
MOB_EFFECT.register(eventBus);
}
}