if (!card.getAbilities().containsKey(ability.getId())) {
if (ability.checkTrigger(event, game)) {
ability.trigger(game, controllerId);
}
} else if (ability instanceof ZoneChangeTriggeredAbility && event.getFromZone() == Zone.BATTLEFIELD) {
ZoneChangeTriggeredAbility zcAbility = (ZoneChangeTriggeredAbility)ability;
if (zcAbility.getToZone() == null) {
if (ability.checkTrigger(event, game)) {
ability.trigger(game, controllerId);
}
}
}