From 49eeb646eaac8263c245a8d8c65d1fc303434c5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Sat, 15 Mar 2025 21:54:18 +0100 Subject: [PATCH] using common interface instead of individual methods in displayname appliance --- .../metaGameplay/displayName/DisplayName.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/main/java/eu/mhsl/craftattack/spawn/appliances/metaGameplay/displayName/DisplayName.java b/src/main/java/eu/mhsl/craftattack/spawn/appliances/metaGameplay/displayName/DisplayName.java index b006b59..5c7df4e 100644 --- a/src/main/java/eu/mhsl/craftattack/spawn/appliances/metaGameplay/displayName/DisplayName.java +++ b/src/main/java/eu/mhsl/craftattack/spawn/appliances/metaGameplay/displayName/DisplayName.java @@ -19,6 +19,7 @@ import org.bukkit.entity.Player; import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.Objects; import java.util.function.Supplier; import java.util.logging.Level; @@ -30,21 +31,21 @@ public class DisplayName extends Appliance { public void update(Player player) { TextColor playerColor = this.queryAppliance(AdminMarker.class).getPlayerColor(player); - List> prefixes = List.of( - () -> this.queryAppliance(Outlawed.class).getNamePrefix(player), - () -> this.queryAppliance(YearRank.class).getNamePrefix(player), - () -> this.queryAppliance(AfkTag.class).getNamePrefix(player), - () -> this.queryAppliance(SleepTag.class).getNamePrefix(player) + List> prefixes = List.of( + () -> this.queryAppliance(Outlawed.class), + () -> this.queryAppliance(YearRank.class), + () -> this.queryAppliance(AfkTag.class), + () -> this.queryAppliance(SleepTag.class) ); ComponentBuilder playerName = Component.text(); - prefixes.forEach(supplier -> { - Component prefix = supplier.get(); - if(prefix == null) return; - playerName + prefixes.stream() + .map(prefixed -> prefixed.get().getNamePrefix(player)) + .filter(Objects::nonNull) + .forEach(prefix -> playerName .append(prefix) - .append(ComponentUtil.clearedSpace()); - }); + .append(ComponentUtil.clearedSpace()) + ); if(Floodgate.isBedrock(player)) { playerName