Пример #1
0
        protected HexBoard(Size sizeHexes, Size gridSize,
                           Func <HexBoard <THex>, BoardStorage <THex> > initializeBoard,
                           ReadOnlyCollection <HexCoords> landmarkCoords
                           )
        {
            if (initializeBoard == null)
            {
                throw new ArgumentNullException("initializeBoard");
            }

            SetGridSize(sizeHexes, gridSize);
            BoardHexes = initializeBoard(this);

            Landmarks = LandmarkCollection.CreateLandmarks(this, landmarkCoords);
        }
Пример #2
0
        private void SetLandmarks(IFastList <HexCoords> landmarkCoords)
        {
            ILandmarks tempLandmarks = null;
            ILandmarks landmarks     = null;

            try {
                tempLandmarks = LandmarkCollection.CreateLandmarks(this, landmarkCoords);
                landmarks     = tempLandmarks;
                tempLandmarks = null;
            } finally { if (tempLandmarks != null)
                        {
                            tempLandmarks.Dispose();
                        }
            }

            Landmarks = landmarks;
        }