﻿#if UNITY_EDITOR 
using UnityEngine;
using UnityEditor;
using System.Reflection;
using System;

namespace BakeSoundEffect
{
    [InitializeOnLoad]
    public class Bake
    {
        static Bake()
        {
            Lightmapping.completed = Complete;
        }

        public static void Complete()
        {
            AudioClip sound = (AudioClip)EditorGUIUtility.Load("Assets/Plugins/BakeSoundEffect/effect.mp3");
            PlayClip(sound);
        }

        public static void PlayClip(AudioClip clip)
        {
            Assembly unityEditorAssembly = typeof(AudioImporter).Assembly;
            Type audioUtilClass = unityEditorAssembly.GetType("UnityEditor.AudioUtil");
            MethodInfo method = audioUtilClass.GetMethod(
                "PlayClip",
                BindingFlags.Static | BindingFlags.Public,
                null,
                new System.Type[] {
         typeof(AudioClip)
            },
            null
            );
            method.Invoke(
                null,
                new object[] {
         clip
            }
            );
        }
    }
}
#endif