Files
plugin-library/Assets/00.StaryEvo/Runtime/Tool/EventKit/EventTrigger/Physics/OnTriggerEnterEventTrigger.cs
2025-03-31 11:16:52 +08:00

30 lines
996 B
C#

using System;
using UnityEngine;
namespace Stary.Evo
{
public class OnTriggerEnterEventTrigger : MonoBehaviour
{
public readonly EasyEvent<Collider> OnTriggerEnterEvent = new EasyEvent<Collider>();
private void OnTriggerEnter(Collider collider)
{
OnTriggerEnterEvent.Trigger(collider);
}
}
public static class OnTriggerEnterEventTriggerExtension
{
public static IUnRegister OnTriggerEnterEvent<T>(this T self, Action<Collider> onTriggerEnter)
where T : Component
{
return self.GetOrAddComponent<OnTriggerEnterEventTrigger>().OnTriggerEnterEvent
.Register(onTriggerEnter);
}
public static IUnRegister OnTriggerEnterEvent(this GameObject self, Action<Collider> onTriggerEnter)
{
return self.GetOrAddComponent<OnTriggerEnterEventTrigger>().OnTriggerEnterEvent
.Register(onTriggerEnter);
}
}
}