diff options
author | Glease <4586901+Glease@users.noreply.github.com> | 2023-07-04 23:03:50 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-04 23:03:50 +0800 |
commit | 4d82ca71bc5192cacb73323e4d489622e2f39727 (patch) | |
tree | bc01689289b6d3a3486b894487b36dc5df607c74 /src/main/java/gregtech/common/misc | |
parent | 82fd45bd708f172a9878be87eca3fbcf2b78477f (diff) | |
download | GT5-Unofficial-4d82ca71bc5192cacb73323e4d489622e2f39727.tar.gz GT5-Unofficial-4d82ca71bc5192cacb73323e4d489622e2f39727.tar.bz2 GT5-Unofficial-4d82ca71bc5192cacb73323e4d489622e2f39727.zip |
fix leaving wireless network team not having an effect (#2113)
Diffstat (limited to 'src/main/java/gregtech/common/misc')
-rw-r--r-- | src/main/java/gregtech/common/misc/GT_Command.java | 81 |
1 files changed, 47 insertions, 34 deletions
diff --git a/src/main/java/gregtech/common/misc/GT_Command.java b/src/main/java/gregtech/common/misc/GT_Command.java index 3d3b2eb39e..35e7a71f65 100644 --- a/src/main/java/gregtech/common/misc/GT_Command.java +++ b/src/main/java/gregtech/common/misc/GT_Command.java @@ -265,61 +265,65 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner // Usage is /gt global_energy_join username_of_you username_to_join - String username_0 = strings[1]; - String username_1 = strings[2]; + String usernameSubject = strings[1]; + String usernameTeam = strings[2]; - String formatted_username_0 = EnumChatFormatting.BLUE + username_0 + EnumChatFormatting.RESET; - String formatted_username_1 = EnumChatFormatting.BLUE + username_1 + EnumChatFormatting.RESET; + String formattedUsernameSubject = EnumChatFormatting.BLUE + usernameSubject + EnumChatFormatting.RESET; + String formattedUsernameTeam = EnumChatFormatting.BLUE + usernameTeam + EnumChatFormatting.RESET; - String uuid_0 = getUUIDFromUsername(username_0); - String uuid_1 = getUUIDFromUsername(username_1); + String uuidSubject = getRawUUIDFromUsername(usernameSubject); + String uuidTeam = getUUIDFromUsername(usernameTeam); - if (uuid_1.equals("") && uuid_0.equals("")) { - if (username_0.equals(username_1)) { - sender.addChatMessage( - new ChatComponentText("User " + formatted_username_0 + " has no global energy network.")); - } else { + if (usernameSubject.equals(usernameTeam)) { + // leave team + if ("".equals(uuidSubject)) { sender.addChatMessage( new ChatComponentText( - "User " + formatted_username_0 - + " and " - + formatted_username_1 - + " have no global energy networks.")); + "User " + formattedUsernameSubject + " has no global energy network.")); + break; } - break; - } - - if (uuid_0.equals("")) { + if (uuidSubject.equals(uuidTeam)) { + sender.addChatMessage( + new ChatComponentText("User " + formattedUsernameSubject + " is already in his own team!")); + break; + } + joinUserNetwork(uuidSubject, uuidSubject); sender.addChatMessage( - new ChatComponentText("User " + formatted_username_0 + " has no global energy network.")); + new ChatComponentText( + "User " + formattedUsernameSubject + " has rejoined their own global energy network.")); break; } - if (uuid_1.equals("")) { + // join other's team + + List<String> noNetPlayers = new ArrayList<>(); + + if ("".equals(uuidSubject)) noNetPlayers.add(usernameSubject); + if ("".equals(uuidTeam)) noNetPlayers.add(usernameTeam); + + if (!noNetPlayers.isEmpty()) { sender.addChatMessage( - new ChatComponentText("User " + formatted_username_1 + " has no global energy network.")); + new ChatComponentText( + "User " + String.join(" and ", noNetPlayers) + " has no global energy network.")); break; } - if (uuid_0.equals(uuid_1)) { - joinUserNetwork(uuid_0, uuid_1); - sender.addChatMessage( - new ChatComponentText( - "User " + formatted_username_0 + " has rejoined their own global energy network.")); + if (uuidSubject.equals(uuidTeam)) { + sender.addChatMessage(new ChatComponentText("They are already in the same network!")); break; } - joinUserNetwork(uuid_0, uuid_1); + joinUserNetwork(uuidSubject, uuidTeam); sender.addChatMessage( new ChatComponentText( - "Success! " + formatted_username_0 + " has joined " + formatted_username_1 + ".")); + "Success! " + formattedUsernameSubject + " has joined " + formattedUsernameTeam + ".")); sender.addChatMessage( new ChatComponentText( "To undo this simply join your own network again with /gt global_energy_join " - + formatted_username_0 + + formattedUsernameSubject + " " - + formatted_username_0 + + formattedUsernameSubject + ".")); } @@ -329,9 +333,10 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner String username = strings[1]; String formatted_username = EnumChatFormatting.BLUE + username + EnumChatFormatting.RESET; - String uuid = getUUIDFromUsername(username); + String uuidTeam = getUUIDFromUsername(username); + String uuidSubject = getRawUUIDFromUsername(username); - if (uuid.equals("")) { + if (uuidTeam.equals("")) { sender.addChatMessage( new ChatComponentText("User " + formatted_username + " has no global energy network.")); break; @@ -342,9 +347,17 @@ public final class GT_Command extends CommandBase implements IGlobalWirelessEner "User " + formatted_username + " has " + EnumChatFormatting.RED - + GT_Utility.formatNumbers(getUserEU(uuid)) + + GT_Utility.formatNumbers(getUserEU(uuidTeam)) + EnumChatFormatting.RESET + "EU in their network.")); + if (!uuidTeam.equals(uuidSubject)) sender.addChatMessage( + new ChatComponentText( + "User " + formatted_username + + " is currently in network of " + + EnumChatFormatting.BLUE + + GetUsernameFromUUID(uuidTeam) + + EnumChatFormatting.RESET + + ".")); } default -> { |