/// <summary>
        /// Determines which <see cref="T:ParquetClassLibrary.Sandbox.Biome"/> the
        /// given <see cref="T:ParquetClassLibrary.Sandbox.MapRegion"/> corresponds to.
        /// </summary>
        /// <param name="in_region">The region to investigate.</param>
        /// <returns>The appropriate <see cref="T:ParquetClassLibrary.Sandbox.Biome"/>.</returns>
        public static Biome GetBiome(this MapRegion in_region)
        {
            var result = Biome.Field;

            if (in_region.HasBuildings())
            {
                result = Biome.Town;
            }
            else
            {
                switch (in_region.ElevationLocal)
                {
                case Elevation.AboveGround:
                    if (in_region.IsHeavenly())
                    {
                        result = Biome.Heavens;
                    }
                    else
                    {
                        result = Biome.Alpine;
                    }
                    break;

                case Elevation.LevelGround:
                    if (in_region.IsVolcanic())
                    {
                        result = Biome.Volcano;
                    }
                    else if (in_region.IsCoastal())
                    {
                        result = Biome.Seaside;
                    }
                    else if (in_region.IsDeserted())
                    {
                        result = Biome.Desert;
                    }
                    else if (in_region.IsFrozen())
                    {
                        result = Biome.Tundra;
                    }
                    else if (in_region.IsSwampy())
                    {
                        result = Biome.Swamp;
                    }
                    else if (in_region.IsForested())
                    {
                        result = Biome.Forest;
                    }
                    break;

                case Elevation.BelowGround:
                    if (in_region.IsVolcanic())
                    {
                        result = Biome.Inferno;
                    }
                    else
                    {
                        result = Biome.Cavern;
                    }
                    break;
                }
            }

            return(result);
        }