using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;

namespace MPStudio
{
    [Serializable]
    public class DieEvent : UnityEvent<string> { }
    
    public class AutoDestroy : MonoBehaviour
    {
        public string DieArg = "";
        
        [SerializeField] private float destroyDelay = 3f; // 延迟时间（秒）

        public DieEvent dieEvent;
        
        void Start()
        {
            // 在指定时间后自动销毁
            Destroy(gameObject, destroyDelay);
        }

        protected virtual void OnDestroy()
        {
            dieEvent?.Invoke(this.DieArg);
        }
    }
}