diff --git a/Spigot-Server-Patches/Add-BeaconEffectEvent.patch b/Spigot-Server-Patches/Add-BeaconEffectEvent.patch index ab02fc20e4..26ac0b8096 100644 --- a/Spigot-Server-Patches/Add-BeaconEffectEvent.patch +++ b/Spigot-Server-Patches/Add-BeaconEffectEvent.patch @@ -27,9 +27,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 +// Paper start +import org.bukkit.craftbukkit.event.CraftEventFactory; ++import org.bukkit.craftbukkit.potion.CraftPotionUtil; +import org.bukkit.entity.Player; ++import org.bukkit.potion.PotionData; +import org.bukkit.potion.PotionEffect; -+import org.bukkit.potion.PotionEffectType; +import com.destroystokyo.paper.event.block.BeaconEffectEvent; +// Paper end + @@ -42,7 +43,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + // Paper start + org.bukkit.block.Block block = world.getWorld().getBlockAt(position.getX(), position.getY(), position.getZ()); -+ PotionEffect primaryEffect = new PotionEffect(PotionEffectType.getByName(this.l.e), 180, b0, true, true); ++ PotionEffect primaryEffect = CraftPotionUtil.toBukkit(new MobEffect(this.l, i, b0, true, true)); + // Paper end + while (iterator.hasNext()) { @@ -52,13 +53,13 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + BeaconEffectEvent event = new BeaconEffectEvent(block, primaryEffect, (Player) entityhuman.getBukkitEntity(), true); + if (CraftEventFactory.callEvent(event).isCancelled()) continue; + PotionEffect effect = event.getEffect(); -+ entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); ++ entityhuman.getBukkitEntity().addPotionEffect(effect); + // Paper end } if (this.k >= 4 && this.l != this.m && this.m != null) { iterator = list.iterator(); -+ PotionEffect secondaryEffect = new PotionEffect(PotionEffectType.getByName(this.m.e), 180, 0, true, true); // Paper ++ PotionEffect secondaryEffect = org.bukkit.craftbukkit.potion.CraftPotionUtil.toBukkit(new MobEffect(this.m, i, 0, true, true)); // Paper while (iterator.hasNext()) { entityhuman = (EntityHuman) iterator.next(); @@ -67,7 +68,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + BeaconEffectEvent event = new BeaconEffectEvent(block, secondaryEffect, (Player) entityhuman.getBukkitEntity(), false); + if (CraftEventFactory.callEvent(event).isCancelled()) continue; + PotionEffect effect = event.getEffect(); -+ entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); ++ entityhuman.getBukkitEntity().addPotionEffect(effect); + // Paper end } } diff --git a/Spigot-Server-Patches/Temp-patch-to-nuke-BeaconEffectEvent-until-we-get-so.patch b/Spigot-Server-Patches/Temp-patch-to-nuke-BeaconEffectEvent-until-we-get-so.patch deleted file mode 100644 index 24e6cd1fd1..0000000000 --- a/Spigot-Server-Patches/Temp-patch-to-nuke-BeaconEffectEvent-until-we-get-so.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Zach Brown <1254957+zachbr@users.noreply.github.com> -Date: Thu, 3 Mar 2016 04:45:26 -0600 -Subject: [PATCH] Temp patch to nuke BeaconEffectEvent until we get some sleep - - -diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 ---- a/src/main/java/net/minecraft/server/TileEntityBeacon.java -+++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java -@@ -0,0 +0,0 @@ public class TileEntityBeacon extends TileEntityContainer implements ITickable, - - // Paper start - org.bukkit.block.Block block = world.getWorld().getBlockAt(position.getX(), position.getY(), position.getZ()); -- PotionEffect primaryEffect = new PotionEffect(PotionEffectType.getByName(this.l.e), 180, b0, true, true); -+ // TODO: anytime other than 5 am -+ //PotionEffect primaryEffect = new PotionEffect(PotionEffectType.getById(MobEffectList.getId(this.l)), 180, b0, true, true); - // Paper end - - while (iterator.hasNext()) { - entityhuman = (EntityHuman) iterator.next(); - // Paper start - BeaconEffectEvent -- BeaconEffectEvent event = new BeaconEffectEvent(block, primaryEffect, (Player) entityhuman.getBukkitEntity(), true); -- if (CraftEventFactory.callEvent(event).isCancelled()) continue; -- PotionEffect effect = event.getEffect(); -- entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); -+ //BeaconEffectEvent event = new BeaconEffectEvent(block, primaryEffect, (Player) entityhuman.getBukkitEntity(), true); -+ //if (CraftEventFactory.callEvent(event).isCancelled()) continue; -+ //PotionEffect effect = event.getEffect(); -+ //entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); -+ entityhuman.addEffect(new MobEffect(this.l, i, b0, true, true)); - // Paper end - } - - if (this.k >= 4 && this.l != this.m && this.m != null) { - iterator = list.iterator(); -- PotionEffect secondaryEffect = new PotionEffect(PotionEffectType.getByName(this.m.e), 180, 0, true, true); // Paper -+ // TODO: anytime other than 5 am -+ //PotionEffect primaryEffect = new PotionEffect(PotionEffectType.getById(MobEffectList.getId(this.m)), 180, b0, true, true); - - while (iterator.hasNext()) { - entityhuman = (EntityHuman) iterator.next(); - // Paper start - BeaconEffectEvent -- BeaconEffectEvent event = new BeaconEffectEvent(block, secondaryEffect, (Player) entityhuman.getBukkitEntity(), false); -- if (CraftEventFactory.callEvent(event).isCancelled()) continue; -- PotionEffect effect = event.getEffect(); -- entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); -+ //BeaconEffectEvent event = new BeaconEffectEvent(block, secondaryEffect, (Player) entityhuman.getBukkitEntity(), false); -+ //if (CraftEventFactory.callEvent(event).isCancelled()) continue; -+ //PotionEffect effect = event.getEffect(); -+ //entityhuman.addEffect(new MobEffect(MobEffectList.fromId(effect.getType().getId()), effect.getDuration(), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); -+ entityhuman.addEffect(new MobEffect(this.m, i, 0, true, true)); - // Paper end - } - } --- \ No newline at end of file