diff --git a/fireplace/card.py b/fireplace/card.py index 60ab3a8e3..dc567237d 100644 --- a/fireplace/card.py +++ b/fireplace/card.py @@ -917,7 +917,7 @@ def get_damage(self, amount, target): if not self.immune_to_spellpower: amount = self.controller.get_spell_damage(amount) if self.receives_double_spelldamage_bonus: - amount *= 2 + amount = self.controller.get_spell_damage(amount) return amount def get_heal(self, amount, target): diff --git a/tests/test_tgt.py b/tests/test_tgt.py index ac53b0382..79faac15f 100644 --- a/tests/test_tgt.py +++ b/tests/test_tgt.py @@ -853,3 +853,19 @@ def test_darnassus_aspirant(): assert game.current_player.mana == 7 assert game.current_player.max_mana == 9 assert game.current_player.used_mana == 2 + + +def test_arcane_blast(): + game = prepare_game() + minion = game.player1.summon("CFM_712_t30") + game.player1.give("AT_004").play(target=minion) + assert minion.damage == 2 + game.player1.summon(KOBOLD_GEOMANCER) + game.player1.give("AT_004").play(target=minion) + assert minion.damage == 2 + 4 + game.player1.summon(KOBOLD_GEOMANCER) + game.player1.give("AT_004").play(target=minion) + assert minion.damage == 2 + 4 + 6 + game.player1.field[-1].destroy() + game.player1.give("AT_004").play(target=minion) + assert minion.damage == 2 + 4 + 6 + 4