Improved world guard compat feature.

Now it knows about world guard override permissions.
This commit is contained in:
ryanhamshire 2015-01-26 18:40:58 -08:00
parent c7b9897738
commit 7e2c75e10b
2 changed files with 6 additions and 1 deletions

View File

@ -149,7 +149,7 @@ commands:
permissions: permissions:
griefprevention.createclaims: griefprevention.createclaims:
description: Grants permission to create claims. description: Grants permission to create claims.
default: op default: true
griefprevention.admin.*: griefprevention.admin.*:
description: Grants all administrative functionality. description: Grants all administrative functionality.
children: children:

View File

@ -7,6 +7,7 @@ import org.bukkit.entity.Player;
import com.sk89q.worldedit.BlockVector; import com.sk89q.worldedit.BlockVector;
import com.sk89q.worldguard.LocalPlayer; import com.sk89q.worldguard.LocalPlayer;
import com.sk89q.worldguard.bukkit.WorldGuardPlugin; import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
import com.sk89q.worldguard.bukkit.permission.RegionPermissionModel;
import com.sk89q.worldguard.protection.ApplicableRegionSet; import com.sk89q.worldguard.protection.ApplicableRegionSet;
import com.sk89q.worldguard.protection.flags.DefaultFlag; import com.sk89q.worldguard.protection.flags.DefaultFlag;
import com.sk89q.worldguard.protection.managers.RegionManager; import com.sk89q.worldguard.protection.managers.RegionManager;
@ -24,7 +25,11 @@ class WorldGuardWrapper
public boolean canBuild(Location lesserCorner, Location greaterCorner, Player creatingPlayer) public boolean canBuild(Location lesserCorner, Location greaterCorner, Player creatingPlayer)
{ {
World world = lesserCorner.getWorld(); World world = lesserCorner.getWorld();
if(new RegionPermissionModel(this.worldGuard, creatingPlayer).mayIgnoreRegionProtection(world)) return true;
RegionManager manager = this.worldGuard.getRegionManager(world); RegionManager manager = this.worldGuard.getRegionManager(world);
if(manager != null) if(manager != null)
{ {
ProtectedCuboidRegion tempRegion = new ProtectedCuboidRegion( ProtectedCuboidRegion tempRegion = new ProtectedCuboidRegion(