From e385ffaefcae4bf40d1a0131637c941c5b8ff9b9 Mon Sep 17 00:00:00 2001 From: Travis Watkins Date: Mon, 14 May 2012 17:23:34 -0500 Subject: [PATCH] Call ignite event for fireball shot from dispenser. --- .../net/minecraft/server/EntitySmallFireball.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/minecraft/server/EntitySmallFireball.java b/src/main/java/net/minecraft/server/EntitySmallFireball.java index 6cd2008cf0..bfd8e8248a 100644 --- a/src/main/java/net/minecraft/server/EntitySmallFireball.java +++ b/src/main/java/net/minecraft/server/EntitySmallFireball.java @@ -1,6 +1,9 @@ package net.minecraft.server; -import org.bukkit.event.entity.EntityCombustByEntityEvent; // CraftBukkit +// CraftBukkit start +import org.bukkit.event.block.BlockIgniteEvent; +import org.bukkit.event.entity.EntityCombustByEntityEvent; +// CraftBukkit end public class EntitySmallFireball extends EntityFireball { @@ -63,7 +66,15 @@ public class EntitySmallFireball extends EntityFireball { } if (this.world.isEmpty(i, j, k)) { - this.world.setTypeId(i, j, k, Block.FIRE.id); + // CraftBukkit start + org.bukkit.block.Block block = world.getWorld().getBlockAt(i, j, k); + BlockIgniteEvent event = new BlockIgniteEvent(block, BlockIgniteEvent.IgniteCause.FIREBALL, null); + world.getServer().getPluginManager().callEvent(event); + + if (!event.isCancelled()) { + this.world.setTypeId(i, j, k, Block.FIRE.id); + } + // CraftBukkit end } }