From c6cd0c1ebab26c856c4e352916e1bcbc2150ba9c Mon Sep 17 00:00:00 2001 From: xenohedron Date: Sat, 4 Nov 2023 00:32:33 -0400 Subject: [PATCH] implement [LCI] Burning Sun Cavalry --- .../src/mage/cards/b/BurningSunCavalry.java | 50 +++++++++++++++++++ .../src/mage/sets/TheLostCavernsOfIxalan.java | 1 + 2 files changed, 51 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/b/BurningSunCavalry.java diff --git a/Mage.Sets/src/mage/cards/b/BurningSunCavalry.java b/Mage.Sets/src/mage/cards/b/BurningSunCavalry.java new file mode 100644 index 00000000000..963523ff67a --- /dev/null +++ b/Mage.Sets/src/mage/cards/b/BurningSunCavalry.java @@ -0,0 +1,50 @@ +package mage.cards.b; + +import mage.MageInt; +import mage.abilities.common.AttacksOrBlocksTriggeredAbility; +import mage.abilities.condition.Condition; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalTriggeredAbility; +import mage.abilities.effects.common.continuous.BoostSourceEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.filter.common.FilterControlledPermanent; + +import java.util.UUID; + +/** + * @author xenohedron + */ +public final class BurningSunCavalry extends CardImpl { + + private static final Condition condition = new PermanentsOnTheBattlefieldCondition( + new FilterControlledPermanent(SubType.DINOSAUR)); + + public BurningSunCavalry(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}"); + + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.KNIGHT); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Whenever Burning Sun Cavalry attacks or blocks while you control a Dinosaur, Burning Sun Cavalry gets +1/+1 until end of turn. + this.addAbility(new ConditionalTriggeredAbility( + new AttacksOrBlocksTriggeredAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), false), + condition, + "Whenever {this} attacks or blocks while you control a Dinosaur, it gets +1/+1 until end of turn." + )); + } + + private BurningSunCavalry(final BurningSunCavalry card) { + super(card); + } + + @Override + public BurningSunCavalry copy() { + return new BurningSunCavalry(this); + } +} diff --git a/Mage.Sets/src/mage/sets/TheLostCavernsOfIxalan.java b/Mage.Sets/src/mage/sets/TheLostCavernsOfIxalan.java index aa3f08a9bcf..b5e158377c8 100644 --- a/Mage.Sets/src/mage/sets/TheLostCavernsOfIxalan.java +++ b/Mage.Sets/src/mage/sets/TheLostCavernsOfIxalan.java @@ -46,6 +46,7 @@ public final class TheLostCavernsOfIxalan extends ExpansionSet { cards.add(new SetCardInfo("Breeches, Eager Pillager", 137, Rarity.RARE, mage.cards.b.BreechesEagerPillager.class)); cards.add(new SetCardInfo("Broodrage Mycoid", 95, Rarity.COMMON, mage.cards.b.BroodrageMycoid.class)); cards.add(new SetCardInfo("Buried Treasure", 246, Rarity.COMMON, mage.cards.b.BuriedTreasure.class)); + cards.add(new SetCardInfo("Burning Sun Cavalry", 138, Rarity.COMMON, mage.cards.b.BurningSunCavalry.class)); cards.add(new SetCardInfo("Calamitous Cave-In", 139, Rarity.UNCOMMON, mage.cards.c.CalamitousCaveIn.class)); cards.add(new SetCardInfo("Canonized in Blood", 96, Rarity.UNCOMMON, mage.cards.c.CanonizedInBlood.class)); cards.add(new SetCardInfo("Caparocti Sunborn", 226, Rarity.UNCOMMON, mage.cards.c.CaparoctiSunborn.class));