mirror of
https://github.com/correl/mage.git
synced 2024-11-25 03:00:11 +00:00
fixed trample and deathtouch not working when deathtouch is gained by an outside source (fixes #7633)
This commit is contained in:
parent
2daf1945e7
commit
6091c7eae3
2 changed files with 21 additions and 1 deletions
|
@ -180,4 +180,21 @@ public class DamageDistributionTest extends CardTestPlayerBase {
|
|||
assertLife(playerB, 20);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testTrampleDeathtouch() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 2);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Colossal Dreadmaw");
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Colossapede");
|
||||
addCard(Zone.HAND, playerA, "Bladebrand");
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Bladebrand", "Colossal Dreadmaw");
|
||||
|
||||
attack(1, playerA, "Colossal Dreadmaw");
|
||||
block(1, playerB, "Colossapede", "Colossal Dreadmaw");
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
||||
assertLife(playerB, 20 - 5);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1038,7 +1038,10 @@ public abstract class PermanentImpl extends CardImpl implements Permanent {
|
|||
lethal = Math.min(lethal, toughness.getValue());
|
||||
}
|
||||
lethal = Math.max(lethal - this.damage, 0);
|
||||
Card attacker = game.getCard(attackerId);
|
||||
Card attacker = game.getPermanent(attackerId);
|
||||
if (attacker == null) {
|
||||
attacker = game.getCard(attackerId);
|
||||
}
|
||||
if (attacker != null && attacker.getAbilities(game).containsKey(DeathtouchAbility.getInstance().getId())) {
|
||||
lethal = Math.min(1, lethal);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue