Exemplo n.º 1
0
        /// <summary>
        /// Возвращает индекс для полной генерации мира вокруг игрока <see cref="_fullGenerationRatingsArray"/>
        /// </summary>
        /// <returns>Индекс массива</returns>
        private int GetFullGenerationIndex(Vector2Int centerCellPosition, Vector2Int cellPos)
        {
            if (SettingsAccess.GetRadius(centerCellPosition, cellPos) <= SettingsAccess.FullGeneratedCellsRadius)
            {
                return(Mathf.Abs(cellPos.x % SettingsAccess.FullGeneratedCellsRadiusSize + cellPos.y % SettingsAccess.FullGeneratedCellsRadiusSize * SettingsAccess.FullGeneratedCellsRadiusSize));
            }

            return(-1);
        }
Exemplo n.º 2
0
        public void CellRadiusCheck()
        {
            for (int radius = 1; radius < 10; radius++)
            {
                var size = SettingsAccess.RadiusToLength(radius);

                for (int index = 0; index < size; index++)
                {
                    var pos = SpiralPositionsIterator.Spiral(index) * radius;

                    Assert.GreaterOrEqual(radius, SettingsAccess.GetRadius(Vector2Int.zero, pos));
                }
            }
        }