From 8bf502922d9646c0479e937c04dc0bb304530eac Mon Sep 17 00:00:00 2001 From: okx-code Date: Wed, 28 Jun 2023 19:40:18 +0100 Subject: [PATCH] 3.14.1 --- build.gradle | 6 +-- src/main/java/sh/okx/rankup/RankupPlugin.java | 48 +++++-------------- .../java/sh/okx/rankup/ranks/RankList.java | 7 +-- .../okx/rankup/ranksgui/RanksGuiCommand.java | 3 ++ ...tingPluginPointsDeductibleRequirement.java | 3 +- .../VotingPluginPointsRequirement.java | 3 +- .../votingplugin/VotingPluginUtil.java | 33 +++++++++++++ .../VotingPluginVotesRequirement.java | 3 +- 8 files changed, 55 insertions(+), 51 deletions(-) create mode 100644 src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginUtil.java diff --git a/build.gradle b/build.gradle index 7728548..35f7559 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ pitest { } group 'sh.okx' -version '3.14' +version '3.14.1' java { sourceCompatibility = JavaVersion.VERSION_1_8 @@ -46,7 +46,7 @@ dependencies { implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30' compileOnly 'org.jetbrains:annotations:22.0.0' - compileOnly 'org.spigotmc:spigot-api:1.19.3-R0.1-SNAPSHOT' + compileOnly 'org.spigotmc:spigot-api:1.20.1-R0.1-SNAPSHOT' compileOnly('com.github.Realizedd:TokenManager:3.2.4') { transitive = false } @@ -62,7 +62,7 @@ dependencies { compileOnly('com.github.mcMMO-Dev:mcMMO:601297') { exclude group: 'com.sk89q.worldguard' } - compileOnly ('com.bencodez:votingplugin:6.9.5') { + compileOnly ('com.bencodez:votingplugin:6.13.1') { transitive = false } diff --git a/src/main/java/sh/okx/rankup/RankupPlugin.java b/src/main/java/sh/okx/rankup/RankupPlugin.java index aa25570..83dcada 100644 --- a/src/main/java/sh/okx/rankup/RankupPlugin.java +++ b/src/main/java/sh/okx/rankup/RankupPlugin.java @@ -1,12 +1,6 @@ package sh.okx.rankup; import com.electronwill.nightconfig.toml.TomlFormat; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileReader; -import java.util.HashMap; -import java.util.List; -import java.util.Map; import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -21,12 +15,7 @@ import org.bukkit.plugin.PluginDescriptionFile; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPluginLoader; -import sh.okx.rankup.commands.InfoCommand; -import sh.okx.rankup.commands.MaxRankupCommand; -import sh.okx.rankup.commands.PrestigeCommand; -import sh.okx.rankup.commands.PrestigesCommand; -import sh.okx.rankup.commands.RanksCommand; -import sh.okx.rankup.commands.RankupCommand; +import sh.okx.rankup.commands.*; import sh.okx.rankup.economy.Economy; import sh.okx.rankup.economy.EconomyProvider; import sh.okx.rankup.economy.VaultEconomyProvider; @@ -49,24 +38,7 @@ import sh.okx.rankup.ranksgui.RanksGuiCommand; import sh.okx.rankup.ranksgui.RanksGuiListener; import sh.okx.rankup.requirements.Requirement; import sh.okx.rankup.requirements.RequirementRegistry; -import sh.okx.rankup.requirements.requirement.AdvancementRequirement; -import sh.okx.rankup.requirements.requirement.BlockBreakRequirement; -import sh.okx.rankup.requirements.requirement.CraftItemRequirement; -import sh.okx.rankup.requirements.requirement.GroupRequirement; -import sh.okx.rankup.requirements.requirement.ItemDeductibleRequirement; -import sh.okx.rankup.requirements.requirement.ItemRequirement; -import sh.okx.rankup.requirements.requirement.MobKillsRequirement; -import sh.okx.rankup.requirements.requirement.MoneyDeductibleRequirement; -import sh.okx.rankup.requirements.requirement.MoneyRequirement; -import sh.okx.rankup.requirements.requirement.PermissionRequirement; -import sh.okx.rankup.requirements.requirement.PlaceholderRequirement; -import sh.okx.rankup.requirements.requirement.PlayerKillsRequirement; -import sh.okx.rankup.requirements.requirement.PlaytimeMinutesRequirement; -import sh.okx.rankup.requirements.requirement.TotalMobKillsRequirement; -import sh.okx.rankup.requirements.requirement.UseItemRequirement; -import sh.okx.rankup.requirements.requirement.WorldRequirement; -import sh.okx.rankup.requirements.requirement.XpLevelDeductibleRequirement; -import sh.okx.rankup.requirements.requirement.XpLevelRequirement; +import sh.okx.rankup.requirements.requirement.*; import sh.okx.rankup.requirements.requirement.advancedachievements.AdvancedAchievementsAchievementRequirement; import sh.okx.rankup.requirements.requirement.advancedachievements.AdvancedAchievementsTotalRequirement; import sh.okx.rankup.requirements.requirement.mcmmo.McMMOPowerLevelRequirement; @@ -74,12 +46,7 @@ import sh.okx.rankup.requirements.requirement.mcmmo.McMMOSkillRequirement; import sh.okx.rankup.requirements.requirement.superbvote.SuperbVoteVotesRequirement; import sh.okx.rankup.requirements.requirement.tokenmanager.TokensDeductibleRequirement; import sh.okx.rankup.requirements.requirement.tokenmanager.TokensRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyKingNumberResidentsRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyKingNumberTownsRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyKingRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyMayorNumberResidentsRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyMayorRequirement; -import sh.okx.rankup.requirements.requirement.towny.TownyResidentRequirement; +import sh.okx.rankup.requirements.requirement.towny.*; import sh.okx.rankup.requirements.requirement.votingplugin.VotingPluginPointsDeductibleRequirement; import sh.okx.rankup.requirements.requirement.votingplugin.VotingPluginPointsRequirement; import sh.okx.rankup.requirements.requirement.votingplugin.VotingPluginVotesRequirement; @@ -89,6 +56,13 @@ import sh.okx.rankup.serialization.YamlDeserializer; import sh.okx.rankup.util.UpdateNotifier; import sh.okx.rankup.util.VersionChecker; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + public class RankupPlugin extends JavaPlugin { public static final int CONFIG_VERSION = 10; @@ -327,7 +301,7 @@ public class RankupPlugin extends JavaPlugin { - } catch (Exception e) { + } catch (RuntimeException e) { this.errorMessage = e.getClass().getName() + ": " + e.getMessage(); e.printStackTrace(); } diff --git a/src/main/java/sh/okx/rankup/ranks/RankList.java b/src/main/java/sh/okx/rankup/ranks/RankList.java index 24d6341..c9b7db7 100644 --- a/src/main/java/sh/okx/rankup/ranks/RankList.java +++ b/src/main/java/sh/okx/rankup/ranks/RankList.java @@ -1,14 +1,11 @@ package sh.okx.rankup.ranks; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import java.util.Objects; import lombok.Getter; import org.bukkit.entity.Player; import sh.okx.rankup.RankupPlugin; +import java.util.*; + public abstract class RankList { protected RankupPlugin plugin; diff --git a/src/main/java/sh/okx/rankup/ranksgui/RanksGuiCommand.java b/src/main/java/sh/okx/rankup/ranksgui/RanksGuiCommand.java index e437efa..d01bafe 100644 --- a/src/main/java/sh/okx/rankup/ranksgui/RanksGuiCommand.java +++ b/src/main/java/sh/okx/rankup/ranksgui/RanksGuiCommand.java @@ -18,6 +18,9 @@ public class RanksGuiCommand implements CommandExecutor { if (!(sender instanceof Player)) { return false; } + if (plugin.error(sender)) { + return true; + } Player player = (Player) sender; listener.open(new RanksGui(plugin, player)); diff --git a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsDeductibleRequirement.java b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsDeductibleRequirement.java index 880020e..aa7da86 100644 --- a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsDeductibleRequirement.java +++ b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsDeductibleRequirement.java @@ -1,6 +1,5 @@ package sh.okx.rankup.requirements.requirement.votingplugin; -import com.bencodez.votingplugin.user.UserManager; import com.bencodez.votingplugin.user.VotingPluginUser; import org.bukkit.entity.Player; import sh.okx.rankup.RankupPlugin; @@ -19,7 +18,7 @@ public class VotingPluginPointsDeductibleRequirement extends VotingPluginPointsR @Override public void apply(Player player, double multiplier) { - VotingPluginUser user = UserManager.getInstance().getVotingPluginUser(player); + VotingPluginUser user = VotingPluginUtil.getInstance().getUserManager().getVotingPluginUser(player); if(!user.removePoints(getValueInt())) { plugin.getLogger().warning("Unable to remove VotingPlugin points"); } diff --git a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsRequirement.java b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsRequirement.java index 67c1c52..3259c4e 100644 --- a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsRequirement.java +++ b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginPointsRequirement.java @@ -1,6 +1,5 @@ package sh.okx.rankup.requirements.requirement.votingplugin; -import com.bencodez.votingplugin.user.UserManager; import org.bukkit.entity.Player; import sh.okx.rankup.RankupPlugin; import sh.okx.rankup.requirements.ProgressiveRequirement; @@ -18,7 +17,7 @@ public class VotingPluginPointsRequirement extends ProgressiveRequirement { @Override public double getProgress(Player player) { - return UserManager.getInstance().getVotingPluginUser(player).getPoints(); + return VotingPluginUtil.getInstance().getUserManager().getVotingPluginUser(player).getPoints(); } @Override diff --git a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginUtil.java b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginUtil.java new file mode 100644 index 0000000..0d44f5f --- /dev/null +++ b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginUtil.java @@ -0,0 +1,33 @@ +package sh.okx.rankup.requirements.requirement.votingplugin; + +import com.bencodez.votingplugin.VotingPluginMain; +import com.bencodez.votingplugin.user.UserManager; + +import java.lang.reflect.InvocationTargetException; + +public class VotingPluginUtil { + private static VotingPluginUtil instance; + + private UserManager userManager; + + private VotingPluginUtil() { + try { + userManager = (UserManager) UserManager.class.getMethod("getInstance").invoke(null); + } catch (NoSuchMethodException e) { + userManager = VotingPluginMain.getPlugin().getVotingPluginUserManager(); + } catch (InvocationTargetException | IllegalAccessException e) { + throw new RuntimeException(e); + } + } + + public static VotingPluginUtil getInstance() { + if (instance == null) { + instance = new VotingPluginUtil(); + } + return instance; + } + + public UserManager getUserManager() { + return userManager; + } +} diff --git a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginVotesRequirement.java b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginVotesRequirement.java index be691f0..f09ad7d 100644 --- a/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginVotesRequirement.java +++ b/src/main/java/sh/okx/rankup/requirements/requirement/votingplugin/VotingPluginVotesRequirement.java @@ -1,7 +1,6 @@ package sh.okx.rankup.requirements.requirement.votingplugin; import com.bencodez.votingplugin.topvoter.TopVoter; -import com.bencodez.votingplugin.user.UserManager; import org.bukkit.entity.Player; import sh.okx.rankup.RankupPlugin; import sh.okx.rankup.requirements.ProgressiveRequirement; @@ -18,7 +17,7 @@ public class VotingPluginVotesRequirement extends ProgressiveRequirement { @Override public double getProgress(Player player) { - return UserManager.getInstance().getVotingPluginUser(player).getTotal(TopVoter.AllTime); + return VotingPluginUtil.getInstance().getUserManager().getVotingPluginUser(player).getTotal(TopVoter.AllTime); } @Override