From 4d1325a126e9f31d384bad44860b7824fc7501d5 Mon Sep 17 00:00:00 2001 From: zhangyuheng Date: Thu, 18 Jul 2024 11:38:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6=20Dynmap=EF=BC=8C=E7=8E=B0?= =?UTF-8?q?=E5=B7=B2=E6=94=AF=E6=8C=81=20Dynmap=20=E5=8D=AB=E6=98=9F?= =?UTF-8?q?=E5=9C=B0=E5=9B=BE=E6=B8=B2=E6=9F=93=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- pom.xml | 12 +++++++++++- .../cn/lunadeer/dominion/utils/DynmapConnect.java | 10 +++++++++- .../java/cn/lunadeer/dominion/utils/Particle.java | 1 - 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index ffcafe3..ca8a7e9 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ ## 简介 -鉴于 Residence 插件的作者项目较多,维护压力大,无法及时跟进新版本以及适配Folia核心。故开发此插件,旨在平替纯净版生存服Residence的使用。 +鉴于 Residence 插件的作者项目较多,维护压力大,无法及时跟进新版本以及适配Folia核心。故开发此插件,旨在平替纯净版生存服Residence的使用(支持从 Res 迁移数据)。 **请注意,本插件目前处于中期测试稳定阶段,绝大多数bug或漏洞已被修复,目前已具备完全可用性。但不排除仍然存在某些问题,如果遇到任何 BUG 欢迎及时发送邮件或添加QQ群告知,感激不尽。** @@ -29,7 +29,7 @@ ## 功能介绍 - 支持 Postgresql、Mysql、Sqlite3 存储数据; -- 支持BlueMap卫星地图渲染; +- 支持 BlueMap、Dynmap 卫星地图渲染; - 支持为玩家单独设置特权; - 支持设置领地管理员; - 支持子领地; diff --git a/pom.xml b/pom.xml index 378267a..19e39c9 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ cn.lunadeer Dominion - 1.37.1-beta + 1.38.0-beta jar Dominion @@ -70,6 +70,10 @@ lunadeer-repo https://ssl.lunadeer.cn:14454/repository/maven-snapshots/ + + MikeRepo + https://repo.mikeprimm.com/ + @@ -95,5 +99,11 @@ snakeyaml 2.0 + + us.dynmap + dynmap-api + 3.4-beta-3 + provided + diff --git a/src/main/java/cn/lunadeer/dominion/utils/DynmapConnect.java b/src/main/java/cn/lunadeer/dominion/utils/DynmapConnect.java index 0b29086..c337e92 100644 --- a/src/main/java/cn/lunadeer/dominion/utils/DynmapConnect.java +++ b/src/main/java/cn/lunadeer/dominion/utils/DynmapConnect.java @@ -35,7 +35,7 @@ public class DynmapConnect extends DynmapCommonAPIListener { } } - public void setDominionMarker(DominionDTO dominion) { + private void setDominionMarker(DominionDTO dominion) { String nameLabel = "
" + dominion.getName() + "
"; double[] xx = {dominion.getX1(), dominion.getX2()}; double[] zz = {dominion.getZ1(), dominion.getZ2()}; @@ -55,6 +55,10 @@ public class DynmapConnect extends DynmapCommonAPIListener { public void setDominionMarkers(List dominions) { Scheduler.runTaskAsync(() -> { + if (this.markerSet_dominion == null) { + XLogger.warn("无法连接到 Dynmap,如果你不打算使用卫星地图渲染建议前往配置文件关闭此功能。"); + return; + } this.markerSet_dominion.getAreaMarkers().forEach(AreaMarker::deleteMarker); for (DominionDTO dominion : dominions) { this.setDominionMarker(dominion); @@ -64,6 +68,10 @@ public class DynmapConnect extends DynmapCommonAPIListener { public void setMCAMarkers(Map> mca_files) { Scheduler.runTaskAsync(() -> { + if (this.markerSet_mca == null) { + XLogger.warn("无法连接到 Dynmap,如果你不打算使用卫星地图渲染建议前往配置文件关闭此功能。"); + return; + } this.markerSet_mca.getAreaMarkers().forEach(AreaMarker::deleteMarker); for (Map.Entry> entry : mca_files.entrySet()) { for (String file : entry.getValue()) { diff --git a/src/main/java/cn/lunadeer/dominion/utils/Particle.java b/src/main/java/cn/lunadeer/dominion/utils/Particle.java index 3b3065a..a45d730 100644 --- a/src/main/java/cn/lunadeer/dominion/utils/Particle.java +++ b/src/main/java/cn/lunadeer/dominion/utils/Particle.java @@ -7,7 +7,6 @@ import org.bukkit.entity.Player; public class Particle { public static void showBorder(Player player, DominionDTO dominion) { - // 由于领地的坐标系统是方块坐标,所以大端需要减去1才是实际角点坐标 ParticleRender.showBoxFace(player, dominion.getLocation1().getWorld(), dominion.getLocation1().getBlockX(),