diff --git a/TShockAPI/DB/RegionManager.cs b/TShockAPI/DB/RegionManager.cs index 894f4a27..48e17c39 100755 --- a/TShockAPI/DB/RegionManager.cs +++ b/TShockAPI/DB/RegionManager.cs @@ -759,7 +759,7 @@ namespace TShockAPI.DB return false; } - return AllowedIDs.Contains(ply.User.ID) || AllowedGroups.Contains(ply.Group.Name) || Owner == ply.User.Name; + return ply.HasPermission(Permissions.editregion) || AllowedIDs.Contains(ply.User.ID) || AllowedGroups.Contains(ply.Group.Name) || Owner == ply.User.Name; } /// diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 82192c32..8f48506c 100755 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -497,8 +497,7 @@ namespace TShockAPI if (args.Chest != null) { - if (Config.RegionProtectChests && !tsplr.HasPermission(Permissions.editregion) - && !Regions.CanBuild((int)args.Position.X, (int)args.Position.Y, tsplr) && Regions.InArea((int)args.Position.X, (int)args.Position.Y)) + if (Config.RegionProtectChests && !Regions.CanBuild((int)args.Position.X, (int)args.Position.Y, tsplr)) { args.Handled = true; return; @@ -1741,8 +1740,7 @@ namespace TShockAPI return true; } - if (!player.HasPermission(Permissions.editregion) && !Regions.CanBuild(tileX, tileY, player) && - Regions.InArea(tileX, tileY)) + if (!Regions.CanBuild(tileX, tileY, player)) { if (((DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond) - player.RPm) > 2000) { @@ -1809,8 +1807,7 @@ namespace TShockAPI return true; } - if (!player.HasPermission(Permissions.editregion) && !Regions.CanBuild(tileX, tileY, player) && - Regions.InArea(tileX, tileY)) + if (!Regions.CanBuild(tileX, tileY, player)) { if (((DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond) - player.RPm) > 2000) {