Skip to content

Commit 4e35348

Browse files
refactor(punishment): inline UUID resolution into individual commands
1 parent 85f8b4f commit 4e35348

4 files changed

Lines changed: 19 additions & 28 deletions

File tree

type.generic/src/main/java/net/swofty/type/generic/command/HypixelCommand.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,16 @@
44
import net.minestom.server.command.CommandSender;
55
import net.minestom.server.command.ConsoleSender;
66
import net.minestom.server.command.builder.Command;
7-
import net.minestom.server.entity.Player;
8-
import net.minestom.server.utils.mojang.MojangUtils;
97
import net.swofty.type.generic.data.HypixelDataHandler;
108
import net.swofty.type.generic.data.datapoints.DatapointRank;
119
import net.swofty.type.generic.user.HypixelPlayer;
1210

13-
import java.io.IOException;
1411
import java.util.ArrayList;
1512
import java.util.Arrays;
1613
import java.util.List;
17-
import java.util.UUID;
1814

1915
public abstract class HypixelCommand {
2016
public static final String COMMAND_SUFFIX = "Command";
21-
public static final UUID CONSOLE_UUID = new UUID(0, 0);
2217

2318
@Getter
2419
private final CommandParameters params;
@@ -45,16 +40,6 @@ protected HypixelCommand() {
4540

4641
public abstract void registerUsage(MinestomCommand command);
4742

48-
protected static UUID resolvePlayerUuid(CommandSender sender, String playerName, String action) throws IOException {
49-
UUID uuid = MojangUtils.getUUID(playerName);
50-
sender.sendMessage("§8Processing " + action + " for player §e" + playerName + "§7... (" + uuid + ")");
51-
return uuid;
52-
}
53-
54-
protected static UUID senderUuid(CommandSender sender) {
55-
return sender instanceof Player p ? p.getUuid() : CONSOLE_UUID;
56-
}
57-
5843
public boolean permissionCheck(CommandSender sender) {
5944
HypixelPlayer player = (HypixelPlayer) sender;
6045
HypixelDataHandler dataHandler = player.getDataHandler();

type.generic/src/main/java/net/swofty/type/generic/command/commands/BanCommand.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import net.kyori.adventure.text.Component;
44
import net.minestom.server.command.CommandSender;
55
import net.minestom.server.command.builder.arguments.*;
6+
import net.minestom.server.entity.Player;
7+
import net.minestom.server.utils.mojang.MojangUtils;
68
import net.minestom.server.command.builder.suggestion.SuggestionEntry;
79
import net.swofty.commons.ServiceType;
810
import net.swofty.commons.StringUtility;
@@ -56,10 +58,10 @@ public void registerUsage(MinestomCommand command) {
5658

5759
CompletableFuture.runAsync(() -> {
5860
try {
59-
UUID targetUuid = resolvePlayerUuid(sender, playerName, "ban");
61+
UUID targetUuid = MojangUtils.getUUID(playerName);
6062
long actualTime = StringUtility.parseDuration(duration);
6163
long expiryTime = System.currentTimeMillis() + actualTime;
62-
banPlayer(sender, targetUuid, type, senderUuid(sender), actualTime, expiryTime, playerName, null);
64+
banPlayer(sender, targetUuid, type, (sender instanceof Player p ? p.getUuid() : new UUID(0, 0)), actualTime, expiryTime, playerName, null);
6365
} catch (IOException e) {
6466
sender.sendMessage("§cCould not find player: " + playerName);
6567
}
@@ -72,8 +74,8 @@ public void registerUsage(MinestomCommand command) {
7274

7375
CompletableFuture.runAsync(() -> {
7476
try {
75-
banPlayer(sender, resolvePlayerUuid(sender, playerName, "ban"), reason,
76-
senderUuid(sender), 0, -1, playerName, null);
77+
banPlayer(sender, MojangUtils.getUUID(playerName), reason,
78+
(sender instanceof Player p ? p.getUuid() : new UUID(0, 0)), 0, -1, playerName, null);
7779
} catch (IOException e) {
7880
sender.sendMessage("§cCould not find player: " + playerName);
7981
}
@@ -87,8 +89,8 @@ public void registerUsage(MinestomCommand command) {
8789

8890
CompletableFuture.runAsync(() -> {
8991
try {
90-
banPlayer(sender, resolvePlayerUuid(sender, playerName, "ban"), reason,
91-
senderUuid(sender), 0, -1, playerName, tags);
92+
banPlayer(sender, MojangUtils.getUUID(playerName), reason,
93+
(sender instanceof Player p ? p.getUuid() : new UUID(0, 0)), 0, -1, playerName, tags);
9294
} catch (IOException e) {
9395
sender.sendMessage("§cCould not find player: " + playerName);
9496
}

type.generic/src/main/java/net/swofty/type/generic/command/commands/MuteCommand.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import net.kyori.adventure.text.Component;
44
import net.minestom.server.command.CommandSender;
55
import net.minestom.server.command.builder.arguments.Argument;
6+
import net.minestom.server.entity.Player;
7+
import net.minestom.server.utils.mojang.MojangUtils;
68
import net.minestom.server.command.builder.arguments.ArgumentString;
79
import net.minestom.server.command.builder.arguments.ArgumentType;
810
import net.minestom.server.command.builder.suggestion.SuggestionEntry;
@@ -49,10 +51,10 @@ public void registerUsage(MinestomCommand command) {
4951

5052
CompletableFuture.runAsync(() -> {
5153
try {
52-
UUID targetUuid = resolvePlayerUuid(sender, playerName, "mute");
54+
UUID targetUuid = MojangUtils.getUUID(playerName);
5355
long actualTime = StringUtility.parseDuration(duration);
5456
long expiryTime = System.currentTimeMillis() + actualTime;
55-
mutePlayer(sender, targetUuid, type, senderUuid(sender), actualTime, expiryTime, playerName);
57+
mutePlayer(sender, targetUuid, type, (sender instanceof Player p ? p.getUuid() : new UUID(0, 0)), actualTime, expiryTime, playerName);
5658
} catch (IOException e) {
5759
sender.sendMessage("§cCould not find player: " + playerName);
5860
}
@@ -65,8 +67,8 @@ public void registerUsage(MinestomCommand command) {
6567

6668
CompletableFuture.runAsync(() -> {
6769
try {
68-
mutePlayer(sender, resolvePlayerUuid(sender, playerName, "mute"), reason,
69-
senderUuid(sender), 0, -1, playerName);
70+
mutePlayer(sender, MojangUtils.getUUID(playerName), reason,
71+
(sender instanceof Player p ? p.getUuid() : new UUID(0, 0)), 0, -1, playerName);
7072
} catch (IOException e) {
7173
sender.sendMessage("§cCould not find player: " + playerName);
7274
}

type.generic/src/main/java/net/swofty/type/generic/command/commands/UnBanCommand.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import net.minestom.server.command.builder.arguments.Argument;
44
import net.minestom.server.command.builder.arguments.ArgumentType;
5+
import net.minestom.server.entity.Player;
6+
import net.minestom.server.utils.mojang.MojangUtils;
57
import net.minestom.server.command.builder.suggestion.SuggestionEntry;
68
import net.swofty.commons.ServiceType;
79
import net.swofty.commons.protocol.objects.punishment.GetAllBannedIdsProtocolObject;
@@ -12,7 +14,7 @@
1214
import net.swofty.type.generic.user.categories.Rank;
1315

1416
import java.io.IOException;
15-
import java.util.Set;
17+
import java.util.UUID;
1618
import java.util.concurrent.CompletableFuture;
1719
import java.util.concurrent.TimeUnit;
1820

@@ -47,10 +49,10 @@ public void registerUsage(MinestomCommand command) {
4749

4850
CompletableFuture.runAsync(() -> {
4951
try {
50-
var targetUuid = resolvePlayerUuid(sender, playerName, "unban");
52+
var targetUuid = MojangUtils.getUUID(playerName);
5153
ProxyService punishmentService = new ProxyService(ServiceType.PUNISHMENT);
5254
var message = new UnpunishPlayerProtocolObject.UnpunishPlayerMessage(
53-
targetUuid, senderUuid(sender)
55+
targetUuid, (sender instanceof Player p ? p.getUuid() : new UUID(0, 0))
5456
);
5557

5658
punishmentService.handleRequest(message).thenAccept(result -> {

0 commit comments

Comments
 (0)