if (!friend.isSelectableThisTurn(game) || !attacker.onSameC3NetworkAs(friend) || !canSee(game, friend, target)) {
if ( attacker.equals(friend) || !friend.isActive() || !attacker.onSameC3NetworkAs(friend) || !canSee(game, friend, target) ) {
    private static Entity findC3Spotter(Game game, Entity attacker, Targetable target) {    if (!attacker.hasC3() && !attacker.hasC3i()) {      return attacker;    }    Entity c3spotter = attacker;    int c3range = attacker.getPosition().distance(target.getPosition());    for (java.util.Enumeration i = game.getEntities(); i.hasMoreElements();) {      Entity friend = (Entity)i.nextElement();      if (!friend.isSelectableThisTurn(game) || !attacker.onSameC3NetworkAs(friend) || !canSee(game, friend, target)) {        continue; // useless to us...      }      int buddyRange = effectiveDistance(game, friend, target);      if(buddyRange < c3range) {        c3range = buddyRange;        c3spotter = friend;      }    }    return c3spotter;  }