public int[] getResourceCardsEarned(int rollNumber, Player player) {
	    int cardsEarned[] = new int[5];
	    for (int i = 0; i < cardsEarned.length; i++) {
	        cardsEarned[i] = 0;
	    }
	    
	    // For each tile that has the roll number, look at all of its nodes
	    // and see if the player has a settlement on any of them
	    for (Tile tile : tileSet.values()) {
	        if (tile.getRollNumber() == rollNumber) {
	            for (Coordinate tileCoord : tile.getNormalizedCoordinates()) {
	                
	                Node tileNode = nodeSet.get(tileCoord);
	                
	                if (tileNode.hasSettlement() && 
	                    !robber.getLocation().equals(tile.getLocation())) {
	                    
	                    Settlement settlement = tileNode.getSettlement();
	                    
	                    if (settlement.getOwner() == player) {
	                        
	                        // If the settlement is a city, add 2 cards,
	                        // otherwise add 1 card
	                        cardsEarned[tile.getTileType().getIndex()] += 
	                                                settlement.isCity() ? 2 : 1;
	                    }
	                }
	            }
	        }
	    }
	    
	    return cardsEarned;
	}