コード例 #1
0
    public static void ObjectCreate()
    {
        MasterSlotProbTable loadSettingData = CreateInstance <MasterSlotProbTable> ();
        string path = SystemSetting.GetScriptableobjectPath() + "MasterSlotProbTableAsset" + ".asset";

        AssetDatabase.CreateAsset(loadSettingData, path);
        AssetDatabase.ImportAsset(path);
        EditorUtility.UnloadUnusedAssets();
    }
コード例 #2
0
    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(MasterSlotProbTableDataHolder)
            );

        //プレハブにスクリプタブルオブジェクトを設置
        UnityEngine.Object[] assets;

        string assetName = SystemSetting.GetResourcesLoadPath() + _type.Name + "Asset";

        assets = Resources.LoadAll(assetName);
        Debug.LogWarning("GetObj :" + assetName.ToString());


        MasterSlotProbTable tmp = new MasterSlotProbTable();

        foreach (UnityEngine.Object asset in assets)
        {
            if (asset is MasterSlotProbTable)
            {
                tmp = (MasterSlotProbTable)asset;
            }
        }

        MasterSlotProbTableDataHolder holder = gameObject.GetComponent <MasterSlotProbTableDataHolder> ();

        holder.assetBundleData = tmp;
        SetAssetBundleInfo(gameObject);

        PrefabUtility.CreatePrefab(outputPath, gameObject, ReplacePrefabOptions.ReplaceNameBased);
        Editor.DestroyImmediate(gameObject);
    }