public void UpdateArraySize(int size) { if (tab.Length != size) { tab = new EditorSpeciesData[size]; for (int i = 0; i < size; i++) { tab[i] = new EditorSpeciesData(); } } }
private void DrawSpecies(Species species, EditorSpeciesData editorSpeciesData) { editorSpeciesData.isFoldedOut = EditorGUILayout.Foldout(editorSpeciesData.isFoldedOut, "Species count: " + species.Genomes.Count); if (!editorSpeciesData.isFoldedOut) { return; } EditorGUI.indentLevel++; EditorGUILayout.LabelField("AvgFitness: ", species.AverageFitness.ToString()); editorSpeciesData.UpdateArraySize(species.Genomes.Count); for (int i = 0; i < species.Genomes.Count; i++) { GenomeProxyEditor.DisplayGenome(species.Genomes[i], editorSpeciesData.tab[i]); } EditorGUI.indentLevel--; }