public void talk() {
		while (gameRunning) {
			if (ourTurn) {
				try {
					Thread.sleep(10);
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
			}

			// Process client's turn
			else{

				// Tell client card that was played
				if(toSendCommand != null){
					try {
						output.write(toSendCommand+"\n");
						output.flush();
					} catch (IOException e) {
						System.err.println("O GOD I AM SO SORRY SOMETHING BLOWED " +
								"UP! TAKING THE WHOLE SHIP WITH US, BECAUSE FUCK YOU!");
						e.printStackTrace();
						try {
							input.close();
							output.close();
						} catch (IOException e1) {
							e1.printStackTrace();
						}
						System.exit(1);
					}
				}

				// Wait for client to respond with card played
				try {
					receivedCommand = input.readLine();
					if(receivedCommand == null){
						// I know this is horrible and wrong, I don't give a
						// shit
						System.out.println("Game Ended...Maybe you lost?");
						System.exit(1);
					}
				} catch (IOException e) {
					e.printStackTrace();
				}
				listener.actionPerformed(new ActionEvent(this,
						ActionEvent.ACTION_PERFORMED, "turnEnd"));
				ourTurn = true;
			}
		}

		// Close up everything
		try {
			input.close();
			output.close();
			closeSocket();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}