public void setValue(Cell cell) {

        turn.incTurn();
        cell.setValue(player.getPlayer());
        log.info(grid.toString());
        grid.getStatus().setText(player.getOtherPlayerName() + "'s turn.");

        // checks if the grid is full
        if (turn.getTurn() == gv.getMaxTurns()) {
        	if(player.hasWon()){
        		grid.getStatus().setText(player.getWinner() + " has won the game!");
        	} else {
        		grid.getStatus().setText("It's a tie!");        		
        	}
        }

        // checks if someone won the game
        if (grid.winCheck() && !player.hasWon()) {
        	player.setWon(player.getPlayerName());
        	grid.getStatus().setText(player.getWinner() + " has won the game!");
        }
        log.info(grid.getStatus().getText());

        player.changePlayer();

        notifyObservers();
    }