|
16 | 16 | * You should have received a copy of the GNU Affero General Public License |
17 | 17 | * along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>. |
18 | 18 | */ |
19 | | -package dev.noah.perplayerkit.commands; |
| 19 | +package dev.noah.perplayerkit.commands.admin; |
20 | 20 |
|
21 | 21 | import dev.noah.perplayerkit.KitRoomDataManager; |
22 | 22 | import org.bukkit.ChatColor; |
|
33 | 33 | import java.util.List; |
34 | 34 |
|
35 | 35 | public class KitRoomCommand implements CommandExecutor, TabCompleter { |
| 36 | + private static final String LOAD = "load"; |
| 37 | + private static final String SAVE = "save"; |
| 38 | + |
36 | 39 | @Override |
37 | 40 | public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) { |
38 | | - if (args.length == 1) { |
39 | | - if (args[0].equalsIgnoreCase("load")) { |
40 | | - KitRoomDataManager.get().loadFromDB(); |
41 | | - sender.sendMessage(ChatColor.GREEN + "Kit Room loaded from SQL"); |
42 | | - if (sender instanceof Player p) SoundManager.playSuccess(p); |
43 | | - } else if (args[0].equalsIgnoreCase("save")) { |
44 | | - KitRoomDataManager.get().saveToDBAsync(); |
45 | | - sender.sendMessage(ChatColor.GREEN + "Kit Room saved to SQL"); |
46 | | - if (sender instanceof Player p) SoundManager.playSuccess(p); |
47 | | - } else { |
48 | | - sender.sendMessage(ChatColor.RED + "Incorrect Usage!"); |
49 | | - sender.sendMessage("/kitroom <load/save>"); |
50 | | - if (sender instanceof Player p) SoundManager.playFailure(p); |
51 | | - } |
52 | | - } else { |
53 | | - sender.sendMessage(ChatColor.RED + "Incorrect Usage!"); |
54 | | - sender.sendMessage("/kitroom <load/save>"); |
55 | | - if (sender instanceof Player p) SoundManager.playFailure(p); |
| 41 | + if (args.length != 1) { |
| 42 | + sendUsageError(sender); |
| 43 | + return true; |
| 44 | + } |
| 45 | + |
| 46 | + if (args[0].equalsIgnoreCase(LOAD)) { |
| 47 | + KitRoomDataManager.get().loadFromDB(); |
| 48 | + sender.sendMessage(ChatColor.GREEN + "Kit Room loaded from SQL"); |
| 49 | + if (sender instanceof Player p) SoundManager.playSuccess(p); |
| 50 | + return true; |
56 | 51 | } |
57 | 52 |
|
| 53 | + if (args[0].equalsIgnoreCase(SAVE)) { |
| 54 | + KitRoomDataManager.get().saveToDBAsync(); |
| 55 | + sender.sendMessage(ChatColor.GREEN + "Kit Room saved to SQL"); |
| 56 | + if (sender instanceof Player p) SoundManager.playSuccess(p); |
| 57 | + return true; |
| 58 | + } |
58 | 59 |
|
| 60 | + sendUsageError(sender); |
59 | 61 | return true; |
60 | 62 | } |
61 | 63 |
|
62 | 64 | @Override |
63 | 65 | public @Nullable List<String> onTabComplete(@NotNull CommandSender sender, @NotNull Command command, @NotNull String alias, @NotNull String[] args) { |
64 | 66 | if (args.length == 1) { |
65 | 67 | List<String> list = new ArrayList<>(); |
66 | | - list.add("save"); |
67 | | - list.add("load"); |
| 68 | + list.add(SAVE); |
| 69 | + list.add(LOAD); |
68 | 70 | return list; |
69 | 71 | } |
70 | 72 | return null; |
71 | 73 | } |
| 74 | + |
| 75 | + private void sendUsageError(CommandSender sender) { |
| 76 | + sender.sendMessage(ChatColor.RED + "Incorrect Usage!"); |
| 77 | + sender.sendMessage("/kitroom <load/save>"); |
| 78 | + if (sender instanceof Player p) { |
| 79 | + SoundManager.playFailure(p); |
| 80 | + } |
| 81 | + } |
72 | 82 | } |
0 commit comments