public Building( Coords coords, Board board ) {
public Building( Coords coords, IBoard board ) {
    public Building( Coords coords, Board board ) {        // The ID of the building will be the hashcode of the coords.        // ASSUMPTION: this will be unique ID across ALL the building's        //             hexes for ALL the clients of this board.        this.id = coords.hashCode();        // The building occupies the given coords, at least.        this.coordinates.addElement( coords );        // Get the Hex for those coords.        IHex startHex = board.getHex( coords );        // Read our construction type from the hex.        if ( !startHex.containsTerrain( Terrains.BUILDING ) ) {            throw new IllegalArgumentException( "The coordinates, " +                                                coords.getBoardNum() +                                                ", do not contain a building."                                                );        }        this.type = startHex.terrainLevel( Terrains.BUILDING );        // Insure that we've got a good type (and initialize our CF).        this.currentCF = getDefaultCF( this.type );        if ( this.currentCF == Building.UNKNOWN ) {            throw new IllegalArgumentException( "Unknown construction type: " +                                                this.type +                                                ".  The board is invalid." );        }        // Now read the *real* CF, if the board specifies one.        if ( startHex.containsTerrain( Terrains.BLDG_CF ) ) {            this.currentCF = startHex.terrainLevel( Terrains.BLDG_CF );        }        this.phaseCF = this.currentCF;        // Walk through the exit directions and        // identify all hexes in this building.        for ( int dir = 0; dir < 6; dir++ ) {            // Does the building exit in this direction?            if ( startHex.containsTerrainExit( Terrains.BUILDING, dir ) ) {                this.include( coords.translated(dir), board );            }        }        // Set the building's name.        StringBuffer buffer = new StringBuffer();        buffer.append( "Building #" );        buffer.append( this.id );        this.name = buffer.toString();    } // End public Building( Coords, Board )