summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/net/minecraft/server/BlockPressurePlateBinary.java32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/main/java/net/minecraft/server/BlockPressurePlateBinary.java b/src/main/java/net/minecraft/server/BlockPressurePlateBinary.java
index 3b9de8a7..428386c5 100644
--- a/src/main/java/net/minecraft/server/BlockPressurePlateBinary.java
+++ b/src/main/java/net/minecraft/server/BlockPressurePlateBinary.java
@@ -43,21 +43,23 @@ public class BlockPressurePlateBinary extends BlockPressurePlateAbstract {
while (iterator.hasNext()) {
Entity entity = (Entity) iterator.next();
- // CraftBukkit start - Fire interact event when turning on a pressure plate
- org.bukkit.World bworld = world.getWorld();
- org.bukkit.plugin.PluginManager manager = world.getServer().getPluginManager();
- org.bukkit.event.Cancellable cancellable;
-
- if (entity instanceof EntityHuman) {
- cancellable = org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent((EntityHuman) entity, org.bukkit.event.block.Action.PHYSICAL, i, j, k, -1, null);
- } else {
- cancellable = new EntityInteractEvent(entity.getBukkitEntity(), bworld.getBlockAt(i, j, k));
- manager.callEvent((EntityInteractEvent) cancellable);
- }
-
- // We only want to block turning the plate on if all events are cancelled
- if (cancellable.isCancelled()) {
- continue;
+ // CraftBukkit start - Call interact event when turning on a pressure plate
+ if (this.c(world.getData(i, j, k)) == 0) {
+ org.bukkit.World bworld = world.getWorld();
+ org.bukkit.plugin.PluginManager manager = world.getServer().getPluginManager();
+ org.bukkit.event.Cancellable cancellable;
+
+ if (entity instanceof EntityHuman) {
+ cancellable = org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent((EntityHuman) entity, org.bukkit.event.block.Action.PHYSICAL, i, j, k, -1, null);
+ } else {
+ cancellable = new EntityInteractEvent(entity.getBukkitEntity(), bworld.getBlockAt(i, j, k));
+ manager.callEvent((EntityInteractEvent) cancellable);
+ }
+
+ // We only want to block turning the plate on if all events are cancelled
+ if (cancellable.isCancelled()) {
+ continue;
+ }
}
// CraftBukkit end