private void GenerateRing(IslandRing ring)
 {
     foreach (var _ in Enumerable.Range(0, ring.MaxIslands))
     {
         var island = RandomizeIsland(ring);
         CheckPosition(island.transform, ring.RingDistance);
         Islands.Add(island.transform);
     }
 }
        private GameObject RandomizeIsland(IslandRing ring)
        {
            var position = GetPositionInRing(ring.RingDistance);

            if (ring.CanGenerateCities && MaxCities > 0)
            {
                if (RandomService.RollD100(CityChance))
                {
                    MaxCities--;
                    return(Placer.PlaceCity(position).gameObject);
                }
            }

            return(Placer.PlaceIsland(position).gameObject);
        }