From 8a88596c6739feb3b837c941d7b2e234f4024dc6 Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Dec 2022 22:16:54 +0000 Subject: [PATCH] Fixed Living.getOrEmpty and fixed the amulet crashing --- .../java/com/minelittlepony/unicopia/entity/Living.java | 6 +++--- .../com/minelittlepony/unicopia/item/AlicornAmuletItem.java | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/minelittlepony/unicopia/entity/Living.java b/src/main/java/com/minelittlepony/unicopia/entity/Living.java index d395f5c1..e8aac5dc 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/Living.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/Living.java @@ -273,12 +273,12 @@ public abstract class Living implements Equine, Caste updateVelocity(entity); } - public static Optional> getOrEmpty(LivingEntity entity) { - return PonyContainer.of(entity).map(a -> a instanceof Living ? (Living)a.get() : null); + public static Optional> getOrEmpty(Entity entity) { + return PonyContainer.of(entity).map(PonyContainer::get).map(a -> a instanceof Living ? (Living)a : null); } public static Living living(Entity entity) { - return entity instanceof LivingEntity ? getOrEmpty((LivingEntity)entity).orElse(null) : null; + return getOrEmpty(entity).orElse(null); } public static void updateVelocity(Entity entity) { diff --git a/src/main/java/com/minelittlepony/unicopia/item/AlicornAmuletItem.java b/src/main/java/com/minelittlepony/unicopia/item/AlicornAmuletItem.java index 276077bb..4fa11700 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/AlicornAmuletItem.java +++ b/src/main/java/com/minelittlepony/unicopia/item/AlicornAmuletItem.java @@ -150,6 +150,10 @@ public class AlicornAmuletItem extends AmuletItem implements ItemTracker.Trackab Living living = Living.living(entity); + if (living == null) { + return; + } + if (!living.getArmour().contains(this)) { return; }