private static void CreateManager() { GameObject obj = new GameObject("KS: Framework"); GameObject pooling = new GameObject("KS: Pool Container"); obj.transform.SetSiblingIndex(0); pooling.transform.SetParent(obj.transform); Selection.activeGameObject = obj; KS_Scriptable_GameConfig config = null; string absPath = EditorUtility.SaveFilePanel("Create Game Config", "", "GameConfig", "asset"); if (absPath.StartsWith(Application.dataPath)) { config = ScriptableObject.CreateInstance <KS_Scriptable_GameConfig>(); absPath = absPath.Replace(Application.dataPath, ""); absPath = "Assets" + absPath; AssetDatabase.CreateAsset(config, absPath); AssetDatabase.SaveAssets(); } obj.AddComponent <KS_Manager>(); obj.GetComponent <KS_Manager>().gameConfig = config; obj.AddComponent <KS_Localisation>(); obj.GetComponent <KS_Localisation>().gameConfig = config; obj.AddComponent <KS_Settings>(); obj.GetComponent <KS_Settings>().gameConfig = config; obj.AddComponent <KS_Input>(); obj.GetComponent <KS_Input>().gameConfig = config; GameObject obj2 = new GameObject("Load Screen Container"); obj2.transform.parent = obj.transform; obj.AddComponent <KS_LoadScreen>(); obj.GetComponent <KS_LoadScreen>().LoadScreenContainer = obj2; obj.AddComponent <KS_PoolManager>(); obj.GetComponent <KS_PoolManager>().gameConfig = config; obj.GetComponent <KS_PoolManager>().pooledObjectsContainer = pooling; obj.AddComponent <KS_Subtitle>(); //GameObject obj3 = Instantiate(AssetDatabase.LoadAssetAtPath("Assets/KS Framework/Prefabs/UI/KS_prefab_console.prefab", typeof(GameObject))) as GameObject; //obj3.transform.parent = obj.transform; Init(); }
void OpenDatabase() { string absPath = EditorUtility.OpenFilePanel("Select Game Config", "", ""); if (absPath.StartsWith(Application.dataPath)) { string relPath = absPath.Substring(Application.dataPath.Length - "Assets".Length); gameConfig = AssetDatabase.LoadAssetAtPath(relPath, typeof(KS_Scriptable_GameConfig)) as KS_Scriptable_GameConfig; if (gameConfig) { EditorPrefs.SetString("ObjectPath", relPath); configFound = true; } } }
private void CreateDatabase() { string absPath = EditorUtility.SaveFilePanel("Create Game Config", "", "GameConfig", "asset"); KS_Scriptable_GameConfig config; if (absPath.StartsWith(Application.dataPath)) { config = ScriptableObject.CreateInstance <KS_Scriptable_GameConfig>(); absPath = absPath.Replace(Application.dataPath, ""); absPath = "Assets" + absPath; AssetDatabase.CreateAsset(config, absPath); AssetDatabase.SaveAssets(); gameConfig = AssetDatabase.LoadAssetAtPath(absPath, typeof(KS_Scriptable_GameConfig)) as KS_Scriptable_GameConfig; configFound = true; } }
/// <summary> /// Create a new instance of KS_FileHelper /// </summary> /// <param name="config"><see cref="KS_Scriptable_GameConfig">KS Framework Game Config</see></param> public KS_FileHelper(KS_Scriptable_GameConfig config) { gameConfig = config; instance = this; CheckDirectories(); }