public void setTurnHolder(Player turnHolder) {
		Player oldTurnHolder = this.turnHolder;

		System.out.println("Chiamata a setTurnHolder");


		if (this.turnHolder == turnHolder) return;
		if (turnHolder == null) throw new NullPointerException("turnHolder is null");

		//Check that is active
		if (!turnHolder.isActive()) throw new IllegalArgumentException("the turnHolder must be active");

		//Check for errors
		boolean turnHolderFounded = false;
		for (Player p : playersList) {
			if (p == turnHolder) turnHolderFounded = true;
		}
		if (!turnHolderFounded) throw new IllegalArgumentException("the turnHolder must be in the playersList");

		this.turnHolder = turnHolder;

		//Callbacks call
		for (EventListener el : eventListeners) el.turnHolderChanged(oldTurnHolder, turnHolder);

	}