added Lava Axe and Lord of the Unreal

master
beholder 2011-08-28 09:59:19 +02:00
parent 567a7fd5f1
commit 22732be6fe
3 changed files with 74 additions and 2 deletions

View File

@ -690,6 +690,19 @@ power=1
toughness=1
timing=main
>Lord of the Unreal
image=http://magiccards.info/scans/en/m12/62.jpg
value=3
rarity=R
type=Creature
subtype=Human,Wizard
color=u
converted=2
cost={U}{U}
power=2
toughness=2
timing=main
>Skinrender
image=http://magiccards.info/scans/en/som/78.jpg
value=4
@ -2228,6 +2241,16 @@ converted=2
cost={1}{U}
timing=counter
>Lava Axe
image=http://magiccards.info/scans/en/m12/148.jpg
value=3
rarity=C
type=Sorcery
color=r
converted=5
cost={4}{R}
timing=removal
>Lightning Bolt
image=http://magiccards.info/scans/en/m11/149.jpg
value=3

View File

@ -0,0 +1,42 @@
package magic.card;
import magic.model.MagicDamage;
import magic.model.MagicGame;
import magic.model.MagicPayedCost;
import magic.model.MagicPlayer;
import magic.model.action.MagicDealDamageAction;
import magic.model.action.MagicMoveCardAction;
import magic.model.choice.MagicTargetChoice;
import magic.model.event.MagicEvent;
import magic.model.event.MagicSpellCardEvent;
import magic.model.stack.MagicCardOnStack;
public class Lava_Axe {
public static final MagicSpellCardEvent S = new MagicSpellCardEvent() {
@Override
public MagicEvent getEvent(final MagicCardOnStack cardOnStack,final MagicPayedCost payedCost) {
final MagicPlayer player = cardOnStack.getController();
return new MagicEvent(
cardOnStack.getCard(),
player,
MagicTargetChoice.NEG_TARGET_PLAYER,
new Object[]{cardOnStack},
this,
cardOnStack.getCard() + " deals 5 damage to target player$.");
}
@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 MagicPlayer player = event.getTarget(game,choiceResults,0);
if (player!=null) {
final MagicDamage damage = new MagicDamage(cardOnStack.getCard(),player,5,false);
game.doAction(new MagicDealDamageAction(damage));
}
}
};
}

View File

@ -36,6 +36,7 @@ public class MagicStaticLocalVariable extends MagicDummyLocalVariable {
private static int knightExemplar;
private static int kulrathKnight;
private static int levitation;
private static int lordOfTheUnreal;
private static int madrushCyclops;
private static int murkfiendLiege;
private static int platinumAngel; // You can't lose the game.
@ -124,6 +125,10 @@ public class MagicStaticLocalVariable extends MagicDummyLocalVariable {
if (count > 0 && permanent.hasSubType(MagicSubType.Knight)) {
both += getOtherCount(knightExemplar,permanent,count);
}
count = controller.getCount(lordOfTheUnreal);
if (count > 0 && permanent.hasSubType(MagicSubType.Illusion)) {
both += controller.getCount(lordOfTheUnreal);
}
count = controller.getCount(eleshNorn);
both += getOtherCount(eleshNorn,permanent,count) * 2;
both -= opponent.getCount(eleshNorn) * 2;
@ -182,8 +187,9 @@ public class MagicStaticLocalVariable extends MagicDummyLocalVariable {
flags|=MagicAbility.DoubleStrike.getMask() |
MagicAbility.LifeLink.getMask();
}
if (controller.getCount(asceticism)>0) {
flags|=MagicAbility.CannotBeTheTarget.getMask();
if (controller.getCount(asceticism) > 0 ||
(controller.getCount(lordOfTheUnreal) > 0 && permanent.hasSubType(MagicSubType.Illusion))) {
flags |= MagicAbility.CannotBeTheTarget.getMask();
}
if (controller.getCount(bellowingTanglewurm)>0&&MagicColor.Green.hasColor(permanent.getColorFlags())) {
flags|=MagicAbility.Intimidate.getMask();
@ -265,6 +271,7 @@ public class MagicStaticLocalVariable extends MagicDummyLocalVariable {
knightExemplar=definitions.getCard("Knight Exemplar").getIndex();
kulrathKnight=definitions.getCard("Kulrath Knight").getIndex();
levitation=definitions.getCard("Levitation").getIndex();
lordOfTheUnreal=definitions.getCard("Lord of the Unreal").getIndex();
madrushCyclops=definitions.getCard("Madrush Cyclops").getIndex();
murkfiendLiege=definitions.getCard("Murkfiend Liege").getIndex();
platinumAngel=definitions.getCard("Platinum Angel").getIndex();