added card Inkmoth Nexus
added mana action for Tectonic Edge and Inkmoth Nexus improve rules compliance for man lands by giving them the appropriate type and subtypemaster
parent
5e8ef39ca3
commit
b370d7e4bb
|
@ -8097,7 +8097,6 @@ cube=default
|
|||
value=3
|
||||
rarity=2
|
||||
type=Land
|
||||
basic=
|
||||
timing=land
|
||||
|
||||
>Flashfreeze
|
||||
|
@ -8132,3 +8131,11 @@ type=Artifact
|
|||
converted=3
|
||||
cost={3}
|
||||
timing=artifact
|
||||
|
||||
>Inkmoth Nexus
|
||||
image=http://magiccards.info/scans/en/mbs/145.jpg
|
||||
cube=default
|
||||
value=4
|
||||
rarity=3
|
||||
type=Land
|
||||
timing=land
|
||||
|
|
|
@ -54,12 +54,16 @@ public class ManaActivationDefinitions {
|
|||
// Artifacts.
|
||||
addManaActivation("Lotus Petal",new MagicSacrificeTapManaActivation(MagicManaType.ALL_TYPES));
|
||||
addManaActivation("Mind Stone",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0));
|
||||
|
||||
// Land generating colorless mana
|
||||
addManaActivation("Tectonic Edge",new MagicTapManaActivation(new MagicManaType[]{MagicManaType.Colorless},0));
|
||||
|
||||
// Man lands.
|
||||
addCreatureActivations("Celestial Colonnade",new MagicManaType[]{MagicManaType.Blue,MagicManaType.White});
|
||||
addCreatureActivations("Creeping Tar Pit",new MagicManaType[]{MagicManaType.Blue,MagicManaType.Black});
|
||||
addCreatureActivations("Raging Ravine",new MagicManaType[]{MagicManaType.Red,MagicManaType.Green});
|
||||
addCreatureActivations("Stirring Wildwood",new MagicManaType[]{MagicManaType.Green,MagicManaType.White});
|
||||
addCreatureActivations("Inkmoth Nexus",new MagicManaType[]{MagicManaType.Colorless});
|
||||
|
||||
// Creatures.
|
||||
addCreatureActivations("Alloy Myr",MagicManaType.ALL_TYPES);
|
||||
|
@ -70,4 +74,4 @@ public class ManaActivationDefinitions {
|
|||
addCreatureActivations("Vine Trellis",new MagicManaType[]{MagicManaType.Colorless,MagicManaType.Green});
|
||||
addCreatureActivations("Plague Myr",new MagicManaType[]{MagicManaType.Colorless});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ import magic.model.MagicPlayer;
|
|||
import magic.model.MagicPowerToughness;
|
||||
import magic.model.MagicSource;
|
||||
import magic.model.MagicSubType;
|
||||
import magic.model.MagicType;
|
||||
import magic.model.action.MagicAddTurnTriggerAction;
|
||||
import magic.model.action.MagicBecomesCreatureAction;
|
||||
import magic.model.action.MagicChangeCountersAction;
|
||||
|
@ -2241,33 +2242,24 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable CHIMERIC_MASS_VARIABLE=new MagicLocalVariable() {
|
||||
private static final MagicLocalVariable CHIMERIC_MASS_VARIABLE=new MagicDummyLocalVariable() {
|
||||
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
final int charge=permanent.getCounters(MagicCounterType.Charge);
|
||||
pt.power=charge;
|
||||
pt.toughness=charge;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
|
||||
return flags;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSubTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return 0;
|
||||
return flags|MagicSubType.Construct.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Creature.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getColorFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return flags;
|
||||
}
|
||||
};
|
||||
|
||||
private static final MagicPermanentActivation CHIMERIC_MASS=new MagicPermanentActivation("Chimeric Mass",
|
||||
|
@ -2468,30 +2460,31 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable CELESTIAL_COLONNADE_VARIABLE=new MagicLocalVariable() {
|
||||
private static final MagicLocalVariable CELESTIAL_COLONNADE_VARIABLE=new MagicDummyLocalVariable() {
|
||||
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
pt.power=4;
|
||||
pt.toughness=4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
|
||||
return flags|MagicAbility.Flying.getMask()|MagicAbility.Vigilance.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSubTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return 0;
|
||||
return flags|MagicSubType.Elemental.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Creature.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getColorFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return MagicColor.White.getMask()|MagicColor.Blue.getMask();
|
||||
}
|
||||
};
|
||||
|
@ -2521,30 +2514,30 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable CREEPING_TAR_PIT_VARIABLE=new MagicLocalVariable() {
|
||||
|
||||
private static final MagicLocalVariable CREEPING_TAR_PIT_VARIABLE=new MagicDummyLocalVariable() {
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
pt.power=3;
|
||||
pt.toughness=2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
|
||||
return flags|MagicAbility.Unblockable.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSubTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return 0;
|
||||
return flags|MagicSubType.Elemental.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Creature.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getColorFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return MagicColor.Blue.getMask()|MagicColor.Black.getMask();
|
||||
}
|
||||
};
|
||||
|
@ -2574,25 +2567,22 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable RAGING_RAVINE_VARIABLE=new MagicLocalVariable() {
|
||||
private static final MagicLocalVariable RAGING_RAVINE_VARIABLE=new MagicDummyLocalVariable() {
|
||||
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
pt.power=3;
|
||||
pt.toughness=3;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
|
||||
return flags;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSubTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return 0;
|
||||
return flags|MagicSubType.Elemental.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Creature.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -2619,6 +2609,54 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable INKMOTH_NEXUS_VARIABLE=new MagicDummyLocalVariable() {
|
||||
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
pt.power=1;
|
||||
pt.toughness=1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
return flags|MagicAbility.Flying.getMask()|MagicAbility.Infect.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Artifact.getMask()|MagicType.Creature.getMask();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
private static final MagicPermanentActivation INKMOTH_NEXUS=new MagicPermanentActivation(
|
||||
"Inkmoth Nexus",new MagicCondition[]{new MagicArtificialCondition(
|
||||
MagicManaCost.ONE.getCondition(),
|
||||
MagicManaCost.ONE.getCondition())},
|
||||
new MagicActivationHints(MagicTiming.Animate)) {
|
||||
|
||||
@Override
|
||||
public MagicEvent[] getCostEvent(final MagicSource source) {
|
||||
return new MagicEvent[]{new MagicPayManaCostEvent(source,source.getController(),MagicManaCost.ONE)};
|
||||
}
|
||||
|
||||
@Override
|
||||
public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) {
|
||||
|
||||
return new MagicEvent(source,source.getController(),new Object[]{source},this,
|
||||
"Inkmoth Nexus becomes a 1/1 Blinkmoth artifact creature with flying and infect until end of turn." +
|
||||
" It's still a land.");
|
||||
}
|
||||
|
||||
@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 MagicBecomesCreatureAction(permanent,INKMOTH_NEXUS_VARIABLE));
|
||||
}
|
||||
};
|
||||
|
||||
private static final MagicPermanentActivation RAGING_RAVINE=new MagicPermanentActivation(
|
||||
"Raging Ravine",new MagicCondition[]{new MagicArtificialCondition(
|
||||
MagicManaCost.TWO_RED_GREEN.getCondition(),
|
||||
|
@ -2649,30 +2687,31 @@ public class PermanentActivationDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicLocalVariable STIRRING_WILDWOOD_VARIABLE=new MagicLocalVariable() {
|
||||
private static final MagicLocalVariable STIRRING_WILDWOOD_VARIABLE=new MagicDummyLocalVariable() {
|
||||
|
||||
@Override
|
||||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
pt.power=3;
|
||||
pt.toughness=4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getAbilityFlags(final MagicGame game,final MagicPermanent permanent,final long flags) {
|
||||
|
||||
return flags|MagicAbility.Reach.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSubTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicSubType.Elemental.getMask();
|
||||
}
|
||||
|
||||
return 0;
|
||||
@Override
|
||||
public int getTypeFlags(final MagicPermanent permanent,final int flags) {
|
||||
return flags|MagicType.Creature.getMask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getColorFlags(final MagicPermanent permanent,final int flags) {
|
||||
|
||||
return MagicColor.Green.getMask()|MagicColor.White.getMask();
|
||||
}
|
||||
};
|
||||
|
@ -2850,7 +2889,8 @@ public class PermanentActivationDefinitions {
|
|||
RAGING_RAVINE,
|
||||
STIRRING_WILDWOOD,
|
||||
TECTONIC_EDGE,
|
||||
TUMBLE_MAGNET
|
||||
TUMBLE_MAGNET,
|
||||
INKMOTH_NEXUS
|
||||
);
|
||||
|
||||
public static void addPermanentActivations() {
|
||||
|
|
Loading…
Reference in New Issue