private static void FindControllerVisualSchemes() { foreach (Transform child in visualSchemesCollection) { PlayerVisualScheme visualScheme = child.GetComponent <PlayerVisualScheme>(); if (!visualScheme) { continue; } controllerVisuals.Add(visualScheme); } }
public static void TakeVisualScheme(Controller.ControlType type, ref PlayerVisualScheme visualScheme) { List <PlayerVisualScheme> filteredSchemes = controllerVisuals.FindAll(scheme => scheme.type == type); if (filteredSchemes.Count == 0) { return; } if (visualScheme) { controllerVisuals.Add(visualScheme); } visualScheme = filteredSchemes[Random.Range(0, filteredSchemes.Count)]; controllerVisuals.Remove(visualScheme); }