diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/exotic/ScrollOfMetamorphosis.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/exotic/ScrollOfMetamorphosis.java index 8ee1b1a7a..9d6667ffd 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/exotic/ScrollOfMetamorphosis.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/exotic/ScrollOfMetamorphosis.java @@ -197,7 +197,7 @@ public class ScrollOfMetamorphosis extends ExoticScroll { public WndMetamorphReplace(Talent replacing, int tier){ super(); - if (!identifiedByUse) { + if (!identifiedByUse && curItem instanceof ScrollOfMetamorphosis) { curItem.detach(curUser.belongings.backpack); } identifiedByUse = false; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java index d82f26740..2c7070fc9 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java @@ -306,6 +306,7 @@ public class CursedWand { if (ch != null){ Buff.affect(ch, Hex.class, Hex.DURATION); } + return true; } if (user instanceof Hero) { CursingTrap.curse( (Hero) user ); @@ -395,20 +396,21 @@ public class CursedWand { Mimic mimic = Mimic.spawnAt(spawnCell, GoldenMimic.class, false); mimic.stopHiding(); mimic.alignment = Char.Alignment.ENEMY; - Item reward; - do { - reward = Generator.randomUsingDefaults(Random.oneOf(Generator.Category.WEAPON, Generator.Category.ARMOR, - Generator.Category.RING, Generator.Category.WAND)); - } while (reward.level() < 1); //play vfx/sfx manually as mimic isn't in the scene yet Sample.INSTANCE.play(Assets.Sounds.MIMIC, 1, 0.85f); CellEmitter.get(mimic.pos).burst(Speck.factory(Speck.STAR), 10); mimic.items.clear(); - mimic.items.add(reward); GameScene.add(mimic); if (positiveOnly){ Buff.affect(mimic, ScrollOfSirensSong.Enthralled.class); + } else { + Item reward; + do { + reward = Generator.randomUsingDefaults(Random.oneOf(Generator.Category.WEAPON, Generator.Category.ARMOR, + Generator.Category.RING, Generator.Category.WAND)); + } while (reward.level() < 1); + mimic.items.add(reward); } return true;