ARKBreedingStats.Form1.determineBestBreeding C# (CSharp) Метод

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

private determineBestBreeding ( Creature chosenCreature = null ) : void
chosenCreature Creature
Результат void
        private void determineBestBreeding(Creature chosenCreature = null)
        {
            string selectedSpecies = (chosenCreature != null ? chosenCreature.species : "");
            bool newSpecies = false;
            if (selectedSpecies.Length == 0 && listViewSpeciesBP.SelectedIndices.Count > 0)
                selectedSpecies = (string)listViewSpeciesBP.SelectedItems[0].Tag;
            if (selectedSpecies.Length > 0 && breedingPlan1.currentSpecies != selectedSpecies)
            {
                breedingPlan1.currentSpecies = selectedSpecies;
                breedingPlan1.speciesIndex = Values.V.speciesNames.IndexOf(selectedSpecies);
                newSpecies = true;

                int s = Values.V.speciesNames.IndexOf(selectedSpecies);
                breedingPlan1.EnabledColorRegions = (s >= 0 ? Values.V.species[s].colors.Select(n => n.name != "").ToArray() : new bool[6] { true, true, true, true, true, true });

                breedingPlanNeedsUpdate = true;
            }
            if (breedingPlanNeedsUpdate)
                breedingPlan1.Creatures = creatureCollection.creatures.Where(c => c.species == selectedSpecies && c.status == CreatureStatus.Available && !c.neutered && c.cooldownUntil < DateTime.Now && c.growingUntil < DateTime.Now).ToList();

            breedingPlan1.statWeights = statWeighting1.Weightings;
            BreedingPlan.BreedingMode bm = BreedingPlan.BreedingMode.TopStatsConservative;
            if (radioButtonBPTopStats.Checked)
                bm = BreedingPlan.BreedingMode.TopStatsLucky;
            else if (radioButtonBPHighStats.Checked)
                bm = BreedingPlan.BreedingMode.BestNextGen;

            breedingPlan1.chosenCreature = chosenCreature;
            breedingPlan1.drawBestParents(bm, newSpecies);
            breedingPlanNeedsUpdate = false;
        }
Form1