@Override
	public void mouseClicked(MouseEvent e) {
		boolean selectedTarget = false;

		int mouseColumn = e.getX() / SIZE;
		int mouseRow = e.getY() / SIZE;
		
		if(!humanPlayer.isTurnFinished()){
			//Compares mouse row and column to possible targets
			for (BoardCell b : targets) {
				if (mouseRow == b.getRow() && mouseColumn == b.getColumn()) {
					selectedTarget = true;
					humanPlayer.setSelectedTarget(true);
					getHumanPlayer().setTurnFinished(true);
					humanPlayer.setLocationX(mouseRow);
					humanPlayer.setLocationY(mouseColumn);
					BoardCell bc = getCells().get(calcIndex(mouseRow, mouseColumn));
					
					//If player selected a room, display Suggestion Dialog Box
					if (bc.isRoom()) {
						//Takes the room the player is in and presets it in the Suggestion
						RoomCell rc = (RoomCell) bc;
						humanPlayer.setLastRoomVisited(rc.getInitial());
						String roomName = getRooms().get(rc.getInitial());
						GameControlPanel gcp = new GameControlPanel(this);
						gcp.getSuggestionDialog().getRoomlocation().setText(roomName);
						
						gcp.getSuggestionDialog().setVisible(true);
					}
					else{
						humanPlayer.setLastRoomVisited('Z');
					}
				}
			}
			//If mouse was clicked and no target was selected, display error message dialog
			if(selectedTarget == false){
				JOptionPane.showMessageDialog(this,"That is not a target", "Message", JOptionPane.INFORMATION_MESSAGE);
			}
		}
		//If human clicks when it is not their turn, display error message dialog
		else {
			JOptionPane.showMessageDialog(this,"Your turn is over", "Message", JOptionPane.INFORMATION_MESSAGE);
		}
		repaint();
		
		//If human player has finished turn, set to first computer players turn
		if (getWhoseTurn() == getHumanPlayer() && getHumanPlayer().isTurnFinished()) {
			setWhoseTurn(getComputerPlayers().get(0));
			humanPlayer.setGivenTargets(false);
		}

	}