[ new MagicWhenComesIntoPlayTrigger() { @Override public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent, final MagicPayedCost payedCost) { final MagicTargetChoice targetChoice = new MagicTargetChoice( new MagicOtherPermanentTargetFilter( MagicTargetFilter.TARGET_NONLAND_PERMANENT, permanent ), MagicTargetHint.None, "another target nonland permanent to exile" ); return new MagicEvent( permanent, targetChoice, MagicExileTargetPicker.create(), this, "Exile another target nonland permanent\$." ); } @Override public void executeEvent(final MagicGame game, final MagicEvent event) { event.processTargetPermanent(game,new MagicPermanentAction() { public void doAction(final MagicPermanent creature) { game.doAction(new MagicExileUntilThisLeavesPlayAction(event.getPermanent(),creature)); } }); } } ]