Пример #1
0
        private void SetHotel(TileEnum tile, HotelEnum hotel)
        {
            if (hotel.IsHotel())
            {
                // If the Tile was already a Hotel then decrement that Hotel
                if (Model.Board[(int)tile].Hotel.IsHotel())
                {
                    Model.Hotels[(int)Model.Board[(int)tile].Hotel].TileCount--;
                }

                Model.Hotels[(int)hotel].TileCount++;
            }

            Model.Board[(int)tile].Hotel = hotel;
        }
Пример #2
0
        private void ExpandTiles(List <TileEnum> tiles, HotelEnum hotel)
        {
            List <TileEnum> changed = new List <TileEnum>();

            foreach (var i in tiles)
            {
                if (Model.Board[(int)i].Hotel == HotelEnum.Used)
                {
                    SetHotel(i, hotel);
                    changed.Add(Model.Board[(int)i].Index);
                }
            }

            CheckForNonPlayable();

            foreach (var item in changed)
            {
                var adjacentTiles = GetAdjacent(item);
                ExpandTiles(adjacentTiles, hotel);
            }
        }
Пример #3
0
 public static bool IsHotel(this HotelEnum item)
 {
     return(item != HotelEnum.NotUsed &&
            item != HotelEnum.Used &&
            item != HotelEnum.NotPlayable);
 }