private void OnGUI() { if (gameData1 == null) { EditorGUILayout.HelpBox("DataBaseDiGioco Mancante nel GameObject GruppoPercorsi", MessageType.Error); EditorGUILayout.Separator(); GUILayout.BeginHorizontal(EditorStyles.objectFieldThumb); if (GUILayout.Button("Crea il DataBase")) gameData1 = GameDataEditor.CreaDatabase(); EditorGUILayout.HelpBox("DataBase Mancante", MessageType.Error); GUILayout.EndHorizontal(); return; } if (percorsi != null) { GUILayout.BeginHorizontal(EditorStyles.objectFieldThumb); GUILayout.Label("Editor by DFT Students", GUI.skin.GetStyle("Label")); GUILayout.EndHorizontal(); EditorGUILayout.Separator(); GUILayout.BeginHorizontal(EditorStyles.objectFieldThumb); if (GUILayout.Button("Inserisci/Modifca Percorsi")) scelta = DoveSono.Modifica; if (percorsi.nomePercorsi.Count > 0) if (GUILayout.Button("Gestisci Percorsi")) scelta = DoveSono.Gestione; GUILayout.EndHorizontal(); EditorGUILayout.Separator(); switch (scelta) { case DoveSono.Modifica: InserisciModificaPercorsi(); break; case DoveSono.Gestione: GestisciPercorsi(); break; } } else // if (percorsi != null) { GUILayout.BeginHorizontal(EditorStyles.objectFieldThumb); if (GUILayout.Button("Crea il DataBase Percorsi")) { string tmpStr = "Assets"; if (pathPercorsi == null || pathPercorsi == string.Empty) { string tmpPercosro = EditorUtility.OpenFolderPanel("Percorso per Database", tmpStr, ""); if (tmpPercosro != string.Empty) { pathPercorsi = "Assets" + tmpPercosro.Substring(Application.dataPath.Length); EditorPrefs.SetString(Statici.STR_PercorsoConfig2, pathPercorsi); } } if (pathPercorsi != string.Empty) { percorsi = ScriptableObject.CreateInstance<PercorsiClass>(); AssetDatabase.CreateAsset(percorsi, pathPercorsi + Statici.STR_DatabaseDiGioco2); AssetDatabase.Refresh(); ProjectWindowUtil.ShowCreatedAsset(percorsi); } // resettaPercorsi(); } EditorGUILayout.HelpBox("DataBasePercorsi Mancante", MessageType.Error); GUILayout.EndHorizontal(); } }
private void OnEnable() { if (EditorPrefs.HasKey(Statici.STR_PercorsoConfig2)) { pathPercorsi = EditorPrefs.GetString(Statici.STR_PercorsoConfig2); percorsi = AssetDatabase.LoadAssetAtPath<PercorsiClass>(pathPercorsi + Statici.STR_DatabaseDiGioco2); } if (EditorPrefs.HasKey(Statici.STR_PercorsoConfig)) { string percorso = EditorPrefs.GetString(Statici.STR_PercorsoConfig); gameData1 = AssetDatabase.LoadAssetAtPath<GameData>(percorso + Statici.STR_DatabaseDiGioco); } percorsi.cambiatoAlmenoUnaScena = false; }