diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/EcoBoss.java b/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/EcoBoss.java index 8f0ea2c..ad76a6b 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/EcoBoss.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/EcoBoss.java @@ -442,8 +442,8 @@ public class EcoBoss extends PluginDependent { * * @return The effects. */ - public Set createEffects() { - Set effects = new HashSet<>(); + public List createEffects() { + List effects = new ArrayList<>(); this.effectNames.forEach((string, args) -> { effects.add(Effects.getEffect(string, args)); }); diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/effects/Effect.java b/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/effects/Effect.java index e8c8c6f..341092c 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/effects/Effect.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecobosses/bosses/effects/Effect.java @@ -9,6 +9,7 @@ import org.bukkit.entity.Player; import org.jetbrains.annotations.NotNull; import java.util.List; +import java.util.Objects; public abstract class Effect implements BossTicker { /** @@ -83,4 +84,21 @@ public abstract class Effect implements BossTicker { final long tick) { // Override when needed. } + + @Override + public boolean equals(final Object o) { + if (this == o) { + return true; + } + if (!(o instanceof Effect)) { + return false; + } + Effect effect = (Effect) o; + return Objects.equals(getArgs(), effect.getArgs()); + } + + @Override + public int hashCode() { + return Objects.hash(getArgs()); + } }