public void makeMove(Player p){

		for (BoardCell target : targets) {
			target.setTarget(false);
		}

		rollDie();
		startTargets(p.currentIndex, die);

		if(p instanceof ComputerPlayer){
			humansTurn = false;
			ArrayList<BoardCell> roomList = new ArrayList<BoardCell>();
			ArrayList<BoardCell> list = new ArrayList<BoardCell>();
			boolean hasRoom = false;

			for(BoardCell cell : getTargets()) {
				if(cell.isRoom() && ((ComputerPlayer) p).getLastVisited() != ((RoomCell) cell).getInitial()){
					roomList.add(cell);
					hasRoom = true;

				} else {
					list.add(cell);
				}
			}

			Random generator = new Random();

			if(hasRoom){
				int room = generator.nextInt(roomList.size());
				p.setCurrentIndex(roomList.get(room).getIndex());
				((ComputerPlayer) p).setLastVisited(((RoomCell) roomList.get(room)).getInitial());
			} else {
				int cell = generator.nextInt(list.size());
				p.setCurrentIndex(list.get(cell).getIndex());
			}

			if (getCellAt(p.getCurrentIndex()).isRoom()) {
				if(!((ComputerPlayer) p).makeSuggestion(players)){
					ArrayList<Card> accusationCards = ((ComputerPlayer) p).makeAccusation();
					
					JOptionPane.showMessageDialog(Accuse, "Computer player " + p.name + " makes the accusation: " + 
							accusationCards.get(0).getContent() + ", " + accusationCards.get(1).getContent() + ", " + accusationCards.get(2).getContent(), "Accusation", JOptionPane.INFORMATION_MESSAGE);
				}
				

				
			}

		} else {
			humansTurn = true;
			moveMade = false;

			for(BoardCell cell : getTargets()) {
				cell.setTarget(true);
			}

		}

		paintComponent(super.getGraphics());


	}