public synchronized boolean display() throws MenuExitException {
		boolean done = false;
		boolean result = false;

		String response = "";

		while (!done && !user.isDead()) {
			user.broadcast(menuOptions);
			response = user.getMenuResponse();
			if (response.equalsIgnoreCase("exit") || response.equalsIgnoreCase("e")){
				done = true;
				result = false;
			}else if (response.equals("exitall")){
				throw new MenuExitException();
			}else {
				try {
					Integer r = new Integer(response);
					if (r > maxResult ){
						user.broadcast("Invalid response. Cannot be greater than "+maxResult+"\r\n");
					}else if (r < minResult){
						user.broadcast("Invalid response. Cannot be less than "+minResult+"\r\n");
					}else {
						this.menuResult = r;
						result = true;
						done = true;
					}
				} catch (Exception e) {
					Room r = user.getCurrentRoom();
					if (r != null){
						user.getCurrentRoom().chat(
						user.getPlayerName() + " chats:" + response + "\r\n");
					}
				}
			}

		}

		return result;
	}