From e770674ae7df8f78b86cccddcc37a45aa5bd7136 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Sat, 16 May 2015 18:38:01 -0400 Subject: [PATCH] v0.3.0: added immunity checks to wand of corruption --- .../items/wands/WandOfCorruption.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfCorruption.java b/src/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfCorruption.java index 6722af990..0572ee289 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfCorruption.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/items/wands/WandOfCorruption.java @@ -6,6 +6,11 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Amok; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Corruption; +import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.DM300; +import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Goo; +import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.King; +import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Tengu; +import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Yog; import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff; import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica; @@ -15,6 +20,9 @@ import com.watabou.noosa.audio.Sample; import com.watabou.utils.Callback; import com.watabou.utils.Random; +import java.util.Arrays; +import java.util.HashSet; + /** * Created by Evan on 14/05/2015. */ @@ -26,12 +34,22 @@ public class WandOfCorruption extends Wand { image = ItemSpriteSheet.WAND_CORRUPTION; } + //FIXME: sloppy + private static HashSet bosses = new HashSet(Arrays.asList( + Goo.class, Tengu.class, DM300.class, King.class, Yog.class, Yog.BurningFist.class, Yog.RottingFist.class + )); + @Override protected void onZap(Ballistica bolt) { Char ch = Actor.findChar(bolt.collisionPos); if (ch != null){ + if (bosses.contains(ch.getClass())){ + GLog.w("Bosses are immune to corruption"); + return; + } + int basePower = 5 + 5*level; int mobPower = Random.NormalIntRange(0, ch.HT+ch.HP);