diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/AquaBlast.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/AquaBlast.java index 28a60e1af..7799a9220 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/AquaBlast.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/AquaBlast.java @@ -40,6 +40,7 @@ public class AquaBlast extends TargetedSpell { GeyserTrap geyser = new GeyserTrap(); geyser.pos = cell; + geyser.source = getClass(); if (bolt.path.size() > bolt.dist+1) { geyser.centerKnockBackDirection = bolt.path.get(bolt.dist + 1); } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfBlastWave.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfBlastWave.java index 038dd1ea3..35d9719bf 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfBlastWave.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfBlastWave.java @@ -30,6 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis; import com.shatteredpixel.shatteredpixeldungeon.effects.Effects; import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile; import com.shatteredpixel.shatteredpixeldungeon.effects.Pushing; +import com.shatteredpixel.shatteredpixeldungeon.items.spells.AquaBlast; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Elastic; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff; import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; @@ -160,7 +161,7 @@ public class WandOfBlastWave extends DamageWand { ch.damage(Random.NormalIntRange(finalDist, 2*finalDist), this); Paralysis.prolong(ch, Paralysis.class, 1 + finalDist/2f); if (ch == Dungeon.hero && !ch.isAlive()){ - if ( cause == WandOfBlastWave.class){ + if (cause == WandOfBlastWave.class || cause == AquaBlast.class){ Badges.validateDeathFromFriendlyMagic(); } Dungeon.fail(cause); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/traps/GeyserTrap.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/traps/GeyserTrap.java index 928d4ec6f..822193bad 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/traps/GeyserTrap.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/traps/GeyserTrap.java @@ -46,6 +46,7 @@ public class GeyserTrap extends Trap { } public int centerKnockBackDirection = -1; + public Class source = getClass(); @Override public void activate() { @@ -76,7 +77,7 @@ public class GeyserTrap extends Trap { //trim it to just be the part that goes past them trajectory = new Ballistica(trajectory.collisionPos, trajectory.path.get(trajectory.path.size()-1), Ballistica.PROJECTILE); //knock them back along that ballistica - WandOfBlastWave.throwChar(ch, trajectory, 2, true, true, getClass()); + WandOfBlastWave.throwChar(ch, trajectory, 2, true, true, source); } } @@ -105,7 +106,7 @@ public class GeyserTrap extends Trap { //trace a ballistica in the direction of our target Ballistica trajectory = new Ballistica(pos, targetpos, Ballistica.MAGIC_BOLT); //knock them back along that ballistica - WandOfBlastWave.throwChar(ch, trajectory, 2, true, true, getClass()); + WandOfBlastWave.throwChar(ch, trajectory, 2, true, true, source); } } }