diff --git a/pom.xml b/pom.xml
index 30569e9..503d2c4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
cn.lunadeer
Dominion
- 1.4.5-beta
+ 1.4.6-beta
jar
Dominion
diff --git a/src/main/java/cn/lunadeer/dominion/commands/PlayerPrivilege.java b/src/main/java/cn/lunadeer/dominion/commands/PlayerPrivilege.java
index 9d76353..cb5448d 100644
--- a/src/main/java/cn/lunadeer/dominion/commands/PlayerPrivilege.java
+++ b/src/main/java/cn/lunadeer/dominion/commands/PlayerPrivilege.java
@@ -38,7 +38,7 @@ public class PlayerPrivilege {
}
Notification.info(sender, "成功创建玩家特权 " + args[1]);
if (args.length == 4) {
- String[] newArgs = new String[3];
+ String[] newArgs = new String[2];
newArgs[0] = "privilege_list";
newArgs[1] = args[2];
DominionPrivilegeList.show(sender, newArgs);
diff --git a/src/main/java/cn/lunadeer/dominion/tuis/Apis.java b/src/main/java/cn/lunadeer/dominion/tuis/Apis.java
index abb0280..f93f580 100644
--- a/src/main/java/cn/lunadeer/dominion/tuis/Apis.java
+++ b/src/main/java/cn/lunadeer/dominion/tuis/Apis.java
@@ -26,14 +26,38 @@ public class Apis {
return page;
}
- public static DominionDTO getDominion(Player player, String[] args) {
- if (args.length == 2) {
+ /**
+ * 尝试从 arg[1] 获取领地名称
+ * 如果没有此参数则会尝试获取玩家当前所在位置
+ *
+ * @param player 玩家
+ * @param args 参数
+ * @return 领地信息
+ */
+ public static DominionDTO getDominionNameArg_1(Player player, String[] args) {
+ if (args.length >= 2) {
return DominionDTO.select(args[1]);
} else {
return getPlayerCurrentDominion(player);
}
}
+ /**
+ * 尝试从 arg[2] 获取领地名称
+ * 如果没有此参数则会尝试获取玩家当前所在位置
+ *
+ * @param player 玩家
+ * @param args 参数
+ * @return 领地信息
+ */
+ public static DominionDTO getDominionNameArg_2(Player player, String[] args) {
+ if (args.length >= 3) {
+ return DominionDTO.select(args[2]);
+ } else {
+ return getPlayerCurrentDominion(player);
+ }
+ }
+
public static boolean noAuthToManage(Player player, DominionDTO dominion) {
if (player.isOp()) return false;
if (!dominion.getOwner().equals(player.getUniqueId())) {
diff --git a/src/main/java/cn/lunadeer/dominion/tuis/DominionManage.java b/src/main/java/cn/lunadeer/dominion/tuis/DominionManage.java
index 1e52e5b..ecb24f1 100644
--- a/src/main/java/cn/lunadeer/dominion/tuis/DominionManage.java
+++ b/src/main/java/cn/lunadeer/dominion/tuis/DominionManage.java
@@ -9,14 +9,14 @@ import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import static cn.lunadeer.dominion.commands.Apis.playerOnly;
-import static cn.lunadeer.dominion.tuis.Apis.getDominion;
+import static cn.lunadeer.dominion.tuis.Apis.getDominionNameArg_1;
import static cn.lunadeer.dominion.tuis.Apis.noAuthToManage;
public class DominionManage {
public static void show(CommandSender sender, String[] args) {
Player player = playerOnly(sender);
if (player == null) return;
- DominionDTO dominion = getDominion(player, args);
+ DominionDTO dominion = getDominionNameArg_1(player, args);
if (dominion == null) {
Notification.error(sender, "你不在任何领地内,请指定领地名称 /dominion manage <领地名称>");
return;
diff --git a/src/main/java/cn/lunadeer/dominion/tuis/DominionPrivilegeList.java b/src/main/java/cn/lunadeer/dominion/tuis/DominionPrivilegeList.java
index 0070082..727a13c 100644
--- a/src/main/java/cn/lunadeer/dominion/tuis/DominionPrivilegeList.java
+++ b/src/main/java/cn/lunadeer/dominion/tuis/DominionPrivilegeList.java
@@ -13,7 +13,7 @@ import org.bukkit.entity.Player;
import java.util.List;
import static cn.lunadeer.dominion.commands.Apis.playerOnly;
-import static cn.lunadeer.dominion.tuis.Apis.getDominion;
+import static cn.lunadeer.dominion.tuis.Apis.getDominionNameArg_1;
import static cn.lunadeer.dominion.tuis.Apis.noAuthToManage;
public class DominionPrivilegeList {
@@ -28,7 +28,7 @@ public class DominionPrivilegeList {
}
Player player = playerOnly(sender);
if (player == null) return;
- DominionDTO dominion = getDominion(player, args);
+ DominionDTO dominion = getDominionNameArg_1(player, args);
if (dominion == null) {
Notification.error(sender, "你不在任何领地内,请指定领地名称 /dominion privilege_list <领地名称>");
return;
diff --git a/src/main/java/cn/lunadeer/dominion/tuis/DominionSizeInfo.java b/src/main/java/cn/lunadeer/dominion/tuis/DominionSizeInfo.java
index 58d1fb6..4238cb1 100644
--- a/src/main/java/cn/lunadeer/dominion/tuis/DominionSizeInfo.java
+++ b/src/main/java/cn/lunadeer/dominion/tuis/DominionSizeInfo.java
@@ -11,13 +11,13 @@ import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import static cn.lunadeer.dominion.commands.Apis.playerOnly;
-import static cn.lunadeer.dominion.tuis.Apis.getDominion;
+import static cn.lunadeer.dominion.tuis.Apis.getDominionNameArg_1;
public class DominionSizeInfo {
public static void show(CommandSender sender, String[] args) {
Player player = playerOnly(sender);
if (player == null) return;
- DominionDTO dominion = getDominion(player, args);
+ DominionDTO dominion = getDominionNameArg_1(player, args);
if (dominion == null) {
Notification.error(sender, "你不在任何领地内,请指定领地名称 /dominion info <领地名称>");
return;
diff --git a/src/main/java/cn/lunadeer/dominion/tuis/PrivilegeInfo.java b/src/main/java/cn/lunadeer/dominion/tuis/PrivilegeInfo.java
index 4d14b72..35a312a 100644
--- a/src/main/java/cn/lunadeer/dominion/tuis/PrivilegeInfo.java
+++ b/src/main/java/cn/lunadeer/dominion/tuis/PrivilegeInfo.java
@@ -11,15 +11,14 @@ import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import static cn.lunadeer.dominion.commands.Apis.playerOnly;
-import static cn.lunadeer.dominion.tuis.Apis.getDominion;
-import static cn.lunadeer.dominion.tuis.Apis.noAuthToManage;
+import static cn.lunadeer.dominion.tuis.Apis.*;
public class PrivilegeInfo {
// /dominion privilege_info <玩家名称> [领地名称] [页码]
public static void show(CommandSender sender, String[] args) {
Player player = playerOnly(sender);
if (player == null) return;
- DominionDTO dominion = getDominion(player, args);
+ DominionDTO dominion = getDominionNameArg_2(player, args);
int page = 1;
if (args.length == 4) {
try {