From ef1a8c6578ee77195a8c45a5abe3125f482d3a27 Mon Sep 17 00:00:00 2001 From: ajgeiss0702 Date: Tue, 11 Jul 2023 19:31:28 -0500 Subject: [PATCH] Allow using * to update all boards in updateplayer command --- .../main/subcommands/UpdatePlayer.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/java/us/ajg0702/leaderboards/commands/main/subcommands/UpdatePlayer.java b/src/main/java/us/ajg0702/leaderboards/commands/main/subcommands/UpdatePlayer.java index f6035a04..7a5baae8 100644 --- a/src/main/java/us/ajg0702/leaderboards/commands/main/subcommands/UpdatePlayer.java +++ b/src/main/java/us/ajg0702/leaderboards/commands/main/subcommands/UpdatePlayer.java @@ -6,6 +6,7 @@ import us.ajg0702.commands.SubCommand; import us.ajg0702.leaderboards.LeaderboardPlugin; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -23,7 +24,9 @@ public UpdatePlayer(LeaderboardPlugin plugin) { public List autoComplete(CommandSender commandSender, String[] args) { if(args.length == 2) return null; if(args.length == 1) { - return plugin.getTopManager().getBoards(); + List boards = new ArrayList<>(plugin.getTopManager().getBoards()); + boards.add("*"); + return boards; } return Collections.emptyList(); } @@ -36,16 +39,24 @@ public void execute(CommandSender sender, String[] args, String label) { } Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> { String board = args[0]; - if(!plugin.getCache().boardExists(board)) { + if(!plugin.getCache().boardExists(board) && !board.equals("*")) { sender.sendMessage(message("&cThe board '"+board+"' does not exist.")); return; } @SuppressWarnings("deprecation") OfflinePlayer p = Bukkit.getOfflinePlayer(args[1]); - plugin.getCache().updateStat(board, p); + if(board.equals("*")) { + plugin.getCache().updatePlayerStats(p); + } else { + plugin.getCache().updateStat(board, p); + } boolean attemptHasWarning = CheckUpdate.checkUpdate(board, p, plugin, sender); - sender.sendMessage(message("&"+ (attemptHasWarning ? "e" : "a") +"Attempted to update stat for "+p.getName()+" on board "+board)); + sender.sendMessage(message( + "&"+ (attemptHasWarning ? "e" : "a") + + "Attempted to update stat for "+p.getName()+" on " + + (board.equals("*") ? "all boards" : "board "+board) + )); }); } }