summaryrefslogtreecommitdiffstats
path: root/EssentialsAntiBuild
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsAntiBuild')
-rw-r--r--EssentialsAntiBuild/src/net/ess3/antibuild/EssentialsAntiBuildListener.java23
1 files changed, 18 insertions, 5 deletions
diff --git a/EssentialsAntiBuild/src/net/ess3/antibuild/EssentialsAntiBuildListener.java b/EssentialsAntiBuild/src/net/ess3/antibuild/EssentialsAntiBuildListener.java
index 81acdc1e3..250bca9dd 100644
--- a/EssentialsAntiBuild/src/net/ess3/antibuild/EssentialsAntiBuildListener.java
+++ b/EssentialsAntiBuild/src/net/ess3/antibuild/EssentialsAntiBuildListener.java
@@ -6,6 +6,7 @@ import net.ess3.api.IUser;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.entity.Entity;
+import org.bukkit.entity.EntityType;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@@ -108,15 +109,27 @@ public class EssentialsAntiBuildListener implements Listener
final Entity entity = event.getRemover();
if (entity instanceof Player)
{
+ final Boolean warn = antib.getSettings().getData().isWarnOnBuildDisallow();
+ final EntityType type = event.getEntity().getType();
final IUser user = ess.getUserMap().getUser((Player)entity);
- if (antib.getSettings().getData().isDisableBuild() && !Permissions.BUILD.isAuthorized(user) && !Permissions.BREAK.isAuthorized(
- user, Material.PAINTING, null))
+ if (antib.getSettings().getData().isDisableBuild() && !Permissions.BUILD.isAuthorized(user))
{
- if (antib.getSettings().getData().isWarnOnBuildDisallow())
+ if (type == EntityType.PAINTING && !Permissions.BREAK.isAuthorized(user, Material.PAINTING, null))
{
- user.sendMessage(_("antiBuildBreak", Material.PAINTING.toString()));
+ if (warn)
+ {
+ user.sendMessage(_("antiBuildBreak", Material.PAINTING.toString()));
+ }
+ event.setCancelled(true);
+ }
+ else if (type == EntityType.ITEM_FRAME && !Permissions.BREAK.isAuthorized(user, Material.ITEM_FRAME, null))
+ {
+ if (warn)
+ {
+ user.sendMessage(_("antiBuildBreak", Material.ITEM_FRAME.toString()));
+ }
+ event.setCancelled(true);
}
- event.setCancelled(true);
}
}
}