added Spell Pierce and Spere of the Suns

master
melvin 2011-06-07 14:53:44 +08:00
parent 4ab102dce1
commit bd528ff2ac
5 changed files with 75 additions and 7 deletions

View File

@ -112,7 +112,7 @@ ROE U
36.3406 36.3406
NOTE:animate land, become 1/1 Blinkmoth artifact creature with flying, infect* NOTE:IMPL
NAME:Inkmoth Nexus NAME:Inkmoth Nexus
TEXT: TEXT:
Land Land
@ -164,7 +164,7 @@ ZEN R
29.6912 29.6912
NOTE:counter noncreature spell unless pays 2* NOTE:IMPL
NAME:Spell Pierce NAME:Spell Pierce
TEXT: TEXT:
{U} {U}
@ -174,7 +174,7 @@ ZEN C
28.498 28.498
NOTE:checks for second creature spell this turn* NOTE:return from graveyeard
NAME:Vengevine NAME:Vengevine
TEXT: TEXT:
{2}{G}{G} {2}{G}{G}
@ -219,7 +219,7 @@ ALL U, MED R
25.1005 25.1005
NOTE:multikicker 2, charge counters* NOTE:mana pool
NAME:Everflowing Chalice NAME:Everflowing Chalice
TEXT: TEXT:
{0} {0}
@ -252,7 +252,7 @@ M11 R
24.1755 24.1755
NOTE:level up, grant mana ability to elves* NOTE:mana pool
NAME:Joraga Treespeaker NAME:Joraga Treespeaker
TEXT: TEXT:
{G} {G}

View File

@ -8139,3 +8139,24 @@ value=4
rarity=3 rarity=3
type=Land type=Land
timing=land timing=land
>Spell Pierce
image=http://magiccards.info/scans/en/zen/67.jpg
cube=default
value=3
rarity=1
type=Instant
color=u
converted=1
cost={U}
timing=counter
>Sphere of the Suns
image=http://magiccards.info/scans/en/mbs/134.jpg
cube=default
value=3
rarity=2
type=Artifact
converted=2
cost={2}
timing=tapland

View File

@ -915,6 +915,31 @@ public class CardEventDefinitions {
} }
}; };
private static final MagicSpellCardEvent SPELL_PIERCE=new MagicSpellCardEvent("Spell Pierce") {
@Override
public MagicEvent getEvent(final MagicCardOnStack cardOnStack,final MagicPayedCost payedCost) {
return new MagicEvent(
cardOnStack.getCard(),
cardOnStack.getController(),
MagicTargetChoice.NEG_TARGET_NONCREATURE_SPELL,
new Object[]{cardOnStack},this,"Counter target noncreature spell$ unless its controller pays {2}.");
}
@Override
public void executeEvent(final MagicGame game,final MagicEvent event,final Object[] data,final Object[] choiceResults) {
final MagicCardOnStack cardOnStack=(MagicCardOnStack)data[0];
game.doAction(new MagicMoveCardAction(cardOnStack));
final MagicCardOnStack targetSpell=event.getTarget(game,choiceResults,0);
if (targetSpell!=null) {
game.addEvent(new MagicCounterUnlessEvent(cardOnStack.getCard(),targetSpell,MagicManaCost.TWO));
}
}
};
private static final MagicSpellCardEvent MANA_LEAK=new MagicSpellCardEvent("Mana Leak") { private static final MagicSpellCardEvent MANA_LEAK=new MagicSpellCardEvent("Mana Leak") {
@Override @Override

View File

@ -51,6 +51,7 @@ public class ManaActivationDefinitions {
// Artifacts. // Artifacts.
addManaActivation("Lotus Petal",new MagicSacrificeTapManaActivation(MagicManaType.ALL_TYPES)); addManaActivation("Lotus Petal",new MagicSacrificeTapManaActivation(MagicManaType.ALL_TYPES));
addManaActivation("Mind Stone",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0)); addManaActivation("Mind Stone",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0));
addManaActivation("Sphere of the Suns", new MagicVividManaActivation(MagicManaType.ALL_TYPES));
// Land generating colorless mana // Land generating colorless mana
addManaActivation("Tectonic Edge",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0)); addManaActivation("Tectonic Edge",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0));
@ -71,6 +72,6 @@ public class ManaActivationDefinitions {
addCreatureActivations("Vine Trellis",new MagicManaType[]{MagicManaType.Colorless,MagicManaType.Green}); addCreatureActivations("Vine Trellis",new MagicManaType[]{MagicManaType.Colorless,MagicManaType.Green});
addCreatureActivations("Plague Myr",new MagicManaType[]{MagicManaType.Colorless}); addCreatureActivations("Plague Myr",new MagicManaType[]{MagicManaType.Colorless});
System.err.println("Added 20 mana activations"); System.err.println("Added 21 mana activations");
} }
} }

View File

@ -3234,6 +3234,28 @@ public class TriggerDefinitions {
} }
}; };
private static final MagicTrigger SPHERE_SUN=new MagicTrigger(MagicTriggerType.WhenComesIntoPlay,"Sphere of the Suns") {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final Object data) {
return new MagicEvent(permanent,permanent.getController(),new Object[]{permanent},this,
permanent.getName()+" enters the battlefield tapped with three charge counters on it.");
}
@Override
public void executeEvent(final MagicGame game,final MagicEvent event,final Object data[],final Object[] choiceResults) {
final MagicPermanent permanent=(MagicPermanent)data[0];
game.doAction(new MagicTapAction(permanent,false));
game.doAction(new MagicChangeCountersAction(permanent,MagicCounterType.Charge,3,false));
}
@Override
public boolean usesStack() {
return false;
}
};
private static final MagicTrigger BLOOD_CRYPT=new MagicRavnicaLandTrigger("Blood Crypt"); private static final MagicTrigger BLOOD_CRYPT=new MagicRavnicaLandTrigger("Blood Crypt");
private static final MagicTrigger BREEDING_POOL=new MagicRavnicaLandTrigger("Breeding Pool"); private static final MagicTrigger BREEDING_POOL=new MagicRavnicaLandTrigger("Breeding Pool");
@ -3694,7 +3716,6 @@ public class TriggerDefinitions {
@Override @Override
public boolean usesStack() { public boolean usesStack() {
return false; return false;
} }
}; };