diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/database/types/Data.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/database/types/Data.java index 46e2f38d..5e05c9bd 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/database/types/Data.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/database/types/Data.java @@ -85,7 +85,7 @@ public abstract class Data { private boolean shouldHiddenSave(CosmeticUser.HiddenReason reason) { switch (reason) { - case EMOTE, NONE, GAMEMODE, WORLD, DISABLED -> { + case EMOTE, NONE, GAMEMODE, WORLD, DISABLED, POTION -> { return false; } default -> { diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/user/CosmeticUser.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/user/CosmeticUser.java index 6a8f9e43..eb21c4f6 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/user/CosmeticUser.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/user/CosmeticUser.java @@ -36,6 +36,7 @@ import org.bukkit.inventory.EquipmentSlot; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.*; import org.bukkit.persistence.PersistentDataType; +import org.bukkit.potion.PotionEffectType; import org.bukkit.scheduler.BukkitTask; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -148,6 +149,11 @@ public class CosmeticUser implements CosmeticHolder { MessagesUtil.sendDebugMessages("Showing Cosmetics due to world"); showCosmetics(HiddenReason.WORLD); } + + if (bukkitPlayer != null && bukkitPlayer.hasPotionEffect(PotionEffectType.INVISIBILITY)) { + hideCosmetics(HiddenReason.POTION); + } + if (Settings.isAllPlayersHidden()) { hideCosmetics(HiddenReason.DISABLED); }