From 4976ff56f0c8079f678c2d71b79a03d2a2f186e7 Mon Sep 17 00:00:00 2001 From: YouHaveTrouble Date: Wed, 26 Jun 2024 18:22:15 +0200 Subject: [PATCH] check base potion type for nulls --- .../preventstabby/listeners/PvpListener.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/me/youhavetrouble/preventstabby/listeners/PvpListener.java b/src/main/java/me/youhavetrouble/preventstabby/listeners/PvpListener.java index e82b54f..3259d65 100644 --- a/src/main/java/me/youhavetrouble/preventstabby/listeners/PvpListener.java +++ b/src/main/java/me/youhavetrouble/preventstabby/listeners/PvpListener.java @@ -2,10 +2,7 @@ package me.youhavetrouble.preventstabby.listeners; import me.youhavetrouble.preventstabby.PreventStabby; import me.youhavetrouble.preventstabby.data.DamageCheckResult; -import org.bukkit.entity.Entity; -import org.bukkit.entity.Item; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; +import org.bukkit.entity.*; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; @@ -16,6 +13,7 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent; import org.bukkit.event.player.PlayerFishEvent; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; +import org.bukkit.potion.PotionType; import java.util.Locale; @@ -63,7 +61,10 @@ public class PvpListener implements Listener { public void onPotionCloudEffectApply(AreaEffectCloudApplyEvent event) { if (!(event.getEntity().getSource() instanceof Player thrower)) return; boolean harmful = false; - for (PotionEffect effect : event.getEntity().getBasePotionType().getPotionEffects()) { + AreaEffectCloud cloud = event.getEntity(); + if (cloud.getBasePotionType() == null) return; + PotionType potionType = cloud.getBasePotionType(); + for (PotionEffect effect : potionType.getPotionEffects()) { if (!PotionEffectType.Category.HARMFUL.equals(effect.getType().getEffectCategory())) continue; harmful = true; break;