public bool CheckWallV(int xPos, int yPos) { if (!boardStatus[xPos, yPos].hasRightWall && !boardStatus[xPos + 1, yPos].hasRightWall && wallPegStatus[xPos, yPos].isOpen) { Board.PlaceVerticalWall(this, -1, xPos, yPos); bool retVal; //if still winnable place the wall, else revert back to no wall if (_numPlayers == 2 && CheckWinnable(0) && CheckWinnable(1)) { retVal = true; } else if (_numPlayers == 4 && CheckWinnable(0) && CheckWinnable(1) && CheckWinnable(2) && CheckWinnable(3)) { retVal = true; } else { retVal = false; } UndoPlaceVerticalWall(this, -1, xPos, yPos); return(retVal); } else { return(false); } }