From d0b90379f6dbf0aa28ad1c311a2c99be325d0c45 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Mon, 21 Mar 2022 18:35:47 -0400 Subject: [PATCH] fixed various cards which don't add an ability --- Mage.Sets/src/mage/cards/g/GeistlightSnare.java | 1 + Mage.Sets/src/mage/cards/g/GorgonFlail.java | 1 + Mage.Sets/src/mage/cards/l/LandscaperColos.java | 1 + .../src/mage/cards/s/ShieldOfTheRighteous.java | 1 + Mage.Sets/src/mage/cards/t/TovolarsPackleader.java | 1 + .../src/mage/cards/u/UnscytheKillerOfKings.java | 1 + Mage.Sets/src/mage/cards/w/WebspinnerCuff.java | 1 + .../test/java/mage/verify/VerifyCardDataTest.java | 13 +++++-------- 8 files changed, 12 insertions(+), 8 deletions(-) diff --git a/Mage.Sets/src/mage/cards/g/GeistlightSnare.java b/Mage.Sets/src/mage/cards/g/GeistlightSnare.java index db17414ca1..812c7523c3 100644 --- a/Mage.Sets/src/mage/cards/g/GeistlightSnare.java +++ b/Mage.Sets/src/mage/cards/g/GeistlightSnare.java @@ -42,6 +42,7 @@ public final class GeistlightSnare extends CardImpl { ).setRuleAtTheTop(true); ability.addEffect(new SpellCostReductionSourceEffect(1, condition2).setCanWorksOnStackOnly(true) .setText("It also costs {1} less to cast if you control an enchantment")); + this.addAbility(ability); // Counter target spell unless its controller pays {3}. this.getSpellAbility().addEffect(new CounterUnlessPaysEffect(new GenericManaCost(3))); diff --git a/Mage.Sets/src/mage/cards/g/GorgonFlail.java b/Mage.Sets/src/mage/cards/g/GorgonFlail.java index e23122a593..a27497ef8f 100644 --- a/Mage.Sets/src/mage/cards/g/GorgonFlail.java +++ b/Mage.Sets/src/mage/cards/g/GorgonFlail.java @@ -27,6 +27,7 @@ public final class GorgonFlail extends CardImpl { ability.addEffect(new GainAbilityAttachedEffect( DeathtouchAbility.getInstance(), AttachmentType.EQUIPMENT ).setText("and has deathtouch")); + this.addAbility(ability); this.addAbility(new EquipAbility(2)); } diff --git a/Mage.Sets/src/mage/cards/l/LandscaperColos.java b/Mage.Sets/src/mage/cards/l/LandscaperColos.java index 7cbaf9a0d3..b0e69ca122 100644 --- a/Mage.Sets/src/mage/cards/l/LandscaperColos.java +++ b/Mage.Sets/src/mage/cards/l/LandscaperColos.java @@ -40,6 +40,7 @@ public final class LandscaperColos extends CardImpl { false, "put target card from an opponent's graveyard on the bottom of their library" )); ability.addTarget(new TargetCardInGraveyard()); + this.addAbility(ability); // Basic landcycling {1}{W} this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl<>("{1}{W}"))); diff --git a/Mage.Sets/src/mage/cards/s/ShieldOfTheRighteous.java b/Mage.Sets/src/mage/cards/s/ShieldOfTheRighteous.java index 138c3a5582..ea908ebd0c 100644 --- a/Mage.Sets/src/mage/cards/s/ShieldOfTheRighteous.java +++ b/Mage.Sets/src/mage/cards/s/ShieldOfTheRighteous.java @@ -33,6 +33,7 @@ public final class ShieldOfTheRighteous extends CardImpl { ability.addEffect(new GainAbilityAttachedEffect( VigilanceAbility.getInstance(), AttachmentType.EQUIPMENT ).setText("and has vigilance")); + this.addAbility(ability); // Whenever equipped creature blocks a creature, that creature doesn't untap during its controller's next untap step. this.addAbility(new BlocksAttachedTriggeredAbility( diff --git a/Mage.Sets/src/mage/cards/t/TovolarsPackleader.java b/Mage.Sets/src/mage/cards/t/TovolarsPackleader.java index 22f9b010bf..de4fc98fa8 100644 --- a/Mage.Sets/src/mage/cards/t/TovolarsPackleader.java +++ b/Mage.Sets/src/mage/cards/t/TovolarsPackleader.java @@ -58,6 +58,7 @@ public final class TovolarsPackleader extends CardImpl { ), new ManaCostsImpl<>("{2}{G}{G}")); ability.addTarget(new TargetPermanent(filter)); ability.addTarget(new TargetPermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL)); + this.addAbility(ability); // Nightbound this.addAbility(new NightboundAbility()); diff --git a/Mage.Sets/src/mage/cards/u/UnscytheKillerOfKings.java b/Mage.Sets/src/mage/cards/u/UnscytheKillerOfKings.java index ae7a05e59f..9bb247770c 100644 --- a/Mage.Sets/src/mage/cards/u/UnscytheKillerOfKings.java +++ b/Mage.Sets/src/mage/cards/u/UnscytheKillerOfKings.java @@ -39,6 +39,7 @@ public final class UnscytheKillerOfKings extends CardImpl { ability.addEffect(new GainAbilityAttachedEffect( FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT ).setText("and has first strike")); + this.addAbility(ability); // Whenever a creature dealt damage by equipped creature this turn dies, you may exile that card. If you do, create a 2/2 black Zombie creature token. this.addAbility(new UnscytheKillerOfKingsTriggeredAbility(new UnscytheEffect())); diff --git a/Mage.Sets/src/mage/cards/w/WebspinnerCuff.java b/Mage.Sets/src/mage/cards/w/WebspinnerCuff.java index b3fae27deb..a2666edeaa 100644 --- a/Mage.Sets/src/mage/cards/w/WebspinnerCuff.java +++ b/Mage.Sets/src/mage/cards/w/WebspinnerCuff.java @@ -36,6 +36,7 @@ public final class WebspinnerCuff extends CardImpl { ability.addEffect(new GainAbilityAttachedEffect( ReachAbility.getInstance(), AttachmentType.EQUIPMENT ).setText("and has reach")); + this.addAbility(ability); // Reconfigure {4} this.addAbility(new ReconfigureAbility("{4}")); diff --git a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java index 5d1f303608..4268d1c876 100644 --- a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java +++ b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java @@ -1140,7 +1140,7 @@ public class VerifyCardDataTest { Token token = (Token) createNewObject(tokenClass); if (token == null) { errorsList.add("Error: token must have default constructor with zero params: " + tokenClass.getName()); - } else if (tokDataNamesIndex.getOrDefault(token.getName().replace(" Token",""), "").isEmpty()) { + } else if (tokDataNamesIndex.getOrDefault(token.getName().replace(" Token", ""), "").isEmpty()) { errorsList.add("Error: can't find data in card-pictures-tok.txt for token: " + tokenClass.getName() + " -> " + token.getName()); } } @@ -1594,13 +1594,9 @@ public class VerifyCardDataTest { } }*/ private static final boolean compareText(String cardText, String refText, String name) { - if (cardText.equals(refText)) { - return true; - } - if (cardText.replace(name, name.split(", ")[0]).equals(refText)) { - return true; - } - return cardText.replace(name, name.split(" ")[0]).equals(refText); + return cardText.equals(refText) + || cardText.replace(name, name.split(", ")[0]).equals(refText) + || cardText.replace(name, name.split(" ")[0]).equals(refText); } private static final boolean checkForEffect(Card card, Class effectClazz) { @@ -1711,6 +1707,7 @@ public class VerifyCardDataTest { for (int j = 0; j <= refRules.length - 1; j++) { String refRule = refRules[j]; if (!refRule.startsWith("+ ")) { + isFine = false; refRules[j] = "- " + refRules[j]; } }