convert from java code to groovy code

master
melvin 2013-05-19 10:33:38 +08:00
parent 3b06028b08
commit a7f7b76c99
3 changed files with 26 additions and 41 deletions

View File

@ -0,0 +1,25 @@
[
new MagicSpellCardEvent() {
@Override
public MagicEvent getEvent(final MagicCardOnStack cardOnStack,final MagicPayedCost payedCost) {
return new MagicEvent(
cardOnStack,
MagicTargetChoice.NEG_TARGET_ATTACKING_CREATURE,
new MagicDestroyTargetPicker(false),
this,
"Destroy target attacking creature\$. " +
"PN gains life equal to its power."
);
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPermanent(game,new MagicPermanentAction() {
public void doAction(final MagicPermanent creature) {
final int power=creature.getPower();
game.doAction(new MagicDestroyAction(creature));
game.doAction(new MagicChangeLifeAction(event.getPlayer(),power));
}
});
}
}
]

View File

@ -7,4 +7,4 @@ rarity=U
type=Instant
cost={3}{W}
timing=attack
requires_card_code
requires_groovy_code

View File

@ -1,40 +0,0 @@
package magic.card;
import magic.model.MagicGame;
import magic.model.MagicPayedCost;
import magic.model.MagicPermanent;
import magic.model.action.MagicChangeLifeAction;
import magic.model.action.MagicDestroyAction;
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.MagicDestroyTargetPicker;
public class Chastise {
public static final MagicSpellCardEvent S = new MagicSpellCardEvent() {
@Override
public MagicEvent getEvent(final MagicCardOnStack cardOnStack,final MagicPayedCost payedCost) {
return new MagicEvent(
cardOnStack,
MagicTargetChoice.NEG_TARGET_ATTACKING_CREATURE,
new MagicDestroyTargetPicker(false),
this,
"Destroy target attacking creature$. " +
"PN gains life equal to its power.");
}
@Override
public void executeEvent(
final MagicGame game,
final MagicEvent event) {
event.processTargetPermanent(game,new MagicPermanentAction() {
public void doAction(final MagicPermanent creature) {
final int power=creature.getPower();
game.doAction(new MagicDestroyAction(creature));
game.doAction(new MagicChangeLifeAction(event.getPlayer(),power));
}
});
}
};
}