修复:领地主可操作管理员权限(GUI/CLI)、农作物种植权限补充新作物
This commit is contained in:
@@ -809,10 +809,10 @@ public class AreaCLIManager {
|
||||
// 获取该成员的per-player权限
|
||||
Map<String, Boolean> playerPerms = areaProtect.getPlayerPermMap(landId, targetPlayer);
|
||||
|
||||
// ★ 管理员权限自动隐藏:管理员自动获得所有权限(发光效果除外)
|
||||
// ★ 管理员权限自动隐藏:非领地主操作管理员时,简化显示(管理员自动获得所有权限)
|
||||
org.bukkit.entity.Player targetBukkit = Bukkit.getPlayerExact(targetPlayer);
|
||||
boolean isTargetAdmin = areaProtect.isLandAdmin(land.name, targetPlayer);
|
||||
if (isTargetAdmin) {
|
||||
if (isTargetAdmin && !isOwner) {
|
||||
p.sendMessage(header(targetPlayer + " 的独立权限"));
|
||||
p.sendMessage(Component.text(""));
|
||||
p.sendMessage(Component.text("§6§l该玩家是管理员,自动获得所有权限"));
|
||||
|
||||
@@ -418,11 +418,14 @@ public class AreaGUIManager implements Listener {
|
||||
Map<String, Boolean> playerPerms = areaProtect.getPlayerPermMap(landId, targetPlayer);
|
||||
int slot = 0;
|
||||
|
||||
// ★ 权限检查:只有所有者或管理员能编辑成员权限
|
||||
boolean isOwner = p.getName().equalsIgnoreCase(land.owner);
|
||||
|
||||
// ★ 管理员状态检测(领地级管理员,非全局tag)
|
||||
boolean isAdmin = areaProtect.isLandAdmin(landName, targetPlayer);
|
||||
|
||||
// ★ 管理员提示:管理员自动获得所有权限
|
||||
if (isAdmin) {
|
||||
// ★ 管理员提示:非领地主操作管理员时简化显示
|
||||
if (isAdmin && !isOwner) {
|
||||
inv.setItem(22, createItem(Material.GOLD_BLOCK, "§6§l管理员权限",
|
||||
"§7该玩家是此领地管理员,自动获得所有权限",
|
||||
"§7点击切换管理员身份"));
|
||||
|
||||
@@ -4704,7 +4704,9 @@ public class AreaProtection implements Listener {
|
||||
|| name.contains("SUGAR_CANE") || name.contains("NETHER_WART")
|
||||
|| name.contains("KELP") || name.contains("SEA_PICKLE")
|
||||
|| name.contains("CHORUS") || name.contains("TWISTING_VINES")
|
||||
|| name.contains("WEEPING_VINES") || mat == Material.MELON_STEM
|
||||
|| name.contains("WEEPING_VINES") || name.contains("PITCHER")
|
||||
|| name.contains("TORCHFLOWER")
|
||||
|| mat == Material.MELON_STEM
|
||||
|| mat == Material.ATTACHED_MELON_STEM
|
||||
|| mat == Material.PUMPKIN_STEM
|
||||
|| mat == Material.ATTACHED_PUMPKIN_STEM;
|
||||
@@ -4734,15 +4736,15 @@ public class AreaProtection implements Listener {
|
||||
private boolean isCropSeed(Material mat) {
|
||||
String name = mat.name();
|
||||
return name.contains("SEEDS") || name.contains("SAPLING")
|
||||
|| name.contains("STEM") || name.contains("PICKLE")
|
||||
|| mat == Material.BAMBOO || mat == Material.SUGAR_CANE
|
||||
|| mat == Material.CACTUS || mat == Material.COCOA_BEANS
|
||||
|| mat == Material.NETHER_WART || mat == Material.KELP
|
||||
|| mat == Material.TWISTING_VINES || mat == Material.WEEPING_VINES
|
||||
|| mat == Material.CHORUS_FLOWER || mat == Material.SWEET_BERRY_BUSH
|
||||
|| mat == Material.MELON_STEM || mat == Material.ATTACHED_MELON_STEM
|
||||
|| mat == Material.PUMPKIN_STEM || mat == Material.ATTACHED_PUMPKIN_STEM
|
||||
|| mat == Material.CARROT || mat == Material.POTATO
|
||||
|| mat == Material.BEETROOT_SEEDS || mat == Material.WHEAT_SEEDS;
|
||||
|| mat == Material.BEETROOT_SEEDS || mat == Material.WHEAT_SEEDS
|
||||
|| mat == Material.PITCHER_POD || mat == Material.TORCHFLOWER_SEEDS;
|
||||
}
|
||||
|
||||
// ★ 检查是否为动物食物(包括玩家食物+动物专用食物)
|
||||
|
||||
Reference in New Issue
Block a user