Skip to content

Commit 0cdce4d

Browse files
committed
more command refactors
1 parent 60ab993 commit 0cdce4d

32 files changed

Lines changed: 114 additions & 73 deletions

src/main/java/dev/noah/perplayerkit/PerPlayerKit.java

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,27 @@
1818
*/
1919
package dev.noah.perplayerkit;
2020

21-
import dev.noah.perplayerkit.commands.*;
22-
import dev.noah.perplayerkit.commands.extracommands.HealCommand;
23-
import dev.noah.perplayerkit.commands.extracommands.RepairCommand;
24-
import dev.noah.perplayerkit.commands.tabcompleters.ECSlotTabCompleter;
25-
import dev.noah.perplayerkit.commands.tabcompleters.KitSlotTabCompleter;
21+
import dev.noah.perplayerkit.commands.admin.AboutCommandListener;
22+
import dev.noah.perplayerkit.commands.admin.KitRoomCommand;
23+
import dev.noah.perplayerkit.commands.admin.PerPlayerKitCommand;
24+
import dev.noah.perplayerkit.commands.admin.SavePublicKitCommand;
25+
import dev.noah.perplayerkit.commands.completion.ECSlotTabCompleter;
26+
import dev.noah.perplayerkit.commands.completion.KitSlotTabCompleter;
27+
import dev.noah.perplayerkit.commands.features.HealCommand;
28+
import dev.noah.perplayerkit.commands.features.RegearCommand;
29+
import dev.noah.perplayerkit.commands.features.RepairCommand;
30+
import dev.noah.perplayerkit.commands.inspect.InspectEcCommand;
31+
import dev.noah.perplayerkit.commands.inspect.InspectKitCommand;
32+
import dev.noah.perplayerkit.commands.kits.DeleteKitCommand;
33+
import dev.noah.perplayerkit.commands.kits.EnderchestCommand;
34+
import dev.noah.perplayerkit.commands.kits.MainMenuCommand;
35+
import dev.noah.perplayerkit.commands.kits.PublicKitCommand;
36+
import dev.noah.perplayerkit.commands.kits.SwapKitCommand;
37+
import dev.noah.perplayerkit.commands.share.CopyKitCommand;
38+
import dev.noah.perplayerkit.commands.share.ShareECKitCommand;
39+
import dev.noah.perplayerkit.commands.share.ShareKitCommand;
40+
import dev.noah.perplayerkit.commands.shortcuts.ShortECCommand;
41+
import dev.noah.perplayerkit.commands.shortcuts.ShortKitCommand;
2642
import dev.noah.perplayerkit.listeners.*;
2743
import dev.noah.perplayerkit.listeners.antiexploit.CommandListener;
2844
import dev.noah.perplayerkit.listeners.antiexploit.ShulkerDropItemsListener;

src/main/java/dev/noah/perplayerkit/commands/AboutCommandListener.java renamed to src/main/java/dev/noah/perplayerkit/commands/admin/AboutCommandListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.admin;
2020

2121
import org.bukkit.command.CommandSender;
2222
import org.bukkit.event.EventHandler;

src/main/java/dev/noah/perplayerkit/commands/KitRoomCommand.java renamed to src/main/java/dev/noah/perplayerkit/commands/admin/KitRoomCommand.java

Lines changed: 31 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.admin;
2020

2121
import dev.noah.perplayerkit.KitRoomDataManager;
2222
import org.bukkit.ChatColor;
@@ -33,40 +33,50 @@
3333
import java.util.List;
3434

3535
public class KitRoomCommand implements CommandExecutor, TabCompleter {
36+
private static final String LOAD = "load";
37+
private static final String SAVE = "save";
38+
3639
@Override
3740
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;
5651
}
5752

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+
}
5859

60+
sendUsageError(sender);
5961
return true;
6062
}
6163

6264
@Override
6365
public @Nullable List<String> onTabComplete(@NotNull CommandSender sender, @NotNull Command command, @NotNull String alias, @NotNull String[] args) {
6466
if (args.length == 1) {
6567
List<String> list = new ArrayList<>();
66-
list.add("save");
67-
list.add("load");
68+
list.add(SAVE);
69+
list.add(LOAD);
6870
return list;
6971
}
7072
return null;
7173
}
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+
}
7282
}

src/main/java/dev/noah/perplayerkit/commands/PerPlayerKitCommand.java renamed to src/main/java/dev/noah/perplayerkit/commands/admin/PerPlayerKitCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.admin;
2020

2121
import dev.noah.perplayerkit.storage.StorageMigrator;
2222
import dev.noah.perplayerkit.util.importutil.KitsXImporter;

