合并 Dynmap,现已支持 Dynmap 卫星地图渲染。
All checks were successful
Java CI-CD with Maven / build (push) Successful in 35m43s

This commit is contained in:
zhangyuheng 2024-07-18 11:38:04 +08:00
parent 81e7cdd217
commit 4d1325a126
4 changed files with 22 additions and 5 deletions

View File

@ -12,7 +12,7 @@
## 简介 ## 简介
鉴于 Residence 插件的作者项目较多维护压力大无法及时跟进新版本以及适配Folia核心。故开发此插件旨在平替纯净版生存服Residence的使用。 鉴于 Residence 插件的作者项目较多维护压力大无法及时跟进新版本以及适配Folia核心。故开发此插件旨在平替纯净版生存服Residence的使用(支持从 Res 迁移数据)
**请注意本插件目前处于中期测试稳定阶段绝大多数bug或漏洞已被修复目前已具备完全可用性。但不排除仍然存在某些问题如果遇到任何 BUG 欢迎及时发送邮件或添加QQ群告知感激不尽。** **请注意本插件目前处于中期测试稳定阶段绝大多数bug或漏洞已被修复目前已具备完全可用性。但不排除仍然存在某些问题如果遇到任何 BUG 欢迎及时发送邮件或添加QQ群告知感激不尽。**
@ -29,7 +29,7 @@
## 功能介绍 ## 功能介绍
- 支持 Postgresql、Mysql、Sqlite3 存储数据; - 支持 Postgresql、Mysql、Sqlite3 存储数据;
- 支持BlueMap卫星地图渲染 - 支持 BlueMap、Dynmap 卫星地图渲染;
- 支持为玩家单独设置特权; - 支持为玩家单独设置特权;
- 支持设置领地管理员; - 支持设置领地管理员;
- 支持子领地; - 支持子领地;

12
pom.xml
View File

@ -6,7 +6,7 @@
<groupId>cn.lunadeer</groupId> <groupId>cn.lunadeer</groupId>
<artifactId>Dominion</artifactId> <artifactId>Dominion</artifactId>
<version>1.37.1-beta</version> <version>1.38.0-beta</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>Dominion</name> <name>Dominion</name>
@ -70,6 +70,10 @@
<id>lunadeer-repo</id> <id>lunadeer-repo</id>
<url>https://ssl.lunadeer.cn:14454/repository/maven-snapshots/</url> <url>https://ssl.lunadeer.cn:14454/repository/maven-snapshots/</url>
</repository> </repository>
<repository>
<id>MikeRepo</id>
<url>https://repo.mikeprimm.com/</url>
</repository>
</repositories> </repositories>
<dependencies> <dependencies>
@ -95,5 +99,11 @@
<artifactId>snakeyaml</artifactId> <artifactId>snakeyaml</artifactId>
<version>2.0</version> <version>2.0</version>
</dependency> </dependency>
<dependency>
<groupId>us.dynmap</groupId>
<artifactId>dynmap-api</artifactId>
<version>3.4-beta-3</version>
<scope>provided</scope>
</dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -35,7 +35,7 @@ public class DynmapConnect extends DynmapCommonAPIListener {
} }
} }
public void setDominionMarker(DominionDTO dominion) { private void setDominionMarker(DominionDTO dominion) {
String nameLabel = "<div>" + dominion.getName() + "</div>"; String nameLabel = "<div>" + dominion.getName() + "</div>";
double[] xx = {dominion.getX1(), dominion.getX2()}; double[] xx = {dominion.getX1(), dominion.getX2()};
double[] zz = {dominion.getZ1(), dominion.getZ2()}; double[] zz = {dominion.getZ1(), dominion.getZ2()};
@ -55,6 +55,10 @@ public class DynmapConnect extends DynmapCommonAPIListener {
public void setDominionMarkers(List<DominionDTO> dominions) { public void setDominionMarkers(List<DominionDTO> dominions) {
Scheduler.runTaskAsync(() -> { Scheduler.runTaskAsync(() -> {
if (this.markerSet_dominion == null) {
XLogger.warn("无法连接到 Dynmap如果你不打算使用卫星地图渲染建议前往配置文件关闭此功能。");
return;
}
this.markerSet_dominion.getAreaMarkers().forEach(AreaMarker::deleteMarker); this.markerSet_dominion.getAreaMarkers().forEach(AreaMarker::deleteMarker);
for (DominionDTO dominion : dominions) { for (DominionDTO dominion : dominions) {
this.setDominionMarker(dominion); this.setDominionMarker(dominion);
@ -64,6 +68,10 @@ public class DynmapConnect extends DynmapCommonAPIListener {
public void setMCAMarkers(Map<String, List<String>> mca_files) { public void setMCAMarkers(Map<String, List<String>> mca_files) {
Scheduler.runTaskAsync(() -> { Scheduler.runTaskAsync(() -> {
if (this.markerSet_mca == null) {
XLogger.warn("无法连接到 Dynmap如果你不打算使用卫星地图渲染建议前往配置文件关闭此功能。");
return;
}
this.markerSet_mca.getAreaMarkers().forEach(AreaMarker::deleteMarker); this.markerSet_mca.getAreaMarkers().forEach(AreaMarker::deleteMarker);
for (Map.Entry<String, List<String>> entry : mca_files.entrySet()) { for (Map.Entry<String, List<String>> entry : mca_files.entrySet()) {
for (String file : entry.getValue()) { for (String file : entry.getValue()) {

View File

@ -7,7 +7,6 @@ import org.bukkit.entity.Player;
public class Particle { public class Particle {
public static void showBorder(Player player, DominionDTO dominion) { public static void showBorder(Player player, DominionDTO dominion) {
// 由于领地的坐标系统是方块坐标所以大端需要减去1才是实际角点坐标
ParticleRender.showBoxFace(player, ParticleRender.showBoxFace(player,
dominion.getLocation1().getWorld(), dominion.getLocation1().getWorld(),
dominion.getLocation1().getBlockX(), dominion.getLocation1().getBlockX(),