replace annonymous class with closure

master
melvin 2013-12-01 16:14:31 +08:00
parent 72bd602e26
commit dd85f9c1d3
11 changed files with 65 additions and 76 deletions

View File

@ -13,11 +13,10 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
game.doAction(new MagicChangeLifeAction(player,-4));
game.doAction(new MagicChangeLifeAction(event.getPlayer(),4));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
game.doAction(new MagicChangeLifeAction(player,-4));
game.doAction(new MagicChangeLifeAction(event.getPlayer(),4));
});
}
}

View File

@ -14,18 +14,17 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
final int amount = event.getCardOnStack().getX();
MagicDamage damage = new MagicDamage(event.getSource(), player, amount);
event.processTargetPlayer(game, {
final MagicPlayer player ->
final int amount = event.getCardOnStack().getX();
MagicDamage damage = new MagicDamage(event.getSource(), player, amount);
game.doAction(new MagicDealDamageAction(damage));
final Collection<MagicPermanent> targets = game.filterPermanents(
player,
MagicTargetFilter.TARGET_CREATURE_YOU_CONTROL);
for (final MagicPermanent target : targets) {
damage = new MagicDamage(event.getSource(), target, amount);
game.doAction(new MagicDealDamageAction(damage));
final Collection<MagicPermanent> targets = game.filterPermanents(
player,
MagicTargetFilter.TARGET_CREATURE_YOU_CONTROL);
for (final MagicPermanent target : targets) {
damage = new MagicDamage(event.getSource(), target, amount);
game.doAction(new MagicDealDamageAction(damage));
}
}
});
}

View File

@ -22,10 +22,9 @@
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
game.addEvent(new MagicDiscardEvent(event.getPermanent(),player,2));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
game.addEvent(new MagicDiscardEvent(event.getPermanent(),player,2));
});
}
}

View File

@ -12,12 +12,11 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer target) {
final MagicPlayer player = event.getPlayer();
final int amount = player.getNrOfPermanents(MagicType.Land);
game.doAction(new MagicMillLibraryAction(target,amount));
}
event.processTargetPlayer(game, {
final MagicPlayer target ->
final MagicPlayer player = event.getPlayer();
final int amount = player.getNrOfPermanents(MagicType.Land);
game.doAction(new MagicMillLibraryAction(target,amount));
});
}
}

View File

@ -17,13 +17,12 @@
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer targetPlayer) {
final MagicPlayer player = event.getPlayer();
final int amount = player.getNrOfPermanents(MagicSubType.Ally);
if (amount > 0) {
game.doAction(new MagicMillLibraryAction(targetPlayer,amount));
}
event.processTargetPlayer(game, {
final MagicPlayer targetPlayer ->
final MagicPlayer player = event.getPlayer();
final int amount = player.getNrOfPermanents(MagicSubType.Ally);
if (amount > 0) {
game.doAction(new MagicMillLibraryAction(targetPlayer,amount));
}
});
}

View File

@ -28,10 +28,9 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
game.doAction(new MagicChangePoisonAction(player,1));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
game.doAction(new MagicChangePoisonAction(player,1));
});
}
}

View File

@ -18,16 +18,15 @@
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
final int amount = event.getPlayer().getNrOfPermanents(MagicSubType.Human);
final MagicDamage damage = new MagicDamage(
event.getSource(),
player,
amount
);
game.doAction(new MagicDealDamageAction(damage));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
final int amount = event.getPlayer().getNrOfPermanents(MagicSubType.Human);
final MagicDamage damage = new MagicDamage(
event.getSource(),
player,
amount
);
game.doAction(new MagicDealDamageAction(damage));
});
}
}

View File

@ -11,10 +11,9 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
game.addEvent(new MagicDiscardEvent(event.getSource(),player,2));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
game.addEvent(new MagicDiscardEvent(event.getSource(),player,2));
});
}
}

View File

@ -12,13 +12,12 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer target) {
final int amount = event.getCardOnStack().getX();
final MagicDamage damage=new MagicDamage(event.getSource(),target,amount);
game.doAction(new MagicDealDamageAction(damage));
game.addEvent(new MagicDiscardEvent(event.getSource(), target, amount));
}
event.processTargetPlayer(game, {
final MagicPlayer target ->
final int amount = event.getCardOnStack().getX();
final MagicDamage damage=new MagicDamage(event.getSource(),target,amount);
game.doAction(new MagicDealDamageAction(damage));
game.addEvent(new MagicDiscardEvent(event.getSource(), target, amount));
});
}
}

View File

@ -11,20 +11,19 @@
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
final MagicCardList graveyard = new MagicCardList(player.getGraveyard());
for (final MagicCard card : graveyard) {
game.doAction(new MagicRemoveCardAction(
card,
MagicLocationType.Graveyard
));
game.doAction(new MagicMoveCardAction(
card,
MagicLocationType.Graveyard,
MagicLocationType.OwnersLibrary
));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
final MagicCardList graveyard = new MagicCardList(player.getGraveyard());
for (final MagicCard card : graveyard) {
game.doAction(new MagicRemoveCardAction(
card,
MagicLocationType.Graveyard
));
game.doAction(new MagicMoveCardAction(
card,
MagicLocationType.Graveyard,
MagicLocationType.OwnersLibrary
));
}
});
}

View File

@ -24,10 +24,9 @@ def ScreechingMill = new MagicPermanentActivation(
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
event.processTargetPlayer(game,new MagicPlayerAction() {
public void doAction(final MagicPlayer player) {
game.doAction(new MagicMillLibraryAction(player,1));
}
event.processTargetPlayer(game, {
final MagicPlayer player ->
game.doAction(new MagicMillLibraryAction(player,1));
});
}
};