From 9acac488f20b31f4e52d53e6855e232031111001 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Sat, 21 Jun 2025 11:38:09 +0200 Subject: [PATCH] added api for querying admin-players --- .../metaGameplay/adminMarker/AdminMarker.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/metaGameplay/adminMarker/AdminMarker.java b/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/metaGameplay/adminMarker/AdminMarker.java index 175e812..03ae891 100644 --- a/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/metaGameplay/adminMarker/AdminMarker.java +++ b/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/metaGameplay/adminMarker/AdminMarker.java @@ -1,17 +1,30 @@ package eu.mhsl.craftattack.spawn.common.appliances.metaGameplay.adminMarker; +import eu.mhsl.craftattack.spawn.core.api.server.HttpServer; import eu.mhsl.craftattack.spawn.core.appliance.Appliance; import eu.mhsl.craftattack.spawn.common.appliances.metaGameplay.displayName.DisplayName; import net.kyori.adventure.text.format.TextColor; +import org.bukkit.Bukkit; import org.bukkit.Color; +import org.bukkit.OfflinePlayer; import org.bukkit.entity.Player; import org.jetbrains.annotations.Nullable; public class AdminMarker extends Appliance implements DisplayName.Colored { + public final static String adminPermission = "admin"; + @Override public @Nullable TextColor getNameColor(Player player) { - if(player.hasPermission("chatcolor")) + if(player.hasPermission(adminPermission)) return TextColor.color(Color.AQUA.asRGB()); // TODO read permission from config return TextColor.color(Color.WHITE.asRGB()); } + + @Override + public void httpApi(HttpServer.ApiBuilder apiBuilder) { + apiBuilder.get("isAdmin", request -> { + OfflinePlayer player = Bukkit.getOfflinePlayer(request.queryParams("player")); + return player.isOp(); + }); + } }