mirror of
https://e.coding.net/circlecloud/Residence.git
synced 2025-11-25 21:56:06 +00:00
@@ -88,9 +88,8 @@ public class Residence {
|
||||
final ClaimedResidence res = getResidenceManager().getByLoc(loc);
|
||||
if (res != null) {
|
||||
return res.getPermissions();
|
||||
} else {
|
||||
return getWorldFlags().getPerms(loc.getWorld().getName());
|
||||
}
|
||||
return getWorldFlags().getPerms(loc.getWorld().getName());
|
||||
}
|
||||
|
||||
public static FlagPermissions getPermsByLocForPlayer(final Location loc, final Player player) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -27,8 +27,14 @@ import cn.citycraft.Residence.ResidenceMain;
|
||||
*/
|
||||
public class FlagPermissions {
|
||||
|
||||
protected static ResidenceMain plugin;
|
||||
public static enum FlagState {
|
||||
FALSE,
|
||||
INVALID,
|
||||
NEITHER,
|
||||
TRUE
|
||||
}
|
||||
|
||||
protected static ResidenceMain plugin;
|
||||
protected static ArrayList<String> validAreaFlags = new ArrayList<String>();
|
||||
protected static HashMap<String, ArrayList<String>> validFlagGroups = new HashMap<String, ArrayList<String>>();
|
||||
protected static ArrayList<String> validFlags = new ArrayList<String>();
|
||||
@@ -37,6 +43,7 @@ public class FlagPermissions {
|
||||
protected Map<String, Boolean> cuboidFlags;
|
||||
protected Map<String, Map<String, Boolean>> groupFlags;
|
||||
protected FlagPermissions parent;
|
||||
|
||||
protected Map<String, Map<String, Boolean>> playerFlags;
|
||||
|
||||
public FlagPermissions() {
|
||||
@@ -457,9 +464,8 @@ public class FlagPermissions {
|
||||
sbuild.append("none");
|
||||
}
|
||||
return sbuild.toString();
|
||||
} else {
|
||||
return "none";
|
||||
}
|
||||
return "none";
|
||||
}
|
||||
|
||||
public String listOtherPlayersFlags(String player) {
|
||||
@@ -509,9 +515,8 @@ public class FlagPermissions {
|
||||
sbuild.append("none");
|
||||
}
|
||||
return sbuild.toString();
|
||||
} else {
|
||||
return "none";
|
||||
}
|
||||
return "none";
|
||||
}
|
||||
|
||||
public boolean playerHas(final String player, final String world, final String flag, final boolean def) {
|
||||
@@ -627,11 +632,4 @@ public class FlagPermissions {
|
||||
}
|
||||
return def;
|
||||
}
|
||||
|
||||
public static enum FlagState {
|
||||
FALSE,
|
||||
INVALID,
|
||||
NEITHER,
|
||||
TRUE
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,8 +25,8 @@ import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.event.ResidenceCreationEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceDeleteEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceRenameEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceDeleteEvent.DeleteCause;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceRenameEvent;
|
||||
|
||||
import cn.citycraft.Residence.ResidenceMain;
|
||||
import cn.citycraft.Residence.permissions.PermissionGroup;
|
||||
@@ -545,11 +545,13 @@ public class ResidenceManager {
|
||||
player.sendMessage(ChatColor.YELLOW + plugin.getLanguage().getPhrase("Total.Size") + ":" + ChatColor.LIGHT_PURPLE + " " + res.getTotalSize());
|
||||
if (aid != null) {
|
||||
player.sendMessage(ChatColor.YELLOW + plugin.getLanguage().getPhrase("CoordsT") + ": " + ChatColor.LIGHT_PURPLE
|
||||
+ plugin.getLanguage().getPhrase("CoordsTop", res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockX() + "."
|
||||
+ res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockY() + "." + res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockZ()));
|
||||
+ plugin.getLanguage().getPhrase("CoordsTop",
|
||||
res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockX() + "." + res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockY() + "."
|
||||
+ res.getAreaByLoc(player.getLocation()).getHighLoc().getBlockZ()));
|
||||
player.sendMessage(ChatColor.YELLOW + plugin.getLanguage().getPhrase("CoordsB") + ": " + ChatColor.LIGHT_PURPLE
|
||||
+ plugin.getLanguage().getPhrase("CoordsBottom", res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockX() + "."
|
||||
+ res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockY() + "." + res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockZ()));
|
||||
+ plugin.getLanguage().getPhrase("CoordsBottom",
|
||||
res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockX() + "." + res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockY() + "."
|
||||
+ res.getAreaByLoc(player.getLocation()).getLowLoc().getBlockZ()));
|
||||
if (plugin.isUseWorldEdit()) {
|
||||
WECUI.UPDATESELECT(res, player);
|
||||
}
|
||||
@@ -683,17 +685,15 @@ public class ResidenceManager {
|
||||
ChatColor.GREEN + plugin.getLanguage().getPhrase("ResidenceRename", ChatColor.YELLOW + oldName + ChatColor.GREEN + "." + ChatColor.YELLOW + newName + ChatColor.GREEN));
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
final String[] oldname = oldName.split("\\.");
|
||||
final ClaimedResidence parent = res.getParent();
|
||||
return parent.renameSubzone(player, oldname[oldname.length - 1], newName, resadmin);
|
||||
}
|
||||
} else {
|
||||
if (player != null) {
|
||||
player.sendMessage(ChatColor.RED + plugin.getLanguage().getPhrase("NoPermission"));
|
||||
}
|
||||
return false;
|
||||
final String[] oldname = oldName.split("\\.");
|
||||
final ClaimedResidence parent = res.getParent();
|
||||
return parent.renameSubzone(player, oldname[oldname.length - 1], newName, resadmin);
|
||||
}
|
||||
if (player != null) {
|
||||
player.sendMessage(ChatColor.RED + plugin.getLanguage().getPhrase("NoPermission"));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean renameResidence(final String oldName, final String newName) {
|
||||
@@ -719,8 +719,7 @@ public class ResidenceManager {
|
||||
return worldmap;
|
||||
}
|
||||
|
||||
private void getResidenceList(final String targetplayer, final boolean showhidden, final boolean showsubzones, final String parentzone, final String resname, final ClaimedResidence res,
|
||||
final ArrayList<String> list, final boolean formattedOutput) {
|
||||
private void getResidenceList(final String targetplayer, final boolean showhidden, final boolean showsubzones, final String parentzone, final String resname, final ClaimedResidence res, final ArrayList<String> list, final boolean formattedOutput) {
|
||||
final boolean hidden = res.getPermissions().has("hidden", false);
|
||||
if ((showhidden) || (!showhidden && !hidden)) {
|
||||
if (targetplayer == null || res.getPermissions().getOwner().equalsIgnoreCase(targetplayer)) {
|
||||
|
||||
@@ -18,8 +18,8 @@ import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.event.ResidenceFlagChangeEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceFlagCheckEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceOwnerChangeEvent;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceFlagEvent.FlagType;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceOwnerChangeEvent;
|
||||
|
||||
import cn.citycraft.Residence.ResidenceMain;
|
||||
import cn.citycraft.Residence.permissions.PermissionGroup;
|
||||
@@ -260,9 +260,8 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
final String renter = plugin.getRentManager().getRentingPlayer(resname);
|
||||
if (player.getName().equalsIgnoreCase(renter)) {
|
||||
return true;
|
||||
} else {
|
||||
return (playerHas(player.getName(), "admin", false));
|
||||
}
|
||||
return (playerHas(player.getName(), "admin", false));
|
||||
}
|
||||
}
|
||||
if (requireOwner) {
|
||||
|
||||
@@ -45,9 +45,8 @@ public class WorldFlagManager {
|
||||
if (list == null) {
|
||||
if (globaldefaults == null) {
|
||||
return new FlagPermissions();
|
||||
} else {
|
||||
return globaldefaults;
|
||||
}
|
||||
return globaldefaults;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user