src/main/java/dev/noah/perplayerkit/commands/SavePublicKitCommand.java renamed to src/main/java/dev/noah/perplayerkit/commands/admin/SavePublicKitCommand.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.admin;
2020

2121
import dev.noah.perplayerkit.ItemFilter;
2222
import dev.noah.perplayerkit.KitManager;
23+
import dev.noah.perplayerkit.commands.core.CommandGuards;
2324
import org.bukkit.ChatColor;
2425
import org.bukkit.command.Command;
2526
import org.bukkit.command.CommandExecutor;
@@ -48,10 +49,10 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command
4849
return true;
4950
}
5051

51-
String kidId = args[0];
52+
String kitId = args[0];
5253

53-
if (KitManager.get().getPublicKitList().stream().noneMatch(kit -> kit.id.equals(kidId))) {
54-
player.sendMessage(ChatColor.RED + "Public kit " + kidId + " does not exist");
54+
if (KitManager.get().getPublicKitList().stream().noneMatch(kit -> kit.id.equals(kitId))) {
55+
player.sendMessage(ChatColor.RED + "Public kit " + kitId + " does not exist");
5556
player.sendMessage(ChatColor.RED + "You may need to add a public kit in the config");
5657
return true;
5758
}
@@ -72,13 +73,13 @@ public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command
7273

7374
KitManager kitManager = KitManager.get();
7475
//save kit
75-
boolean success = kitManager.savePublicKit(kidId, data);
76+
boolean success = kitManager.savePublicKit(kitId, data);
7677
if (success) {
77-
kitManager.savePublicKitToDB(kidId);
78-
player.sendMessage("Saved kit " + kidId);
78+
kitManager.savePublicKitToDB(kitId);
79+
player.sendMessage("Saved kit " + kitId);
7980
SoundManager.playSuccess(player);
8081
} else {
81-
player.sendMessage("Error saving kit " + kidId);
82+
player.sendMessage("Error saving kit " + kitId);
8283
SoundManager.playFailure(player);
8384
}
8485

src/main/java/dev/noah/perplayerkit/commands/tabcompleters/ECSlotTabCompleter.java renamed to src/main/java/dev/noah/perplayerkit/commands/completion/ECSlotTabCompleter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands.tabcompleters;
19+
package dev.noah.perplayerkit.commands.completion;
2020

2121
import dev.noah.perplayerkit.KitShareManager;
2222
import org.bukkit.command.Command;

src/main/java/dev/noah/perplayerkit/commands/tabcompleters/KitSlotTabCompleter.java renamed to src/main/java/dev/noah/perplayerkit/commands/completion/KitSlotTabCompleter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands.tabcompleters;
19+
package dev.noah.perplayerkit.commands.completion;
2020

2121
import dev.noah.perplayerkit.KitShareManager;
2222
import org.bukkit.command.Command;

src/main/java/dev/noah/perplayerkit/commands/CommandGuards.java renamed to src/main/java/dev/noah/perplayerkit/commands/core/CommandGuards.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.core;
2020

2121
import dev.noah.perplayerkit.util.DisabledCommand;
2222
import org.bukkit.command.CommandSender;

src/main/java/dev/noah/perplayerkit/commands/SlotArgumentParser.java renamed to src/main/java/dev/noah/perplayerkit/commands/core/SlotArgumentParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands;
19+
package dev.noah.perplayerkit.commands.core;
2020

2121
import com.google.common.primitives.Ints;
2222
import org.jetbrains.annotations.Nullable;

src/main/java/dev/noah/perplayerkit/commands/extracommands/HealCommand.java renamed to src/main/java/dev/noah/perplayerkit/commands/features/HealCommand.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,11 @@
1616
* You should have received a copy of the GNU Affero General Public License
1717
* along with PerPlayerKit. If not, see <https://www.gnu.org/licenses/>.
1818
*/
19-
package dev.noah.perplayerkit.commands.extracommands;
19+
package dev.noah.perplayerkit.commands.features;
2020

21-
import dev.noah.perplayerkit.commands.CommandGuards;
21+
import dev.noah.perplayerkit.commands.core.CommandGuards;
2222
import dev.noah.perplayerkit.util.BroadcastManager;
2323
import dev.noah.perplayerkit.util.PlayerUtil;
24-
import org.bukkit.ChatColor;
2524
import org.bukkit.command.Command;
2625
import org.bukkit.command.CommandExecutor;
2726
import org.bukkit.command.CommandSender;

0 commit comments

Comments
 (0)