Beyond_Beyaan.Galaxy.GenerateGalaxyThread C# (CSharp) Метод

GenerateGalaxyThread() приватный Метод

private GenerateGalaxyThread ( object sender, DoWorkEventArgs e ) : void
sender object
e System.ComponentModel.DoWorkEventArgs
Результат void
        private void GenerateGalaxyThread(object sender, DoWorkEventArgs e)
        {
            lock (_lockGalaxy)
            {
                GALAXYTYPE galaxyType;
                int minPlanets;
                int maxPlanets;
                Random r;
                try
                {
                    GalaxyArgs args = (GalaxyArgs) e.Argument;
                    galaxyType = args.GalaxyType;
                    minPlanets = args.MinPlanets;
                    maxPlanets = args.MaxPlanets;
                    r = args.Random;
                }
                catch (Exception)
                {
                    return;
                }

                bool[][] grid = GenerateRandom(galaxyType);
                /*switch (galaxyType)
            {
                case GALAXYTYPE.RANDOM:
                    {
                        grid = GenerateRandom(size);
                    } break;
                case GALAXYTYPE.CLUSTER:
                    {
                        grid = GenerateCluster(size);
                    } break;
                case GALAXYTYPE.STAR:
                    {
                        grid = GenerateStar(size);
                    } break;
                case GALAXYTYPE.DIAMOND:
                    {
                        grid = GenerateDiamond(size);
                    } break;
                case GALAXYTYPE.RING:
                    {
                        grid = GenerateRing(size);
                    } break;
            }*/

                GalaxySize = grid.Length;
                int numberOfStars = 0;
                switch (galaxyType)
                {
                    case GALAXYTYPE.SMALL:
                        numberOfStars = 24;
                        break;
                    case GALAXYTYPE.MEDIUM:
                        numberOfStars = 48;
                        break;
                    case GALAXYTYPE.LARGE:
                        numberOfStars = 70;
                        break;
                    case GALAXYTYPE.HUGE:
                        numberOfStars = 108;
                        break;
                }

                FillGalaxyWithStars(numberOfStars, minPlanets, maxPlanets, grid, r);
            }
        }