From 377be0a79ed8a49ecac6fdfd8221fbe33d653150 Mon Sep 17 00:00:00 2001 From: EdGruberman Date: Thu, 28 Mar 2013 09:09:19 -0700 Subject: [PATCH] Call PotionSplashEvent even for no effects. Fixes BUKKIT-3618 When a splash potion has no applicable effects we currently do not call PotionSplashEvent. This means plugins are unable to make custom potions with reliable splash handling as they have to relicate the functionality themselves. With this commit we simply make the event fire regardless of the effects on the potion. --- src/main/java/net/minecraft/server/EntityPotion.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/minecraft/server/EntityPotion.java b/src/main/java/net/minecraft/server/EntityPotion.java index a189e1de9b..be9e339c90 100644 --- a/src/main/java/net/minecraft/server/EntityPotion.java +++ b/src/main/java/net/minecraft/server/EntityPotion.java @@ -64,7 +64,7 @@ public class EntityPotion extends EntityProjectile { if (!this.world.isStatic) { List list = Item.POTION.g(this.c); - if (list != null && !list.isEmpty()) { + if (true || list != null && !list.isEmpty()) { // CraftBukkit - Call event even if no effects to apply AxisAlignedBB axisalignedbb = this.boundingBox.grow(4.0D, 2.0D, 4.0D); List list1 = this.world.a(EntityLiving.class, axisalignedbb); @@ -91,7 +91,7 @@ public class EntityPotion extends EntityProjectile { } org.bukkit.event.entity.PotionSplashEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callPotionSplashEvent(this, affected); - if (!event.isCancelled()) { + if (!event.isCancelled() && list != null && !list.isEmpty()) { // do not process effects if there are no effects to process for (LivingEntity victim : event.getAffectedEntities()) { if (!(victim instanceof CraftLivingEntity)) { continue;