added Righteousness and Robe of Mirrors

master
beholder 2011-09-22 11:21:17 +02:00
parent 12f3ded9ac
commit 2b2be1cc72
5 changed files with 89 additions and 0 deletions

View File

@ -3873,6 +3873,16 @@ converted=1
cost={G}
timing=pump
>Righteousness
image=http://magiccards.info/scans/en/m11/178.jpg
value=2
rarity=R
type=Instant
color=w
converted=1
cost={W}
timing=pump
>Aggressive Urge
image=http://magiccards.info/scans/en/10e/250.jpg
value=2
@ -7207,6 +7217,18 @@ cost={U}
given_ability=flying
timing=aura
>Robe of Mirrors
image=http://magiccards.info/scans/en/10e/101.jpg
value=3
rarity=C
type=Enchantment
subtype=Aura
color=u
converted=1
cost={U}
given_ability=shroud
timing=aura
>Griffin Guide
image=http://magiccards.info/scans/en/ts/21.jpg
value=4

View File

@ -0,0 +1,42 @@
package magic.card;
import magic.model.MagicGame;
import magic.model.MagicPayedCost;
import magic.model.MagicPermanent;
import magic.model.action.MagicChangeTurnPTAction;
import magic.model.action.MagicMoveCardAction;
import magic.model.action.MagicPermanentAction;
import magic.model.choice.MagicTargetChoice;
import magic.model.event.MagicEvent;
import magic.model.event.MagicSpellCardEvent;
import magic.model.stack.MagicCardOnStack;
import magic.model.target.MagicPumpTargetPicker;
public class Righteousness {
public static final MagicSpellCardEvent S = new MagicSpellCardEvent() {
@Override
public MagicEvent getEvent(final MagicCardOnStack cardOnStack,final MagicPayedCost payedCost) {
return new MagicEvent(
cardOnStack.getCard(),
cardOnStack.getController(),
MagicTargetChoice.POS_TARGET_BLOCKING_CREATURE,
MagicPumpTargetPicker.getInstance(),
new Object[]{cardOnStack},
this,
"Target creature$ gets +7/+7 until end of turn.");
}
@Override
public void executeEvent(
final MagicGame game,
final MagicEvent event,
final Object[] data,
final Object[] choiceResults) {
game.doAction(new MagicMoveCardAction((MagicCardOnStack)data[0]));
event.processTargetPermanent(game,choiceResults,0,new MagicPermanentAction() {
public void doAction(final MagicPermanent creature) {
game.doAction(new MagicChangeTurnPTAction(creature,7,7));
}
});
}
};
}

View File

@ -0,0 +1,12 @@
package magic.card;
import magic.model.choice.MagicTargetChoice;
import magic.model.event.MagicPlayAuraEvent;
import magic.model.event.MagicSpellCardEvent;
import magic.model.target.MagicShroudTargetPicker;
public class Robe_of_Mirrors {
public static final MagicSpellCardEvent S = new MagicPlayAuraEvent(
MagicTargetChoice.POS_TARGET_CREATURE,
MagicShroudTargetPicker.getInstance());
}

View File

@ -148,6 +148,9 @@ public class MagicTargetChoice extends MagicChoice {
new MagicTargetChoice(MagicTargetFilter.TARGET_ATTACKING_CREATURE,true,MagicTargetHint.Negative,"target attacking creature");
public static final MagicTargetChoice POS_TARGET_ATTACKING_CREATURE=
new MagicTargetChoice(MagicTargetFilter.TARGET_ATTACKING_CREATURE,true,MagicTargetHint.Positive,"target attacking creature");
public static final MagicTargetChoice POS_TARGET_BLOCKING_CREATURE =
new MagicTargetChoice(MagicTargetFilter.TARGET_BLOCKING_CREATURE,true,MagicTargetHint.Positive,
"target attacking creature");
public static final MagicTargetChoice NEG_TARGET_ATTACKING_OR_BLOCKING_CREATURE =
new MagicTargetChoice(MagicTargetFilter.TARGET_ATTACKING_OR_BLOCKING_CREATURE,true,MagicTargetHint.Negative,"target attacking creature");
public static final MagicTargetChoice NEG_TARGET_ATTACKING_CREATURE_WITH_FLYING=

View File

@ -974,6 +974,16 @@ public interface MagicTargetFilter {
}
};
MagicTargetFilter TARGET_BLOCKING_CREATURE = new MagicTargetFilter() {
public boolean accept(final MagicGame game,final MagicPlayer player,final MagicTarget target) {
final MagicPermanent permanent = (MagicPermanent)target;
return permanent.isCreature(game)&&permanent.isBlocking();
}
public boolean acceptType(final MagicTargetType targetType) {
return targetType == MagicTargetType.Permanent;
}
};
MagicTargetFilter TARGET_ATTACKING_CREATURE_YOU_CONTROL=new MagicTargetFilter() {
public boolean accept(final MagicGame game,final MagicPlayer player,final MagicTarget target) {
final MagicPermanent permanent=(MagicPermanent)target;