[WOE] Implement Imodane's Recruiter (#10999)

* fix two cards verify test.

* [WOE] Implement Imodane's Recruiter

* fix text and restrict haste giving to creatures
This commit is contained in:
Susucre 2023-08-25 00:25:21 +02:00 committed by GitHub
parent ae866c89ad
commit d499efe971
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,57 @@
package mage.cards.i;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
import mage.abilities.keyword.HasteAbility;
import mage.cards.AdventureCard;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.StaticFilters;
import mage.game.permanent.token.KnightToken;
import java.util.UUID;
/**
* @author Susucr
*/
public final class ImodanesRecruiter extends AdventureCard {
public ImodanesRecruiter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, new CardType[]{CardType.SORCERY}, "{2}{R}", "Train Troops", "{4}{W}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.KNIGHT);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// When Imodane's Recruiter enters the battlefield, creatures you control get +1/+0 and gain haste until end of turn.
Ability ability = new EntersBattlefieldTriggeredAbility(
new BoostControlledEffect(1, 0, Duration.EndOfTurn)
.setText("creatures you control get +1/+0")
);
ability.addEffect(new GainAbilityControlledEffect(
HasteAbility.getInstance(), Duration.EndOfTurn,
StaticFilters.FILTER_CONTROLLED_CREATURES
).setText("and gain haste until end of turn"));
this.addAbility(ability);
// Train Troops
// Create two 2/2 white Knight creature tokens with vigilance.
this.getSpellCard().getSpellAbility().addEffect(new CreateTokenEffect(new KnightToken(), 2));
}
private ImodanesRecruiter(final ImodanesRecruiter card) {
super(card);
}
@Override
public ImodanesRecruiter copy() {
return new ImodanesRecruiter(this);
}
}

View file

@ -107,6 +107,7 @@ public final class WildsOfEldraine extends ExpansionSet {
cards.add(new SetCardInfo("Hylda's Crown of Winter", 247, Rarity.RARE, mage.cards.h.HyldasCrownOfWinter.class));
cards.add(new SetCardInfo("Ice Out", 54, Rarity.COMMON, mage.cards.i.IceOut.class));
cards.add(new SetCardInfo("Icewrought Sentry", 55, Rarity.UNCOMMON, mage.cards.i.IcewroughtSentry.class));
cards.add(new SetCardInfo("Imodane's Recruiter", 229, Rarity.UNCOMMON, mage.cards.i.ImodanesRecruiter.class));
cards.add(new SetCardInfo("Imodane, the Pyrohammer", 137, Rarity.RARE, mage.cards.i.ImodaneThePyrohammer.class));
cards.add(new SetCardInfo("Ingenious Prodigy", 56, Rarity.RARE, mage.cards.i.IngeniousProdigy.class));
cards.add(new SetCardInfo("Into the Fae Court", 57, Rarity.COMMON, mage.cards.i.IntoTheFaeCourt.class));