public static void SetScriptableData(Type _type) { //プレハブにスクリプタブルオブジェクトを設置 UnityEngine.Object[] assets; string assetName = SystemSetting.GetResourcesLoadPath() + _type.Name + "Asset"; assets = Resources.LoadAll(assetName); MasterLoadAudio tmp = new MasterLoadAudio(); ScriptableObject sObject = null; foreach (UnityEngine.Object asset in assets) { if (asset is MasterLoadAudio) { tmp = (MasterLoadAudio)asset; sObject = (ScriptableObject)asset; } } List <MasterLoadAudio.Data> listData = MasterLoadAudioCSVLoader.GetListDataFromCSV(_type); tmp.DataList = listData; //最後に保存して変更を確定 EditorUtility.SetDirty(sObject); }
public static void ObjectCreate() { MasterLoadAudio loadSettingData = CreateInstance <MasterLoadAudio> (); string path = SystemSetting.GetScriptableobjectPath() + "MasterLoadAudioAsset" + ".asset"; AssetDatabase.CreateAsset(loadSettingData, path); AssetDatabase.ImportAsset(path); EditorUtility.UnloadUnusedAssets(); }
public static void CreateComponents(Type _type) { string name = "target"; string outputPath = SystemSetting.GetAssetSrcPath() + _type.Name + "Prefab.prefab"; GameObject gameObject = EditorUtility.CreateGameObjectWithHideFlags( name, HideFlags.HideInHierarchy, typeof(MasterLoadAudioDataHolder) ); //プレハブにスクリプタブルオブジェクトを設置 UnityEngine.Object[] assets; string assetName = SystemSetting.GetResourcesLoadPath() + _type.Name + "Asset"; assets = Resources.LoadAll(assetName); Debug.LogWarning("GetObj :" + assetName.ToString()); MasterLoadAudio tmp = new MasterLoadAudio(); foreach (UnityEngine.Object asset in assets) { if (asset is MasterLoadAudio) { tmp = (MasterLoadAudio)asset; } } MasterLoadAudioDataHolder holder = gameObject.GetComponent <MasterLoadAudioDataHolder> (); holder.assetBundleData = tmp; SetAssetBundleInfo(gameObject); PrefabUtility.CreatePrefab(outputPath, gameObject, ReplacePrefabOptions.ReplaceNameBased); Editor.DestroyImmediate(gameObject); }