only execute becomes tap trigger when score changed, i.e. not a replacement effect

fixes issue 352
master
melvin 2013-06-08 09:51:42 +08:00
parent 5d79e3f18d
commit 5917b2a664
3 changed files with 3 additions and 3 deletions

View File

@ -23,7 +23,7 @@ public class MagicDeclareAttackersAction extends MagicAction {
// 508.1f The active player taps the chosen creatures.
for (final MagicPermanent attacker : attackers) {
if (!attacker.hasAbility(MagicAbility.Vigilance)) {
game.doAction(new MagicTapAction(attacker, false));
game.doAction(new MagicTapAction(attacker, true));
}
}
// 508.1j Each chosen creature still controlled by the active player becomes an attacking creature.

View File

@ -35,7 +35,7 @@ public class MagicDestroyAction extends MagicAction {
// Regeneration
if (destroy && permanent.isRegenerated()) {
game.logAppendMessage(permanent.getController(),permanent.getName()+" is regenerated.");
game.doAction(new MagicTapAction(permanent,false));
game.doAction(new MagicTapAction(permanent,true));
game.doAction(new MagicRemoveAllDamageAction(permanent));
game.doAction(new MagicRemoveFromCombatAction(permanent));
game.doAction(new MagicChangeStateAction(permanent,MagicPermanentState.Regenerated,false));

View File

@ -25,8 +25,8 @@ public class MagicTapAction extends MagicAction {
permanent.setState(MagicPermanentState.Tapped);
if (hasScore) {
setScore(permanent.getController(),ArtificialScoringSystem.getTappedScore(permanent));
game.executeTrigger(MagicTriggerType.WhenBecomesTapped,permanent);
}
game.executeTrigger(MagicTriggerType.WhenBecomesTapped,permanent);
game.setStateCheckRequired();
}
}