MagicFlankingTrigger added automatically if card script contains flanking keyword

master
melvin 2011-11-16 09:59:21 +08:00
parent c9abadb3aa
commit 51ce66ebca
4 changed files with 17 additions and 5 deletions

View File

@ -11,5 +11,4 @@ cost={2}{B}
pt=2/2
ability=flanking
timing=main
requires_card_code

View File

@ -6,7 +6,6 @@ import magic.model.event.MagicRegenerationActivation;
import magic.model.trigger.MagicFlankingTrigger;
public class Cadaverous_Knight {
public static final MagicFlankingTrigger T = new MagicFlankingTrigger();
public static final MagicPermanentActivation A = new MagicRegenerationActivation(MagicManaCost.ONE_BLACK_BLACK);
public static final MagicPermanentActivation A =
new MagicRegenerationActivation(MagicManaCost.ONE_BLACK_BLACK);
}

View File

@ -8,6 +8,7 @@ import magic.model.MagicCardDefinition;
import magic.model.trigger.MagicExaltedTrigger;
import magic.model.trigger.MagicBattleCryTrigger;
import magic.model.trigger.MagicLivingWeaponTrigger;
import magic.model.trigger.MagicFlankingTrigger;
import magic.model.trigger.MagicEchoTrigger;
import magic.model.trigger.MagicTappedIntoPlayTrigger;
import magic.model.trigger.MagicModularTrigger;
@ -106,7 +107,11 @@ public enum MagicAbility {
card.add(MagicLivingWeaponTrigger.getInstance());
}
},
Flanking("flanking",10),
Flanking("flanking",10) {
public void addAbilityImpl(final MagicCardDefinition card, final String arg) {
card.add(MagicFlankingTrigger.create());
}
},
None("",0);
public static final long PROTECTION_FLAGS=

View File

@ -8,6 +8,15 @@ import magic.model.action.MagicChangeTurnPTAction;
import magic.model.event.MagicEvent;
public class MagicFlankingTrigger extends MagicWhenBecomesBlockedTrigger {
private static final MagicFlankingTrigger INSTANCE = new MagicFlankingTrigger();
private MagicFlankingTrigger() {}
public static MagicFlankingTrigger create() {
return INSTANCE;
}
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPermanent data) {
if (data == permanent) {