From dd294f4f86681aab03061e38ae6aa0638b3b499c Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Oct 2020 17:44:14 +0200 Subject: [PATCH] Remove the active spell when applying the race change potion effect --- .../entity/effect/RaceChangeStatusEffect.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/minelittlepony/unicopia/entity/effect/RaceChangeStatusEffect.java b/src/main/java/com/minelittlepony/unicopia/entity/effect/RaceChangeStatusEffect.java index 9eb7e950..005afa1f 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/effect/RaceChangeStatusEffect.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/effect/RaceChangeStatusEffect.java @@ -3,8 +3,8 @@ package com.minelittlepony.unicopia.entity.effect; import javax.annotation.Nullable; import com.minelittlepony.unicopia.Race; +import com.minelittlepony.unicopia.ability.magic.Caster; import com.minelittlepony.unicopia.entity.Equine; -import com.minelittlepony.unicopia.entity.PonyContainer; import com.minelittlepony.unicopia.entity.player.MagicReserves; import com.minelittlepony.unicopia.entity.player.Pony; import com.minelittlepony.unicopia.util.MagicalDamageSource; @@ -100,12 +100,15 @@ public class RaceChangeStatusEffect extends StatusEffect { } if (stage == Stage.DEATH) { - PonyContainer.of(entity).map(PonyContainer::get).ifPresent(e -> { - e.setSpecies(species); - if (e instanceof Pony) { - ((Pony)e).setDirty(); - } - }); + + eq.setSpecies(species); + if (eq instanceof Caster) { + ((Caster)eq).setSpell(null); + } + + if (eq instanceof Pony) { + ((Pony)eq).setDirty(); + } entity.damage(MagicalDamageSource.TRIBE_SWAP, Float.MAX_VALUE); } }