using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.Serialization; public class HitBox : MonoBehaviour { [System.Serializable] public class DamagedEvent : UnityEvent { } [FormerlySerializedAs("onDamaged")] [SerializeField] [Space(10)] private DamagedEvent OnDamaged = new DamagedEvent(); public void Hit(object data) { HitCheck hit = (HitCheck)data; OnHited(hit); OnDamaged.Invoke(hit); } [Space(10)] public GameObject prefabEffDamage; void OnHited(HitCheck hit) { if (prefabEffDamage != null) { Transform eff = hit.owner.map.ObjectCreate(prefabEffDamage, hit.transform, Vector3.one, Vector3.zero).transform; eff.transform.SetParent(null); eff.transform.position = hit.transform.position; } } }