From 1e0309e18edf5e06906460c016976d907a7dff39 Mon Sep 17 00:00:00 2001 From: QarthO Date: Tue, 19 Dec 2023 03:33:36 -0500 Subject: [PATCH] "/xpboosts list" command now properly pulls all boosts from config --- .../qxpboosts/boost/BoostManager.java | 36 +++++++++---------- .../quartzdev/qxpboosts/commands/CMDlist.java | 10 +++--- .../java/gg/quartzdev/qxpboosts/qConfig.java | 2 +- .../gg/quartzdev/qxpboosts/util/Language.java | 2 +- 4 files changed, 24 insertions(+), 26 deletions(-) diff --git a/src/main/java/gg/quartzdev/qxpboosts/boost/BoostManager.java b/src/main/java/gg/quartzdev/qxpboosts/boost/BoostManager.java index 5ef8b14..aae7de1 100644 --- a/src/main/java/gg/quartzdev/qxpboosts/boost/BoostManager.java +++ b/src/main/java/gg/quartzdev/qxpboosts/boost/BoostManager.java @@ -18,9 +18,9 @@ public class BoostManager { qConfig config; qLogger logger; - HashMap boosts; + HashMap boostsMap; HashMap playerTracker; - HashMap boostTracker; + Set activeBoosts; Boost defaultBoost; @@ -29,10 +29,12 @@ public BoostManager(){ this.config = this.plugin.config; this.logger = this.plugin.logger; - this.boosts = new HashMap<>(); + this.boostsMap = new HashMap<>(); this.playerTracker = new HashMap<>(); - this.boostTracker = new HashMap<>(); + this.activeBoosts = new HashSet<>(); this.defaultBoost = new Boost("default", 1.25); + + this.loadBoosts(); } public @NotNull Boost getBoost(Player player){ @@ -46,19 +48,22 @@ public BoostManager(){ } public boolean isActive(Boost boost){ - return boostTracker.get(boost); + return activeBoosts.contains(boost); } public void enable(Boost boost){ - boostTracker.put(boost, true); + activeBoosts.add(boost); } public void disable(Boost boost){ - boostTracker.put(boost, false); + activeBoosts.remove(boost); } public void loadBoosts(){ - + Set boosts = this.config.getBoosts(); + for(Boost boost : boosts){ + this.boostsMap.put(boost.getName(), boost); + } } public Set listBoosts(){ @@ -66,7 +71,7 @@ public Set listBoosts(){ boostList.add(this.getBoostInfo(this.defaultBoost)); - for(Boost boost : boosts.values()) + for(Boost boost : boostsMap.values()) boostList.add(this.getBoostInfo(boost)); return boostList; @@ -74,18 +79,13 @@ public Set listBoosts(){ public String getBoostInfo(Boost boost){ - String boostStatus = Language.BOOST_STATUS_ERROR.toString(); - - if(boostTracker.get(boost) != null) - boostStatus = (boostTracker.get(boost)) ? Language.BOOST_STATUS_ACTIVE.toString() : Language.BOOST_STATUS_DISABLED.toString(); + String boostStatus = (this.isActive(boost)) ? Language.BOOST_STATUS_ACTIVE.toString() : Language.BOOST_STATUS_DISABLED.toString(); - String bootInfo = Language.BOOST_INFO.toString() + return Language.BOOST_INFO.toString() .replaceAll("", WordUtils.capitalizeFully(boost.getName())) - .replaceAll("", String.valueOf(defaultBoost.getMultiplier())) - .replaceAll("", boostStatus) - .replaceAll("", Language.CHAT_PREFIX.name()); + .replaceAll("", String.valueOf(boost.getMultiplier())) + .replaceAll("", boostStatus); - return bootInfo; } } diff --git a/src/main/java/gg/quartzdev/qxpboosts/commands/CMDlist.java b/src/main/java/gg/quartzdev/qxpboosts/commands/CMDlist.java index 1ed3e06..bd19cb6 100644 --- a/src/main/java/gg/quartzdev/qxpboosts/commands/CMDlist.java +++ b/src/main/java/gg/quartzdev/qxpboosts/commands/CMDlist.java @@ -5,6 +5,7 @@ import gg.quartzdev.qxpboosts.util.qUtil; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.minimessage.MiniMessage; +import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import java.util.Set; @@ -19,13 +20,10 @@ public CMDlist(String name, String label) { @Override public boolean logic(CommandSender sender, String[] args) { - +// Boost list Set boostList = qXpBoosts.getInstance().boostManager.listBoosts(); - - String message = String.join("", boostList); - MiniMessage mm = MiniMessage.miniMessage(); - Component component = mm.deserialize(message); - sender.sendMessage(component); + String message = String.join("", boostList); + qUtil.sendMessage(sender, message); return false; } diff --git a/src/main/java/gg/quartzdev/qxpboosts/qConfig.java b/src/main/java/gg/quartzdev/qxpboosts/qConfig.java index d5a46a4..77d7df7 100644 --- a/src/main/java/gg/quartzdev/qxpboosts/qConfig.java +++ b/src/main/java/gg/quartzdev/qxpboosts/qConfig.java @@ -110,7 +110,7 @@ public Set getBoosts(){ Set boosts = new HashSet<>(); ConfigurationSection boostsSection = this.file.getConfigurationSection("boosts"); for(String boostName : boostsSection.getKeys(false)){ - boosts.add(new Boost(boostName, (double) boostsSection.get(boostName))); + boosts.add(new Boost(boostName, boostsSection.getDouble(boostName))); } return boosts; } diff --git a/src/main/java/gg/quartzdev/qxpboosts/util/Language.java b/src/main/java/gg/quartzdev/qxpboosts/util/Language.java index 6131908..4267696 100644 --- a/src/main/java/gg/quartzdev/qxpboosts/util/Language.java +++ b/src/main/java/gg/quartzdev/qxpboosts/util/Language.java @@ -18,7 +18,7 @@ public enum Language { XP_CHAT_GAIN(" Gained x XP"), // Boost - BOOST_INFO(" - - "), + BOOST_INFO(" - - "), BOOST_STATUS_ERROR("Error"), BOOST_STATUS_ACTIVE("Active"), BOOST_STATUS_DISABLED("Disabled");