[ new MagicWhenOtherSpellIsCastTrigger() { @Override public boolean accept(final MagicPermanent permanent, final MagicCardOnStack spell) { return spell.hasSubType(MagicSubType.Giant); } @Override public MagicEvent executeTrigger(final MagicGame game, final MagicPermanent permanent, final MagicCardOnStack cardOnStack) { new MagicEvent( permanent, new MagicSimpleMayChoice( MagicSimpleMayChoice.ADD_PLUSONE_COUNTER, 1, MagicSimpleMayChoice.DEFAULT_YES ), this, "PN may\$ put a +1/+1 counter on SN." ); } @Override public void executeEvent(final MagicGame game, final MagicEvent event) { if (event.isYes()) { game.doAction(new MagicChangeCountersAction( event.getPermanent(), MagicCounterType.PlusOne, 1, true )); } } } ]