From 862176b0f0161428e2ce735ed62b5c392061ab11 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Thu, 30 Dec 2021 19:55:06 +0100 Subject: [PATCH 1/4] Add Only Active Punishments on Whois Signed-off-by: Chaoscaot --- .../bungeecore/commands/WhoisCommand.java | 34 ++++++++++++++----- .../steamwar/messages/BungeeCore.properties | 5 +-- 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/src/de/steamwar/bungeecore/commands/WhoisCommand.java b/src/de/steamwar/bungeecore/commands/WhoisCommand.java index 089ad823..ebe38848 100644 --- a/src/de/steamwar/bungeecore/commands/WhoisCommand.java +++ b/src/de/steamwar/bungeecore/commands/WhoisCommand.java @@ -68,10 +68,15 @@ public class WhoisCommand extends BasicCommand { return; } - sendUserinfo(player, user); + boolean all = false; + if(args.length > 1 && args[1].startsWith("-")) { + all = args[1].contains("a"); + } + + sendUserinfo(player, user, all); } - private static void sendUserinfo(ProxiedPlayer player, SteamwarUser user) { + private static void sendUserinfo(ProxiedPlayer player, SteamwarUser user, boolean all) { Message.send("WHOIS_USERNAME", player, user.getUserName()); Message.send("WHOIS_UUID", player, Message.parse("WHOIS_UUID_HOVER", player), new ClickEvent(ClickEvent.Action.COPY_TO_CLIPBOARD, user.getUuid().toString()), user.getUuid().toString()); Message.send("WHOIS_ID", player, user.getId()); @@ -89,13 +94,24 @@ public class WhoisCommand extends BasicCommand { Message.send("WHOIS_TEAM", player, Message.parse("WHOIS_TEAM_HOVER", player, team.getTeamName()), new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/team info " + team.getTeamKuerzel()), team.getTeamColor(), team.getTeamKuerzel(), team.getTeamName()); Message.send("WHOIS_PUNISHMENTS", player); - List punishmentList = Punishment.getAllPunishmentsOfPlayer(user.getId()); - if(punishmentList.isEmpty()) { - Message.send("WHOIS_NO_PUNISHMENT", player); - return; - } - for (Punishment punishment : punishmentList) { - Message.sendPrefixless("WHOIS_PUNISHMENT", player, SteamwarUser.get(punishment.getPunisher()).getUserName(), punishment.getType().name(), punishment.getBantime(punishment.getStartTime(), false), punishment.getBantime(punishment.getEndTime(), punishment.isPerma()), punishment.getReason()); + if(all) { + List punishmentList = Punishment.getAllPunishmentsOfPlayer(user.getId()); + if(punishmentList.isEmpty()) { + Message.send("WHOIS_NO_ALL_PUNISHMENT", player); + return; + } + for (Punishment punishment : punishmentList) { + Message.sendPrefixless("WHOIS_PUNISHMENT", player, SteamwarUser.get(punishment.getPunisher()).getUserName(), punishment.getType().name(), punishment.getBantime(punishment.getStartTime(), false), punishment.getBantime(punishment.getEndTime(), punishment.isPerma()), punishment.getReason()); + } + } else { + for (Punishment.PunishmentType punishmentType : Punishment.PunishmentType.values()) { + if(user.isPunished(punishmentType)) { + Message.send("WHOIS_NO_PUNISHMENT", player); + continue; + } + Punishment punishment = user.getPunishment(punishmentType); + Message.sendPrefixless("WHOIS_PUNISHMENT", player, SteamwarUser.get(punishment.getPunisher()).getUserName(), punishment.getType().name(), punishment.getBantime(punishment.getStartTime(), false), punishment.getBantime(punishment.getEndTime(), punishment.isPerma()), punishment.getReason()); + } } } } diff --git a/src/de/steamwar/messages/BungeeCore.properties b/src/de/steamwar/messages/BungeeCore.properties index dbd1fb63..f2a9aa91 100644 --- a/src/de/steamwar/messages/BungeeCore.properties +++ b/src/de/steamwar/messages/BungeeCore.properties @@ -537,7 +537,7 @@ SERVER_WORLD_ERROR=§cDas Erstellen der Welt ist fehlgeschlagen. #WhoisCommand -WHOIS_USAGE=§c/whois [Spieler/ID] +WHOIS_USAGE=§c/whois [Spieler/ID] {-a} WHOIS_USERNAME=§7Username§8: §e{0} WHOIS_UUID=§7UUID§8: §e{0} WHOIS_UUID_HOVER=§eUUID Kopieren @@ -549,7 +549,8 @@ WHOIS_TEAM=§7Team§8: §e[§{0}{1}§e] {2} WHOIS_TEAM_HOVER=§e{0} anzeigen WHOIS_PUNISHMENTS=§7Strafen: WHOIS_PUNISHMENT=§7{0}§8» §f§l{1}: §e{2} - {3} §f{4} -WHOIS_NO_PUNISHMENT=§a✓ §7Der Spieler hat noch nichts getan. +WHOIS_NO_PUNISHMENT=§a✓ §7Der Spieler hat keine Aktiven bestrafungen. +WHOIS_NO_ALL_PUNISHMENT=§a✓ §7Der Spieler hat noch nichts getan. #VerifyCommand VERIFY_USAGE=§c/verify [Code] From 0ec38aed022dbbed99379c72fc551883eedf808a Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Thu, 30 Dec 2021 22:09:21 +0100 Subject: [PATCH 2/4] Fix Messages Signed-off-by: Chaoscaot --- src/de/steamwar/messages/BungeeCore.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/de/steamwar/messages/BungeeCore.properties b/src/de/steamwar/messages/BungeeCore.properties index f2a9aa91..e8c16864 100644 --- a/src/de/steamwar/messages/BungeeCore.properties +++ b/src/de/steamwar/messages/BungeeCore.properties @@ -549,7 +549,7 @@ WHOIS_TEAM=§7Team§8: §e[§{0}{1}§e] {2} WHOIS_TEAM_HOVER=§e{0} anzeigen WHOIS_PUNISHMENTS=§7Strafen: WHOIS_PUNISHMENT=§7{0}§8» §f§l{1}: §e{2} - {3} §f{4} -WHOIS_NO_PUNISHMENT=§a✓ §7Der Spieler hat keine Aktiven bestrafungen. +WHOIS_NO_PUNISHMENT=§a✓ §7Der Spieler hat keine aktiven Strafen. WHOIS_NO_ALL_PUNISHMENT=§a✓ §7Der Spieler hat noch nichts getan. #VerifyCommand From 4137d66607b30caa2b4fb2e8f07b8879c6f2363b Mon Sep 17 00:00:00 2001 From: Lixfel Date: Fri, 31 Dec 2021 09:02:38 +0100 Subject: [PATCH 3/4] Rebuild Signed-off-by: Lixfel --- src/de/steamwar/bungeecore/BungeeCore.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/de/steamwar/bungeecore/BungeeCore.java b/src/de/steamwar/bungeecore/BungeeCore.java index 92b87c51..6409ad8c 100644 --- a/src/de/steamwar/bungeecore/BungeeCore.java +++ b/src/de/steamwar/bungeecore/BungeeCore.java @@ -47,7 +47,6 @@ import net.md_5.bungee.config.YamlConfiguration; import java.io.File; import java.io.IOException; -import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -56,8 +55,6 @@ import java.util.logging.Level; public class BungeeCore extends Plugin { - public static final DateTimeFormatter DATE_FORMAT = DateTimeFormatter.ofPattern("dd.MM.yyyy"); - public static String CHAT_PREFIX; public static String WORLD_FOLDER; public static String BAUWELT_PROTOTYP; From 7dd2179612577ac1f283b4f71cbc753b99245be2 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Fri, 31 Dec 2021 13:23:48 +0100 Subject: [PATCH 4/4] Fix WhoisCommand Signed-off-by: Chaoscaot --- src/de/steamwar/bungeecore/commands/WhoisCommand.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/de/steamwar/bungeecore/commands/WhoisCommand.java b/src/de/steamwar/bungeecore/commands/WhoisCommand.java index ebe38848..bbb1af52 100644 --- a/src/de/steamwar/bungeecore/commands/WhoisCommand.java +++ b/src/de/steamwar/bungeecore/commands/WhoisCommand.java @@ -104,14 +104,18 @@ public class WhoisCommand extends BasicCommand { Message.sendPrefixless("WHOIS_PUNISHMENT", player, SteamwarUser.get(punishment.getPunisher()).getUserName(), punishment.getType().name(), punishment.getBantime(punishment.getStartTime(), false), punishment.getBantime(punishment.getEndTime(), punishment.isPerma()), punishment.getReason()); } } else { + boolean isPunished = false; for (Punishment.PunishmentType punishmentType : Punishment.PunishmentType.values()) { - if(user.isPunished(punishmentType)) { - Message.send("WHOIS_NO_PUNISHMENT", player); + if(!user.isPunished(punishmentType)) { continue; } Punishment punishment = user.getPunishment(punishmentType); + isPunished = true; Message.sendPrefixless("WHOIS_PUNISHMENT", player, SteamwarUser.get(punishment.getPunisher()).getUserName(), punishment.getType().name(), punishment.getBantime(punishment.getStartTime(), false), punishment.getBantime(punishment.getEndTime(), punishment.isPerma()), punishment.getReason()); } + if(!isPunished) { + Message.send("WHOIS_NO_PUNISHMENT", player); + } } } }