From 9b3a2876e965e7ffe493ba5130d64b2dd7ab7ea5 Mon Sep 17 00:00:00 2001 From: _OfTeN_ Date: Sun, 5 Dec 2021 16:39:30 +0300 Subject: [PATCH] /ecoarmor give command will now use default tier from slot if no tier has been specified in the command rather than just default tier --- .../com/willfp/ecoarmor/commands/CommandGive.java | 7 ++----- .../java/com/willfp/ecoarmor/sets/ArmorSet.java | 13 +++++++++++++ 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/commands/CommandGive.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/commands/CommandGive.java index 9d3bc2f..4e5f026 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/commands/CommandGive.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/commands/CommandGive.java @@ -170,17 +170,14 @@ public class CommandGive extends Subcommand { } } - if (tier == null) { - tier = Tiers.getDefaultTier(); - } - for (ArmorSlot slot : slots) { items.add(advanced ? set.getAdvancedItemStack(slot) : set.getItemStack(slot)); } for (ItemStack item : new ArrayList<>(items)) { + Tier currTear = tier != null ? tier: set.getDefaultTier(ArmorSlot.getSlot(item)); items.remove(item); - ArmorUtils.setTier(item, tier); + ArmorUtils.setTier(item, currTear); items.add(item); } } diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/ArmorSet.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/ArmorSet.java index 1a0bb5f..9133a85 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/ArmorSet.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/ArmorSet.java @@ -10,6 +10,7 @@ import com.willfp.eco.core.items.builder.ItemStackBuilder; import com.willfp.eco.core.items.builder.LeatherArmorBuilder; import com.willfp.eco.core.items.builder.SkullBuilder; import com.willfp.eco.core.recipe.Recipes; +import com.willfp.ecoarmor.EcoArmorPlugin; import com.willfp.ecoarmor.sets.meta.ArmorSlot; import com.willfp.ecoarmor.sets.util.ArmorUtils; import com.willfp.ecoarmor.upgrades.Tier; @@ -346,6 +347,18 @@ public class ArmorSet { return advancedItems.get(slot); } + /** + * Get default tier for slot. + * + * @param slot The slot. + * @return The tier. + */ + public Tier getDefaultTier(@Nullable final ArmorSlot slot) { + if (slot == null) return Tiers.getDefaultTier(); + Tier tier = Tiers.getByName(this.config.getSubsection(slot.name().toLowerCase()).getString("defaultTier")); + return tier != null ? tier: Tiers.getDefaultTier(); + } + @Override public boolean equals(final Object o) { if (this == o) {