public List<PlayerResult> play(boolean showView) {
		List<Player> players = new ArrayList<>();
		for (int i = 0; i < strategies.size(); i++) {
			players.add(new ComputerPlayer("cpu" + i, strategies.get(i).getName(), strategies.get(i)));
		}

		List<PlayerResult> results = new ArrayList<>();
		for (Player player : players) {
			results.add(new PlayerResult(player.getName(), 0, 0, 0));
		}

		for (int i = 0; i < players.size(); i++) {
			for (int j = 0; j < players.size(); j++) {
				if (i == j)
					continue;
				int result = playGame(players.get(i), players.get(j), showView);
				if (result == -1) {
					results.set(i, results.get(i).incrementWins());
					results.set(j, results.get(j).incrementLosses());
				} else if (result == 1) {
					results.set(i, results.get(i).incrementLosses());
					results.set(j, results.get(j).incrementWins());
				} else {
					results.set(i, results.get(i).incrementDraws());
					results.set(j, results.get(j).incrementDraws());
				}
			}
		}

		Collections.sort(results);
		return results;
	}