From 18632f90945fe615495463c41b0043ef094dd7a7 Mon Sep 17 00:00:00 2001 From: zhangyuheng Date: Fri, 6 Sep 2024 17:25:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=AB=E6=98=9F=E5=9C=B0=E5=9B=BE=E5=B1=95?= =?UTF-8?q?=E7=A4=BA=E6=96=B0=E5=A2=9E=E6=89=80=E6=9C=89=E4=BA=BA=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=20#12?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- .../java/cn/lunadeer/dominion/managers/Translation.java | 2 ++ .../cn/lunadeer/dominion/utils/map/BlueMapConnect.java | 7 +++++++ .../java/cn/lunadeer/dominion/utils/map/DynmapConnect.java | 7 ++++++- core/src/main/resources/languages/zh-cn.yml | 1 + 5 files changed, 17 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 98c566c..1bf59a3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,7 +4,7 @@ plugins { } group = "cn.lunadeer" -version = "2.6.1-beta" +version = "2.6.2-beta" java { toolchain.languageVersion.set(JavaLanguageVersion.of(21)) diff --git a/core/src/main/java/cn/lunadeer/dominion/managers/Translation.java b/core/src/main/java/cn/lunadeer/dominion/managers/Translation.java index 7812a8b..2e872de 100644 --- a/core/src/main/java/cn/lunadeer/dominion/managers/Translation.java +++ b/core/src/main/java/cn/lunadeer/dominion/managers/Translation.java @@ -504,6 +504,8 @@ public class Translation extends Localization { public static i18n Messages_PlaceholderAPIRegisterSuccess; @i18nField(defaultValue = "共加载了 %d 个领地组") public static i18n Messages_LoadedGroupAmount; + @i18nField(defaultValue = "
%s
所有人:%s
") + public static i18n Messages_MapInfoDetail; @i18nField(defaultValue = "开始自动清理长时间未登录玩家领地数据") public static i18n Messages_AutoCleanStart; diff --git a/core/src/main/java/cn/lunadeer/dominion/utils/map/BlueMapConnect.java b/core/src/main/java/cn/lunadeer/dominion/utils/map/BlueMapConnect.java index 8ea16c6..d10c6af 100644 --- a/core/src/main/java/cn/lunadeer/dominion/utils/map/BlueMapConnect.java +++ b/core/src/main/java/cn/lunadeer/dominion/utils/map/BlueMapConnect.java @@ -2,6 +2,7 @@ package cn.lunadeer.dominion.utils.map; import cn.lunadeer.dominion.Cache; import cn.lunadeer.dominion.dtos.DominionDTO; +import cn.lunadeer.dominion.dtos.PlayerDTO; import cn.lunadeer.dominion.managers.Translation; import cn.lunadeer.minecraftpluginutils.Scheduler; import cn.lunadeer.minecraftpluginutils.XLogger; @@ -37,6 +38,11 @@ public class BlueMapConnect { .build(); for (DominionDTO dominion : d.getValue()) { + PlayerDTO p = PlayerDTO.select(dominion.getOwner()); + if (p == null) { + continue; + } + Collection vectors = new ArrayList<>(); vectors.add(new Vector2d(dominion.getX1() + 0.001, dominion.getZ1() + 0.001)); vectors.add(new Vector2d(dominion.getX2() - 0.001, dominion.getZ1() + 0.001)); @@ -55,6 +61,7 @@ public class BlueMapConnect { Color fill = new Color(r, g, b, 0.2F); ExtrudeMarker marker = ExtrudeMarker.builder() .label(dominion.getName()) + .detail(String.format(Translation.Messages_MapInfoDetail.trans(), dominion.getName(), p.getLastKnownName())) .position(x, y, z) .shape(shape, dominion.getY1() + 0.001f, dominion.getY2() - 0.001f) .lineColor(line) diff --git a/core/src/main/java/cn/lunadeer/dominion/utils/map/DynmapConnect.java b/core/src/main/java/cn/lunadeer/dominion/utils/map/DynmapConnect.java index c3b0e57..da0512e 100644 --- a/core/src/main/java/cn/lunadeer/dominion/utils/map/DynmapConnect.java +++ b/core/src/main/java/cn/lunadeer/dominion/utils/map/DynmapConnect.java @@ -1,6 +1,7 @@ package cn.lunadeer.dominion.utils.map; import cn.lunadeer.dominion.dtos.DominionDTO; +import cn.lunadeer.dominion.dtos.PlayerDTO; import cn.lunadeer.dominion.managers.Translation; import cn.lunadeer.minecraftpluginutils.Scheduler; import cn.lunadeer.minecraftpluginutils.XLogger; @@ -40,7 +41,11 @@ public class DynmapConnect extends DynmapCommonAPIListener { } private void setDominionMarker(DominionDTO dominion) { - String nameLabel = "
" + dominion.getName() + "
"; + PlayerDTO p = PlayerDTO.select(dominion.getOwner()); + if (p == null) { + return; + } + String nameLabel = String.format(Translation.Messages_MapInfoDetail.trans(), dominion.getName(), p.getLastKnownName()); double[] xx = {dominion.getX1(), dominion.getX2()}; double[] zz = {dominion.getZ1(), dominion.getZ2()}; if (dominion.getWorld() == null) { diff --git a/core/src/main/resources/languages/zh-cn.yml b/core/src/main/resources/languages/zh-cn.yml index 719f92f..19ba436 100644 --- a/core/src/main/resources/languages/zh-cn.yml +++ b/core/src/main/resources/languages/zh-cn.yml @@ -250,6 +250,7 @@ Messages: AutoCleanStart: 开始自动清理长时间未登录玩家领地数据 AutoCleanPlayer: 已清理玩家 %s 的领地数据 AutoCleanEnd: 自动清理完成 + MapInfoDetail:
%s
所有人:%s
TUI: NotDominionOwnerOrAdminForPage: 你不是领地 %s 的拥有者或管理员,无权访问此页面 CommandHelp: