diff --git a/Mage.Sets/src/mage/cards/d/DeathlessKnight.java b/Mage.Sets/src/mage/cards/d/DeathlessKnight.java index 8b536dbf10..88500d97e2 100644 --- a/Mage.Sets/src/mage/cards/d/DeathlessKnight.java +++ b/Mage.Sets/src/mage/cards/d/DeathlessKnight.java @@ -59,28 +59,25 @@ class DeathlessKnightTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkEventType(GameEvent event, Game game) { - return event.getType() == GameEvent.EventType.GAINED_LIFE - || event.getType() == GameEvent.EventType.END_PHASE_POST; + return event.getType() == GameEvent.EventType.GAINED_LIFE; } @Override public boolean checkTrigger(GameEvent event, Game game) { - if (event.getType() == GameEvent.EventType.END_PHASE_POST) { - triggeredOnce = false; - return false; - } - if (event.getType() != GameEvent.EventType.GAINED_LIFE - || !event.getPlayerId().equals(controllerId) - || game.getState().getZone(this.getSourceId()) == Zone.GRAVEYARD) { - return false; - } - if (triggeredOnce) { + if (!event.getPlayerId().equals(controllerId) + || game.getState().getZone(this.getSourceId()) == Zone.GRAVEYARD + || triggeredOnce) { return false; } triggeredOnce = true; return true; } + @Override + public void reset(Game game) { + triggeredOnce = false; + } + @Override public String getRule() { return "When you gain life for the first time each turn, return {this} from your graveyard to your hand."; diff --git a/Mage/src/main/java/mage/abilities/common/DrawSecondCardTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DrawSecondCardTriggeredAbility.java index becd3c41d1..9cec4aaf98 100644 --- a/Mage/src/main/java/mage/abilities/common/DrawSecondCardTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DrawSecondCardTriggeredAbility.java @@ -26,22 +26,14 @@ public class DrawSecondCardTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkEventType(GameEvent event, Game game) { - return event.getType() == GameEvent.EventType.DREW_CARD - || event.getType() == GameEvent.EventType.END_PHASE_POST; + return event.getType() == GameEvent.EventType.DREW_CARD; } @Override public boolean checkTrigger(GameEvent event, Game game) { - if (event.getType() == GameEvent.EventType.END_PHASE_POST) { - triggeredOnce = false; - return false; - } - if (event.getType() != GameEvent.EventType.DREW_CARD - || !event.getPlayerId().equals(controllerId) - || game.getPermanent(sourceId) == null) { - return false; - } - if (triggeredOnce) { + if (!event.getPlayerId().equals(controllerId) + || game.getPermanent(sourceId) == null + || triggeredOnce) { return false; } CardsAmountDrawnThisTurnWatcher watcher = game.getState().getWatcher(CardsAmountDrawnThisTurnWatcher.class); @@ -55,6 +47,11 @@ public class DrawSecondCardTriggeredAbility extends TriggeredAbilityImpl { return false; } + @Override + public void reset(Game game) { + triggeredOnce = false; + } + @Override public String getRule() { return "Whenever you draw your second card each turn, " + super.getRule();