From b2364ccce82e7d6aba3d3783fe44ea2940fb9ca3 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Tue, 9 Aug 2022 17:46:35 -0400 Subject: [PATCH] StaticAbilityPanharmonicon.applyPanharmoniconAbility support ValidCause for Wulfgar --- .../staticability/StaticAbilityPanharmonicon.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/forge-game/src/main/java/forge/game/staticability/StaticAbilityPanharmonicon.java b/forge-game/src/main/java/forge/game/staticability/StaticAbilityPanharmonicon.java index 53936989b56..268ba3562a4 100644 --- a/forge-game/src/main/java/forge/game/staticability/StaticAbilityPanharmonicon.java +++ b/forge-game/src/main/java/forge/game/staticability/StaticAbilityPanharmonicon.java @@ -107,6 +107,19 @@ public class StaticAbilityPanharmonicon { if (table.filterCards(origin == null ? null : ImmutableList.of(ZoneType.smartValueOf(origin)), ZoneType.smartValueOf(destination), stAb.getParam("ValidCause"), card, stAb).isEmpty()) { return false; } + } else if (trigMode.equals(TriggerType.Attacks)) { + if (stAb.hasParam("ValidCause")) { + if (!stAb.matchesValidParam("ValidCause", runParams.get(AbilityKey.Attacker))) { + return false; + } + } + } else if (trigMode.equals(TriggerType.AttackersDeclared) + || trigMode.equals(TriggerType.AttackersDeclaredOneTarget)) { + if (stAb.hasParam("ValidCause")) { + if (!stAb.matchesValidParam("ValidCause", runParams.get(AbilityKey.Attackers))) { + return false; + } + } } else if (trigMode.equals(TriggerType.SpellCastOrCopy) || trigMode.equals(TriggerType.SpellCast) || trigMode.equals(TriggerType.SpellCopy)) { // Check if the spell cast and the caster match