Updated libreforge

This commit is contained in:
Auxilor 2022-02-05 14:11:34 +00:00
parent 61f131b480
commit a908723e8b
3 changed files with 244 additions and 10 deletions

View File

@ -3,6 +3,6 @@ version rootProject.version
subprojects {
dependencies {
implementation 'com.willfp:libreforge:3.14.2'
implementation 'com.willfp:libreforge:3.14.3'
}
}

View File

@ -89,10 +89,6 @@ public class EcoEnchantsPlugin extends LibReforgePlugin {
@Override
public void handleEnableAdditional() {
for (Config config : customEnchantsYml.getSubsections("chains")) {
EffectChains.compile(config, "Custom Enchant Chains");
}
this.getLogger().info(EcoEnchants.values().size() + " Enchantments Loaded");
TelekinesisUtils.registerTest(player -> FastItemStack.wrap(player.getInventory().getItemInMainHand()).getLevelOnItem(EcoEnchants.TELEKINESIS, false) > 0);

View File

@ -3,18 +3,252 @@ package com.willfp.ecoenchants.enchantments;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import com.google.common.collect.ImmutableList;
import com.willfp.eco.core.config.interfaces.Config;
import com.willfp.eco.core.config.updating.ConfigUpdater;
import com.willfp.eco.core.fast.FastItemStack;
import com.willfp.ecoenchants.EcoEnchantsPlugin;
import com.willfp.ecoenchants.enchantments.custom.CustomEcoEnchants;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.*;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.*;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.*;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.*;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.*;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.AngerArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.AshArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.CloudsArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.CopperArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.CrimsonArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.DamageArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.DragonArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.DustArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.EmeraldArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.EnchantmentArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.EndArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.FireArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.GlowArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.HeartArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.HoneyArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.InkArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.LavaArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.LimeArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.MagicArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.MagmaArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.MusicArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.NautilusArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.NetherArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.RainArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.RedstoneArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SlimeArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SmokeArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SnowArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SoulArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SoulFireArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SparkArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SparkleArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SporeArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.SweepArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.TearArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.TotemArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.VillagerArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.WarpedArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.WaterArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.WaxArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.WitchArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.artifact.ZapArtifact;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.BreaklessnessCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.CallingCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.DecayCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.FragilityCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.HarmlessnessCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.HungerCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.InaccuracyCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.MisfortuneCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.curse.PermanenceCurse;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Abattoir;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Abrasion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Aerial;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Aquatic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Arachnid;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Arborist;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Arcanic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Atmospheric;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Backstab;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Beheading;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.BlastMining;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Bleed;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Blind;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.BlockBreather;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.BossHunter;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Buckshot;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Butchering;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Cerebral;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Chopless;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Cleave;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Collateral;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Conclude;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Corrosive;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Cranial;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Criticals;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Cubism;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Defender;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Deflection;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Defusion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Dexterous;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Disable;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Disappear;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Diurnal;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Diverse;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Dousing;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Drill;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Dullness;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Dweller;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Economical;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Electroshock;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.EndInfusion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.EnderSlayer;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Enderism;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Evasion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Extinguishing;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Extract;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Famine;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Farmhand;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Fetching;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Finality;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Finishing;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.FireAffinity;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.FirstStrike;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Flinch;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Forcefield;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Freerunner;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Frozen;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Fury;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Goliath;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Graceful;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Grapple;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.GreenThumb;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Grit;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Hellish;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Hook;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Horde;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.IceShot;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Identify;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Ignite;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.IllusionAspect;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Impact;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Incandescence;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.InfernalTouch;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Inferno;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Infuriate;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Insecticide;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Instantaneous;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Introversion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Invigoration;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Kinetic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Launch;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Leeching;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Lesion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Levitate;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.LiquidShot;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.LuckyCatch;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Lumberjack;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Magnetic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Marking;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Marksman;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Necrotic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.NetherInfusion;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Netheric;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Nocturnal;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Optics;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Oxygenate;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Pacify;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Paladin;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Paralyze;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Parasitic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Parry;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Phantasm;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Plasmic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Protector;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Proximity;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Puncture;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Quadrilateralism;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Radiance;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Rage;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Rapid;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Reaper;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Rebounding;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Reel;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Reinforcement;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Rejuvenation;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Replenish;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Respirator;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Revenant;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Sating;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Serrated;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Settle;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Shockwave;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.ShotAssist;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Sickening;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Slaughter;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Slicing;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Spearfishing;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Spiked;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Splash;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Stab;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Stalwart;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Stamina;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.StoneSwitcher;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.StrayAspect;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Succession;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Supercritical;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Sycophant;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Tectonic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Telekinesis;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Thor;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Thrive;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Tornado;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Toxic;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Transfuse;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Tripleshot;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.VampireAspect;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Vein;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Venom;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.VoidAffinity;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Voltage;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.WaterAffinity;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.WaterAspect;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Weakening;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Wisdom;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.WoodSwitcher;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Wound;
import com.willfp.ecoenchants.enchantments.ecoenchants.normal.Zeus;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Aiming;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Annihilate;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Bladed;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Bolt;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Carve;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Confusion;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Energizing;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Force;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Frenzy;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Harpoon;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Indestructibility;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Instability;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Intellect;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.LifeSteal;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Pentashot;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Preservation;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Prosperity;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Razor;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Repairing;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Soulbound;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Spring;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Streamlining;
import com.willfp.ecoenchants.enchantments.ecoenchants.special.Volatile;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Ascend;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Charge;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Dynamite;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Missile;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Quake;
import com.willfp.ecoenchants.enchantments.ecoenchants.spell.Vitalize;
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
import com.willfp.ecoenchants.enchantments.support.vanilla.VanillaEnchantments;
import com.willfp.ecoenchants.integrations.registration.RegistrationManager;
import com.willfp.libreforge.chains.EffectChains;
import lombok.experimental.UtilityClass;
import org.bukkit.NamespacedKey;
import org.bukkit.inventory.ItemStack;
@ -335,6 +569,10 @@ public class EcoEnchants {
*/
@ConfigUpdater
public static void update(@NotNull final EcoEnchantsPlugin plugin) {
for (Config config : plugin.getCustomEnchantsYml().getSubsections("chains")) {
EffectChains.compile(config, "Custom Enchant Chains");
}
CustomEcoEnchants.update(plugin);
for (EcoEnchant ecoEnchant : new HashSet<>(values())) {