Don't supress potion effect removal if diff amplifier

This commit is contained in:
isokissa3 2019-06-07 19:23:06 +03:00
parent c2a0b0fd32
commit be129516c7

View file

@ -84,12 +84,8 @@ public class GiveEffectsFlagHandler extends HandlerWrapper
private void check(Player player, ApplicableRegionSet set)
{
Set<PotionEffect> potionEffects = WorldGuardUtils.queryValue(player, player.getWorld(), set.getRegions(), Flags.GIVE_EFFECTS);
if (potionEffects != null && potionEffects.size() > 0)
{
this.supressRemovePotionPacket = true;
try
{
for (PotionEffect effect : potionEffects)
@ -104,6 +100,8 @@ public class GiveEffectsFlagHandler extends HandlerWrapper
}
}
this.supressRemovePotionPacket = effect_ != null && effect_.getAmplifier() == effect.getAmplifier();
if (this.givenEffects.add(effect.getType()) && effect_ != null)
{
this.removedEffects.put(effect_.getType(), new PotionEffectDetails(System.nanoTime() + (long)(effect_.getDuration() / 20D * TimeUnit.SECONDS.toNanos(1L)), effect_.getAmplifier(), effect_.isAmbient(), SupportedFeatures.isPotionEffectParticles() ? effect_.hasParticles() : true));