@Override
	protected void commandReceived(Object command) {
		if (command instanceof Command) {
			Command message = (Command)command;
			String action = message.getCommand();
			System.out.println("Command received: "+action);
			if (action.equals("set_username")) {
//				this.username = (String)message.getBaggage();
			} else if (action.equals("select_card")) {
				if (selectedCard == null &&
						A2AServer.getInstance().getGameState() == WAIT_FOR_CARDS &&
						A2AServer.getInstance().getCurrentHost() != this &&
						message.getBaggage() instanceof RedCard &&
						cards.contains(message.getBaggage())) {
					this.selectedCard = (RedCard)message.getBaggage();
					this.cards.remove(selectedCard);
					sendCommand("select_card", selectedCard);
					sendCommand("remove_card", selectedCard);
				} else {
					System.err.println("Cheating Client!");
					kick();
				}
			} else {
				System.err.println("unknown action: "+action);
			}
		} else {
			System.err.println("Poorly Made Cheating Client!");
			kick();
		}
	}