@Override
public boolean apply(Game game, Ability source) {
Spell spell = game.getStack().getSpell(targetPointer.getFirst(game, source));
if (spell != null) {
SpellAbility sa = spell.getSpellAbility();
UUID targetedGolem = (UUID) getValue("targetedGolem");
for (Permanent permanent : game.getBattlefield().getActivePermanents(filterGolem, source.getControllerId(), source.getSourceId(), game)) {
if (permanent.getId().equals(targetedGolem)) {
continue; // copy only for other golems
}
boolean legal = true;
for (Target target : sa.getTargets()) {
if (!target.canTarget(permanent.getId(), game)) {
legal = false;
break;
}
}