@Override public boolean isAvailable(Game game, Ability source) { Watcher watcher = game.getState() .getWatchers() .get("noncreature permanent destroyed", source.getControllerId()); if (watcher != null && watcher.conditionMet()) { return true; } return false; }
@Override public boolean apply(Game game, Ability source) { Permanent p = game.getPermanent(source.getSourceId()); if (p != null) { Watcher watcher = game.getState().getWatchers().get("CastCreature", source.getSourceId()); if (watcher != null && !watcher.conditionMet()) { return true; } } return false; }
@Override public boolean isAvailable(Game game, Ability source) { Watcher watcher = game.getState().getWatchers().get("CreatureSpellCountered", source.getControllerId()); return watcher != null && watcher.conditionMet(); }