From 6a2ad691d4ea16eb2f530b168b0f6ff698a0cac7 Mon Sep 17 00:00:00 2001 From: Noah Gleason Date: Sun, 24 Jun 2018 13:51:02 -0400 Subject: [PATCH] Fix OrTriggeredAbility hang --- .../abilities/meta/OrTriggeredAbility.java | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Mage/src/main/java/mage/abilities/meta/OrTriggeredAbility.java b/Mage/src/main/java/mage/abilities/meta/OrTriggeredAbility.java index d87b79c8286..1d14b10481f 100644 --- a/Mage/src/main/java/mage/abilities/meta/OrTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/meta/OrTriggeredAbility.java @@ -45,23 +45,25 @@ public class OrTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkEventType(GameEvent event, Game game) { - boolean toRet = false; for (TriggeredAbility ability : triggeredAbilities) { - toRet = toRet || ability.checkEventType(event, game); + if (ability.checkEventType(event, game)){ + System.out.println("Correct event type (" + event.getType() + ")"); + return true; + } } - if (toRet) { - System.out.println("Correct event type (" + event.getType() + ")"); - } - return toRet; + return false; } @Override public boolean checkTrigger(GameEvent event, Game game) { - boolean toRet = false; for (TriggeredAbility ability : triggeredAbilities) { - toRet = toRet || ability.checkTrigger(event, game); + if (ability.checkEventType(event, game) && ability.checkTrigger(event, game)){ + System.out.println("Triggered from "+ability.getRule()); + return true; + } + System.out.println("Checked "+ability.getRule()); } - return toRet; + return false; } @Override