public void makeMove(Player p){

		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());
			}

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

		}

		paintComponent(super.getGraphics());
	}