Пример #1
0
        static void SaveProfile()
        {
            ModBuilderProfile currentProfile = profiles[profileIndex];

            ModBuilderProfile mbp = new ModBuilderProfile();

            mbp.groups = new Dictionary <string, bool>();

            foreach (AddressableAssetGroup group in AddressableAssetSettingsDefaultObject.Settings.groups)
            {
                BundledAssetGroupSchema bundledAssetGroupSchema = group.GetSchema <BundledAssetGroupSchema>();
                if (bundledAssetGroupSchema != null)
                {
                    mbp.groups.Add(group.Name, group.GetSchema <BundledAssetGroupSchema>().IncludeInBuild);
                }
            }

            mbp.profileName  = currentProfile.profileName;
            mbp.exportFolder = exportFolderName;

            profiles[profileIndex] = mbp;

            string json = JsonConvert.SerializeObject(profiles, Formatting.Indented);

            using (StreamWriter sw = new StreamWriter(Application.dataPath + "/SDK/modprofiles.json"))
            {
                sw.Write(json);
                sw.Close();
            }
        }
Пример #2
0
        static void OnProfileIndexChange()
        {
            ModBuilderProfile currentProfile = profiles[profileIndex];

            foreach (AddressableAssetGroup group in AddressableAssetSettingsDefaultObject.Settings.groups)
            {
                BundledAssetGroupSchema bundledAssetGroupSchema = group.GetSchema <BundledAssetGroupSchema>();
                if (bundledAssetGroupSchema != null)
                {
                    if (currentProfile.groups != null)
                    {
                        if (currentProfile.groups.ContainsKey(group.Name))
                        {
                            group.GetSchema <BundledAssetGroupSchema>().IncludeInBuild = currentProfile.groups[group.Name];
                        }
                        else
                        {
                            Debug.LogWarning("Group " + group.Name + " not found in profile " + currentProfile.profileName + ".");
                        }
                    }
                    else
                    {
                        CheckAll(false);
                    }
                }
            }

            exportFolderName = currentProfile.exportFolder;
        }