SPIGOT-759: Add FireworkExplodeEvent.

This commit is contained in:
DemonWav 2015-09-30 09:02:11 +10:00 committed by md_5
parent 8cc1683e83
commit d4e32cef0c
2 changed files with 18 additions and 1 deletions

View File

@ -1 +1,11 @@
--- a/net/minecraft/server/EntityFireworks.java
+++ b/net/minecraft/server/EntityFireworks.java
@@ -78,7 +78,7 @@
}
if (!this.world.isClientSide && this.ticksFlown > this.expectedLifespan) {
- this.world.broadcastEntityEffect(this, (byte) 17);
+ if (!org.bukkit.craftbukkit.event.CraftEventFactory.callFireworkExplodeEvent(this).isCancelled()) this.world.broadcastEntityEffect(this, (byte) 17);
this.die();
}

View File

@ -34,6 +34,7 @@ import org.bukkit.craftbukkit.util.CraftMagicNumbers;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Creeper;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Firework;
import org.bukkit.entity.Horse;
import org.bukkit.entity.LightningStrike;
import org.bukkit.entity.LivingEntity;
@ -946,4 +947,10 @@ public class CraftEventFactory {
entityHuman.world.getServer().getPluginManager().callEvent(event);
return (Cancellable) event;
}
public static FireworkExplodeEvent callFireworkExplodeEvent(EntityFireworks firework) {
FireworkExplodeEvent event = new FireworkExplodeEvent((Firework) firework.getBukkitEntity());
firework.world.getServer().getPluginManager().callEvent(event);
return event;
}
}