diff options
author | Yariv Livay <yarivlivay@gmail.com> | 2013-03-17 22:46:48 +0200 |
---|---|---|
committer | Travis Watkins <amaranth@ubuntu.com> | 2013-03-18 12:47:01 -0500 |
commit | a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4 (patch) | |
tree | cc24b480e39c5346abb8d6c6632b318bb6cba23c /src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java | |
parent | 2e6cfdb3cc9147d49c050dbd21a6ae37c3a916dd (diff) | |
download | craftbukkit-a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4.tar craftbukkit-a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4.tar.gz craftbukkit-a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4.tar.lz craftbukkit-a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4.tar.xz craftbukkit-a7a5f273e3765a819f7d2ac71b4be4dbd28f9db4.zip |
Implement new cause versions of BlockIgniteEvent. Addresses BUKKIT-3609, BUKKIT-3656, BUKKIT-3657
Diffstat (limited to 'src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java')
-rw-r--r-- | src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java b/src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java index 834e93a2..c15c468b 100644 --- a/src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java +++ b/src/main/java/net/minecraft/server/DispenseBehaviorFlintAndSteel.java @@ -1,6 +1,7 @@ package net.minecraft.server; // CraftBukkit start +import org.bukkit.craftbukkit.event.CraftEventFactory; import org.bukkit.craftbukkit.inventory.CraftItemStack; import org.bukkit.event.block.BlockDispenseEvent; // CraftBukkit end @@ -43,10 +44,14 @@ final class DispenseBehaviorFlintAndSteel extends DispenseBehaviorItem { // CraftBukkit end if (world.isEmpty(i, j, k)) { - world.setTypeIdUpdate(i, j, k, Block.FIRE.id); - if (itemstack.isDamaged(1, world.random)) { - itemstack.count = 0; + // CraftBukkit - ignition by dispensing flint and steel + if (!CraftEventFactory.callBlockIgniteEvent(world, i, j, k, isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ()).isCancelled()) { + world.setTypeIdUpdate(i, j, k, Block.FIRE.id); + if (itemstack.isDamaged(1, world.random)) { + itemstack.count = 0; + } } + // CraftBukkit end } else if (world.getTypeId(i, j, k) == Block.TNT.id) { Block.TNT.postBreak(world, i, j, k, 1); world.setAir(i, j, k); |