--- a/net/minecraft/world/entity/projectile/EntityTippedArrow.java +++ b/net/minecraft/world/entity/projectile/EntityTippedArrow.java @@ -28,7 +28,7 @@ private static final int NO_EFFECT_COLOR = -1; private static final DataWatcherObject ID_EFFECT_COLOR = DataWatcher.defineId(EntityTippedArrow.class, DataWatcherRegistry.INT); private static final byte EVENT_POTION_PUFF = 0; - private PotionRegistry potion; + public PotionRegistry potion; // CraftBukkit private -> public public final Set effects; private boolean fixedColor; @@ -86,7 +86,7 @@ return nbttagcompound != null && nbttagcompound.contains("CustomPotionColor", 99) ? nbttagcompound.getInt("CustomPotionColor") : -1; } - private void updateColor() { + public void updateColor() { // CraftBukkit private -> public this.fixedColor = false; if (this.potion == Potions.EMPTY && this.effects.isEmpty()) { this.entityData.set(EntityTippedArrow.ID_EFFECT_COLOR, -1); @@ -212,7 +212,7 @@ mobeffect = (MobEffect) iterator.next(); entityliving.addEffect(new MobEffect(mobeffect.getEffect(), Math.max(mobeffect.mapDuration((i) -> { return i / 8; - }), 1), mobeffect.getAmplifier(), mobeffect.isAmbient(), mobeffect.isVisible()), entity); + }), 1), mobeffect.getAmplifier(), mobeffect.isAmbient(), mobeffect.isVisible()), entity, org.bukkit.event.entity.EntityPotionEffectEvent.Cause.ARROW); // CraftBukkit } if (!this.effects.isEmpty()) { @@ -220,7 +220,7 @@ while (iterator.hasNext()) { mobeffect = (MobEffect) iterator.next(); - entityliving.addEffect(mobeffect, entity); + entityliving.addEffect(mobeffect, entity, org.bukkit.event.entity.EntityPotionEffectEvent.Cause.ARROW); // CraftBukkit } }