Exemplo n.º 1
0
    /// <summary>
    /// Try to load the asset if it exists otherwise creates it
    /// </summary>
    protected void LoadAssetEditor()
    {
        Debug.Log("Attempt to load asset : " + PathResources + PathArabicDiacriticDictionarySO + NameArabicDiacriticDictionarySO + FormatArabicDiacriticDictionarySO);

        arabicDiacriticDictionary = AssetDatabase.LoadAssetAtPath <ArabicDiacriticDictionarySO>(PathResources + PathArabicDiacriticDictionarySO + NameArabicDiacriticDictionarySO + FormatArabicDiacriticDictionarySO);
        if (arabicDiacriticDictionary == null)
        {
            Debug.Log("Asset cannot be found or opened. Create a new one instead.");
            arabicDiacriticDictionary = CreateNewAsset();
        }
        else
        {
            Debug.Log("Asset successfully loaded.");
        }



        if (arabicDiacriticDictionary.diacriticConfigs == null || arabicDiacriticDictionary.diacriticConfigs.Count == 0)
        {
            Debug.Log("Asset is currently empty. It will be filled with default data. (ArabicDiacriticDictionaryInit)");
            arabicDiacriticDictionary.diacriticConfigs = new List <DiacriticConfig>(ArabicDiacriticDictionaryInit.DiacriticConfigs);

            EditorUtility.SetDirty(arabicDiacriticDictionary);
            AssetDatabase.SaveAssets();
            AssetDatabase.Refresh();
        }
    }
 /// <summary>
 /// Loading Asset
 /// </summary>
 protected void LoadAsset()
 {
     if (fontsDictionaries == null)
     {
         fontsDictionaries = Resources.Load <ArabicDiacriticDictionarySO>(PathArabicDiacriticDictionarySO + NameArabicDiacriticDictionarySO);
     }
 }
Exemplo n.º 3
0
    /// <summary>
    /// Create a new asset
    /// </summary>
    /// <returns></returns>
    protected ArabicDiacriticDictionarySO CreateNewAsset()
    {
        if (!Directory.Exists(PathArabicDiacriticDictionarySO))
        {
            Directory.CreateDirectory(PathArabicDiacriticDictionarySO);
        }
        ArabicDiacriticDictionarySO asset = ScriptableObject.CreateInstance <ArabicDiacriticDictionarySO>();

        UnityEditor.AssetDatabase.CreateAsset(asset, PathResources + PathArabicDiacriticDictionarySO + NameArabicDiacriticDictionarySO + FormatArabicDiacriticDictionarySO);
        UnityEditor.AssetDatabase.SaveAssets();
        return(asset);
    }