mirror of
https://github.com/ColdeZhang/Dominion.git
synced 2024-12-28 17:34:33 +08:00
add max size configuration
This commit is contained in:
parent
fa8244e6aa
commit
8d62c34a66
src/main
java/cn/lunadeer/dominion
resources
@ -1,5 +1,6 @@
|
|||||||
package cn.lunadeer.dominion.controllers;
|
package cn.lunadeer.dominion.controllers;
|
||||||
|
|
||||||
|
import cn.lunadeer.dominion.Dominion;
|
||||||
import cn.lunadeer.dominion.dtos.DominionDTO;
|
import cn.lunadeer.dominion.dtos.DominionDTO;
|
||||||
import cn.lunadeer.dominion.utils.Notification;
|
import cn.lunadeer.dominion.utils.Notification;
|
||||||
import cn.lunadeer.dominion.utils.Time;
|
import cn.lunadeer.dominion.utils.Time;
|
||||||
@ -15,7 +16,7 @@ import static cn.lunadeer.dominion.controllers.Apis.notOwner;
|
|||||||
|
|
||||||
public class DominionController {
|
public class DominionController {
|
||||||
|
|
||||||
public static List<DominionDTO> all(Player owner){
|
public static List<DominionDTO> all(Player owner) {
|
||||||
return DominionDTO.selectAll(owner.getUniqueId());
|
return DominionDTO.selectAll(owner.getUniqueId());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -62,6 +63,17 @@ public class DominionController {
|
|||||||
Notification.error(owner, "禁止跨世界操作");
|
Notification.error(owner, "禁止跨世界操作");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
int x_length = Math.abs((int) (loc1.getX() - loc2.getX()));
|
||||||
|
int y_length = Math.abs((int) (loc1.getY() - loc2.getY()));
|
||||||
|
int z_length = Math.abs((int) (loc1.getZ() - loc2.getZ()));
|
||||||
|
if (x_length < 4 || y_length < 4 || z_length < 4) {
|
||||||
|
Notification.error(owner, "领地的任意一边长度不得小于4");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (x_length > Dominion.config.getMaxX() || y_length > Dominion.config.getMaxY() || z_length > Dominion.config.getMaxZ()) {
|
||||||
|
Notification.error(owner, "领地尺寸不能超过 " + Dominion.config.getMaxX() + " x " + Dominion.config.getMaxY() + " x " + Dominion.config.getMaxZ());
|
||||||
|
return null;
|
||||||
|
}
|
||||||
DominionDTO dominion = new DominionDTO(owner.getUniqueId(), name, owner.getWorld().getName(),
|
DominionDTO dominion = new DominionDTO(owner.getUniqueId(), name, owner.getWorld().getName(),
|
||||||
(int) Math.min(loc1.getX(), loc2.getX()), (int) Math.min(loc1.getY(), loc2.getY()),
|
(int) Math.min(loc1.getX(), loc2.getX()), (int) Math.min(loc1.getY(), loc2.getY()),
|
||||||
(int) Math.min(loc1.getZ(), loc2.getZ()), (int) Math.max(loc1.getX(), loc2.getX()),
|
(int) Math.min(loc1.getZ(), loc2.getZ()), (int) Math.max(loc1.getX(), loc2.getX()),
|
||||||
|
@ -21,6 +21,9 @@ public class ConfigManager {
|
|||||||
_db_user = _file.getString("Database.User", "postgres");
|
_db_user = _file.getString("Database.User", "postgres");
|
||||||
_db_pass = _file.getString("Database.Pass", "postgres");
|
_db_pass = _file.getString("Database.Pass", "postgres");
|
||||||
_auto_create_radius = _file.getInt("AutoCreateRadius", 10);
|
_auto_create_radius = _file.getInt("AutoCreateRadius", 10);
|
||||||
|
_max_x = _file.getInt("MaxX", 128);
|
||||||
|
_max_y = _file.getInt("MaxY", 64);
|
||||||
|
_max_z = _file.getInt("MaxZ", 128);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Boolean isDebug() {
|
public Boolean isDebug() {
|
||||||
@ -64,6 +67,36 @@ public class ConfigManager {
|
|||||||
return _db_pass;
|
return _db_pass;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Integer getMaxX() {
|
||||||
|
return _max_x;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxX(Integer max_x) {
|
||||||
|
_max_x = max_x;
|
||||||
|
_file.set("MaxX", max_x);
|
||||||
|
_plugin.saveConfig();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getMaxY() {
|
||||||
|
return _max_y;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxY(Integer max_y) {
|
||||||
|
_max_y = max_y;
|
||||||
|
_file.set("MaxY", max_y);
|
||||||
|
_plugin.saveConfig();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getMaxZ() {
|
||||||
|
return _max_z;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxZ(Integer max_z) {
|
||||||
|
_max_z = max_z;
|
||||||
|
_file.set("MaxZ", max_z);
|
||||||
|
_plugin.saveConfig();
|
||||||
|
}
|
||||||
|
|
||||||
public Integer getAutoCreateRadius() {
|
public Integer getAutoCreateRadius() {
|
||||||
return _auto_create_radius;
|
return _auto_create_radius;
|
||||||
}
|
}
|
||||||
@ -86,4 +119,8 @@ public class ConfigManager {
|
|||||||
private String _db_name;
|
private String _db_name;
|
||||||
|
|
||||||
private Integer _auto_create_radius;
|
private Integer _auto_create_radius;
|
||||||
|
|
||||||
|
private Integer _max_x;
|
||||||
|
private Integer _max_y;
|
||||||
|
private Integer _max_z;
|
||||||
}
|
}
|
||||||
|
@ -6,5 +6,8 @@ Database:
|
|||||||
Pass: dominion
|
Pass: dominion
|
||||||
|
|
||||||
AutoCreateRadius: 10
|
AutoCreateRadius: 10
|
||||||
|
MaxX: 128
|
||||||
|
MaxY: 64
|
||||||
|
MaxZ: 128
|
||||||
|
|
||||||
Debug: false
|
Debug: false
|
Loading…
Reference in New Issue
Block a user