public static T CreateItem <T>(string path, string name) where T : DBEntry
        {
            var item = ScriptableObjectsEditorUtils.Create <T>(path, name);

            CollectItems();

            return(item);
        }
        public static void CreateModule <T>(string moduleName, Action <T> onCreate) where T : Component
        {
            PathUtils.CreatePath("AssistLib", "Resources", "Modules");
            var moduleDBEntry = ScriptableObjectsEditorUtils.Create <ModuleDBEntry>(PathUtils.Combine("Assets", "AssistLib", "Resources", "Modules"), moduleName);

            PrefabEditorUtils.CreatePrefab(moduleDBEntry, onCreate);
            DBEntryEditorUtils.CollectItems();
        }
        public static T CreateItem <T>() where T : DBEntry
        {
            var item = ScriptableObjectsEditorUtils.Create <T>();

            CollectItems();

            return(item);
        }
        public static void CreateDB()
        {
            if (DB.Get <DBCollection>() != null)
            {
                return;
            }

            PathUtils.CreatePath("Resources");
            ScriptableObjectsEditorUtils.Create <DBCollection>(PathUtils.Combine("Assets", "Resources"), "DB");
            CollectItems();
        }
        private void StoreLocalization(Dictionary <string, Dictionary <string, string> > localization)
        {
            foreach (KeyValuePair <string, Dictionary <string, string> > kvp in localization)
            {
                var lang = DB.Get <LanguageItem>(kvp.Key);
                if (lang == null)
                {
                    lang = ScriptableObjectsEditorUtils.Create <LanguageItem>(PathUtils.Combine("Assets", "Localization", "Resources", "Languages"), kvp.Key);
                }
                var json = JSONUtuls.Serialize(kvp.Value).DecodeEncodedNonAscii();
                FileUtils.SaveTextToFile(PathUtils.Combine(Application.dataPath, "Localization", "Resources", "Languages", kvp.Key + "@text.txt"), json);
                AssetDatabase.Refresh();
            }

            Debug.Log(JSONUtuls.Serialize(localization).DecodeEncodedNonAscii());
        }