if (e.getOwner() == pViewer || (bTeamVision && !e.getOwner().isEnemyOf(pViewer))) {
if (e.getOwner() == pViewer || bTeamVision && !e.getOwner().isEnemyOf(pViewer)) {
    private Vector filterEntities(Player pViewer, Vector vEntities) {        Vector vCanSee = new Vector();        Vector vAllEntities = game.getEntitiesVector();        Vector vMyEntities = new Vector();        boolean bTeamVision = game.getOptions().booleanOption("team_vision");        // If they can see all, return the input list        if (pViewer.canSeeAll()) {            return vEntities;        }        for (int x = 0; x < vAllEntities.size(); x++) {            Entity e = (Entity)vAllEntities.elementAt(x);            if (e.getOwner() == pViewer || (bTeamVision && !e.getOwner().isEnemyOf(pViewer))) {                vMyEntities.addElement(e);            }        }        for (int x = 0; x < vEntities.size(); x++) {            Entity e = (Entity)vEntities.elementAt(x);            if (vMyEntities.contains(e)) {                vCanSee.addElement(e);                continue;            }            for (int y = 0; y < vMyEntities.size(); y++) {                Entity e2 = (Entity)vMyEntities.elementAt(y);                if(e2.isOffBoard()) {                    continue;                }                if (Compute.canSee(game, e2, e)) {                    vCanSee.addElement(e);                    break;                }            }        }        return vCanSee;    }