added Windswept Heath

master
melvin 2013-08-25 10:55:33 +08:00
parent 80d398b456
commit d61df7aa22
4 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,43 @@
[
new MagicPermanentActivation(
new MagicActivationHints(MagicTiming.Land),
"Search"
) {
@Override
public MagicEvent[] getCostEvent(final MagicPermanent source) {
return [
new MagicTapEvent(source),
new MagicPayLifeEvent(source,1),
new MagicSacrificeEvent(source)
];
}
@Override
public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) {
return new MagicEvent(
source,
this,
"PN searches his or her library for a Forest or Plains card and put it onto the battlefield. Then shuffle PN's library."
);
}
@Override
public void executeEvent(final MagicGame game,final MagicEvent event) {
game.addEvent(new MagicEvent(
event.getSource(),
MagicTargetChoice.FOREST_OR_PLAINS_CARD_FROM_LIBRARY,
{
final MagicGame G, final MagicEvent E ->
E.processTargetCard(G, {
final MagicCard card ->
G.doAction(new MagicRemoveCardAction(card,MagicLocationType.OwnersLibrary));
G.doAction(new MagicPlayCardAction(card,E.getPlayer()));
G.doAction(new MagicShuffleLibraryAction(E.getPlayer()));
} as MagicCardAction);
} as MagicEventAction,
"Selected card\$."
));
}
}
]

View File

@ -0,0 +1,8 @@
name=Windswept Heath
url=http://magiccards.info/on/en/328.html
image=http://magiccards.info/scans/en/on/328.jpg
value=4.476
rarity=R
type=Land
timing=land
requires_groovy_code

View File

@ -583,6 +583,13 @@ public class MagicTargetChoice extends MagicChoice {
"a Forest or Island card from your library"
);
public static final MagicTargetChoice FOREST_OR_PLAINS_CARD_FROM_LIBRARY = new MagicTargetChoice(
MagicTargetFilter.TARGET_FOREST_OR_PLAINS_CARD_FROM_LIBRARY,
false,
MagicTargetHint.None,
"a Forest or Plains card from your library"
);
public static final MagicTargetChoice ISLAND_OR_MOUNTAIN_CARD_FROM_LIBRARY = new MagicTargetChoice(
MagicTargetFilter.TARGET_ISLAND_OR_MOUNTAIN_CARD_FROM_LIBRARY,
false,

View File

@ -1280,6 +1280,9 @@ public interface MagicTargetFilter<T extends MagicTarget> {
MagicCardFilterImpl TARGET_FOREST_OR_ISLAND_CARD_FROM_LIBRARY =
Factory.land(MagicTargetType.Library, MagicSubType.Forest, MagicSubType.Island);
MagicCardFilterImpl TARGET_FOREST_OR_PLAINS_CARD_FROM_LIBRARY =
Factory.land(MagicTargetType.Library, MagicSubType.Forest, MagicSubType.Plains);
MagicCardFilterImpl TARGET_ISLAND_OR_MOUNTAIN_CARD_FROM_LIBRARY =
Factory.land(MagicTargetType.Library, MagicSubType.Island, MagicSubType.Mountain);