Beispiel #1
0
	public List<Player> getPlayers() {
		List<Player> players = Lists.newArrayList();
		NodeList nl = getSecondLevelElelents("players", "player");
		for(int i = 0; i < nl.getLength(); i++) {
			Element el = (Element) nl.item(i);
			PlayerSlot slot = new PlayerSlot(Integer.parseInt(el.getAttribute("slot")));
			Player p = new Player(el.getAttribute("name"), i, slot);
			p.setPoints(Integer.parseInt(el.getAttribute("points")));
			if (el.hasAttribute("ai-class")) {
				slot.setType(SlotType.AI);
				String aiClassName = el.getAttribute("ai-class");
//				//TODO temporaty for loading old games
//				if ("com.jcloisterzone.ai.LegacyAiPlayer".equals(aiClassName)) {
//					aiClassName = LegacyAiPlayer.class.getName();
//				}
				slot.setAiClassName(aiClassName);
			} else {
				if (el.hasAttribute("local")) {
					//easy way how to mark player local - Server process result of this method
					//and can assign real onwer properly
					slot.setType(SlotType.PLAYER);
				}
			}
			players.add(p);
		}
		return players;
	}