@Override
	public Location getTarget() throws ArrayIndexOutOfBoundsException,
			InputMismatchException {
		// TODO Auto-generated method stub
		Scanner in = new Scanner(System.in);
		System.out
				.println("Please enter a number (0 - 9) "
						+ "to represent the X coordinate of the TARGET you are shooting at: ");
		if (in.hasNextInt()) {
			xTarget = in.nextInt();
		}

		System.out
				.println("Please enter a number (0 - 9) "
						+ "to represent the X coordinate of the TARGET you are shooting at: ");
		if (in.hasNextInt()) {
			yTarget = in.nextInt();
		}

		if (xTarget < 0 || yTarget < 0 || xTarget > 9 || yTarget > 9) {
			System.out
					.println("Invalid target. Please re-enter a valid target."
							+ "\n");
			return getTarget();
		}

		humanAim = new HumanLocation(xTarget, yTarget, false, 0);
		// System.out.println("humanAim x: " + humanAim.getX());
		// System.out.println("humanAim y: " + humanAim.getY());

		for (HumanLocation l : movesMade) {
			// System.out.println("movesMade l's x: " + l.getX());
			// System.out.println("movesMadel's y: " + l.getY());
			if (l.getX() == humanAim.getX() && l.getY() == humanAim.getY()) {
				System.out.println("You have already fired on that target."
						+ "\n" + "Re-enter valid coordinates" + "\n");
				return getTarget();
			}
		}

		movesMade.add(humanAim);
		return humanAim;
	}