private void OnGUI() { GameConfigurationRefresherProfile = (GameConfigurationRefresherProfile)EditorGUILayout.ObjectField(GameConfigurationRefresherProfile, typeof(GameConfigurationRefresherProfile), false); if (GameConfigurationRefresherProfile == null) { GameConfigurationRefresherProfile = AssetFinder.SafeSingleAssetFind <GameConfigurationRefresherProfile>("t:" + typeof(GameConfigurationRefresherProfile).Name); } if (GameConfigurationRefresherProfile != null) { EditorGUILayout.Separator(); EditorGUILayout.LabelField("Found game configurations : "); if (foundGameConfigurations.Count == 0) { var childGameConfigurationTypes = TypeHelper.GetAllTypeAssignableFrom(typeof(GameConfiguration)); if (childGameConfigurationTypes != null) { foreach (var gameConfigurationType in childGameConfigurationTypes) { foundGameConfigurations.Add(new SingleGameConfiguration((GameConfiguration)AssetFinder.SafeSingleAssetFind <UnityEngine.Object>("t:" + gameConfigurationType.Name), GameConfigurationRefresherProfile)); } } } if (GUILayout.Button("REFRESH ALL")) { foreach (var gameConfiguration in foundGameConfigurations) { gameConfiguration.Refresh(); } } foreach (var gameConfiguration in foundGameConfigurations) { EditorGUILayout.BeginVertical(); gameConfiguration.OnGui(); EditorGUILayout.EndVertical(); EditorGUILayout.Separator(); } } }
public SingleGameConfiguration(GameConfiguration gameConfiguration, GameConfigurationRefresherProfile GameConfigurationRefresherProfile) { this.gameConfiguration = gameConfiguration; this.GameConfigurationRefresherProfile = GameConfigurationRefresherProfile; }