replace groovy code with ability in card script

master
melvin 2013-10-16 21:21:37 +08:00
parent 766a2c98e9
commit 3c664073b9
3 changed files with 4 additions and 42 deletions

View File

@ -1,40 +0,0 @@
def HibernationBounce = new MagicPermanentActivation(
new MagicActivationHints(MagicTiming.Removal),
"Bounce"
) {
@Override
public Iterable<MagicEvent> getCostEvent(final MagicPermanent source) {
return [new MagicPayLifeEvent(source,2)];
}
@Override
public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) {
return new MagicEvent(
source,
this,
"Return SN to its owner's hand."
);
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
game.doAction(new MagicRemoveFromPlayAction(
event.getPermanent(),
MagicLocationType.OwnersHand
));
}
};
[
new MagicStatic(
MagicLayer.Ability,
MagicTargetFilter.TARGET_SLIVER
) {
@Override
public void modAbilityFlags(final MagicPermanent source,final MagicPermanent permanent,final Set<MagicAbility> flags) {
permanent.addAbility(HibernationBounce);
}
}
]

View File

@ -7,6 +7,6 @@ type=Creature
subtype=Sliver
cost={U}{B}
pt=2/2
timing=main
ability=lord all slivers have pay {L2} Return SN to its owner's hand.
static=all
requires_groovy_code
timing=main

View File

@ -139,6 +139,8 @@ public abstract class MagicPermanentActivation extends MagicActivation<MagicPerm
events.add(new MagicUntapEvent(source));
} else if (cost.equals("{L1}")) {
events.add(new MagicPayLifeEvent(source, 1));
} else if (cost.equals("{L2}")) {
events.add(new MagicPayLifeEvent(source, 2));
} else if (cost.equals("{L7}")) {
events.add(new MagicPayLifeEvent(source, 7));
} else if (cost.equals("{+1/+1}")) {