private void showPopup() {
		int chosen = -1;
		// keep redisplaying dialog until cancelled or valid option chosen
		do {
			// dialog
			chosen = JOptionPane.showOptionDialog(ui, this,
					"Enter Setup Information", JOptionPane.OK_CANCEL_OPTION,
					JOptionPane.DEFAULT_OPTION, null, null, null);
		} while (!setupCompleted() && chosen != JOptionPane.CANCEL_OPTION);

		if (chosen == JOptionPane.OK_OPTION) {
			String ip = address.getText();
			if (loadGame) {
				ui.setupClient(ip);
				ui.loadGame();
			} else {
				String playerName = name.getText();
				if (teamChoice.getSelection().getActionCommand() == redTeam) {
					ui.setupClient(playerName, ip, gameworld.world.Team.RED);
				} else {
					ui.setupClient(playerName, ip, gameworld.world.Team.BLUE);
				}
				ui.removeSetup();
				ui.startGame();
			}
		} else {
			// do nothing
		}
	}