summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Essentials/src/config.yml3
-rw-r--r--EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java3
-rw-r--r--EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java10
-rw-r--r--EssentialsAntiBuild/src/plugin.yml2
4 files changed, 16 insertions, 2 deletions
diff --git a/Essentials/src/config.yml b/Essentials/src/config.yml
index fd698ba9b..e5b2f330a 100644
--- a/Essentials/src/config.yml
+++ b/Essentials/src/config.yml
@@ -659,6 +659,9 @@ protect:
# Which blocks should not be pushed by pistons?
piston:
+
+ # Which blocks should not be dispensed by dispensers
+ dispenser:
############################################################
# +------------------------------------------------------+ #
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java
index 1aa33d02a..f0cdfcef4 100644
--- a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java
+++ b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java
@@ -11,7 +11,8 @@ public enum AntiBuildConfig
blacklist_placement("protect.blacklist.placement"),
blacklist_usage("protect.blacklist.usage"),
blacklist_break("protect.blacklist.break"),
- blacklist_piston("protect.blacklist.piston");
+ blacklist_piston("protect.blacklist.piston"),
+ blacklist_dispenser("protect.blacklist.dispenser");
private final String configName;
private final String defValueString;
private final boolean defValueBoolean;
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
index 67995c955..e457f72f2 100644
--- a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
+++ b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
@@ -313,4 +313,14 @@ public class EssentialsAntiBuildListener implements Listener
}
}
}
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onBlockDispense(final BlockDispenseEvent event)
+ {
+ final ItemStack item = event.getItem();
+ if (prot.checkProtectionItems(AntiBuildConfig.blacklist_dispenser, item.getTypeId()))
+ {
+ event.setCancelled(true);
+ }
+ }
}
diff --git a/EssentialsAntiBuild/src/plugin.yml b/EssentialsAntiBuild/src/plugin.yml
index 8d7ffbc14..cfe6e6367 100644
--- a/EssentialsAntiBuild/src/plugin.yml
+++ b/EssentialsAntiBuild/src/plugin.yml
@@ -5,5 +5,5 @@ main: com.earth2me.essentials.antibuild.EssentialsAntiBuild
version: TeamCity
website: http://tiny.cc/EssentialsCommands
description: Provides build protection.
-authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits]
+authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits, Iaccidentally]
depend: [Essentials]