[ new MagicPlaneswalkerActivation(1) { @Override public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) { return new MagicEvent( source, MagicTargetChoice.NEG_TARGET_PERMANENT, new MagicNoCombatTargetPicker(true,true,false), this, "Target permanent\$ doesn't untap during its controller's next untap step." ); } @Override public void executeEvent(final MagicGame game, final MagicEvent event) { event.processTargetPermanent(game, { final MagicPermanent creature -> game.doAction(MagicChangeStateAction.Set( creature, MagicPermanentState.DoesNotUntapDuringNext )); }); } }, new MagicPlaneswalkerActivation(-2) { @Override public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) { return new MagicEvent( source, MagicTargetChoice.NEG_TARGET_CREATURE_OR_PLAYER, new MagicDamageTargetPicker(3), this, "SN deals 3 damage to target creature or player\$ and PN gains 3 life." ); } @Override public void executeEvent(final MagicGame game, final MagicEvent event) { event.processTarget(game, { final MagicTarget target -> final MagicDamage damage=new MagicDamage(event.getSource(),target,3); game.doAction(new MagicDealDamageAction(damage)); game.doAction(new MagicChangeLifeAction(event.getPlayer(),3)); }); } }, new MagicPlaneswalkerActivation(-7) { @Override public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) { return new MagicEvent( source, MagicTargetChoice.NEG_TARGET_PLAYER, this, "Destroy all lands target player\$ controls." ); } @Override public void executeEvent(final MagicGame game, final MagicEvent event) { event.processTargetPlayer(game, { final MagicPlayer player -> final Collection targets = game.filterPermanents(player,MagicTargetFilter.TARGET_LAND_YOU_CONTROL); game.doAction(new MagicDestroyAction(targets)); }); } } ]