diff --git a/eco-core/core-plugin/src/main/java/com/willfp/talismans/talismans/util/TalismanChecks.java b/eco-core/core-plugin/src/main/java/com/willfp/talismans/talismans/util/TalismanChecks.java index 70c9f1c..946eaaa 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/talismans/talismans/util/TalismanChecks.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/talismans/talismans/util/TalismanChecks.java @@ -1,6 +1,8 @@ package com.willfp.talismans.talismans.util; +import com.willfp.eco.util.config.Configs; +import com.willfp.eco.util.config.updating.annotations.ConfigUpdater; import com.willfp.talismans.talismans.Talisman; import com.willfp.talismans.talismans.Talismans; import lombok.experimental.UtilityClass; @@ -19,6 +21,8 @@ import java.util.Set; @UtilityClass public class TalismanChecks { + private static boolean readEnderChest = true; + /** * Does the specified ItemStack have a certain Talisman present? * @@ -93,6 +97,17 @@ public class TalismanChecks { found.add(talisman); } + if (readEnderChest) { + for (ItemStack itemStack : player.getEnderChest()) { + Talisman talisman = getTalismanOnItem(itemStack); + if (talisman == null) { + continue; + } + + found.add(talisman); + } + } + return found; } @@ -107,4 +122,9 @@ public class TalismanChecks { @NotNull final Talisman talisman) { return getTalismansOnPlayer(player).contains(talisman); } + + @ConfigUpdater + public static void reload() { + readEnderChest = Configs.CONFIG.getBool("read-enderchest"); + } } diff --git a/eco-core/core-plugin/src/main/resources/config.yml b/eco-core/core-plugin/src/main/resources/config.yml index 876c714..6bc66c0 100644 --- a/eco-core/core-plugin/src/main/resources/config.yml +++ b/eco-core/core-plugin/src/main/resources/config.yml @@ -15,6 +15,8 @@ strengths: relic: color: "&d" +read-enderchest: true # If a player's inventory should be checked for talismans + drops: ### ADVANCED OPTIONS collate: false