diff --git a/Assets/Scripts/Framework/EventSystemKit/EventTriggerEx.cs b/Assets/Scripts/Framework/EventSystemKit/EventTriggerEx.cs index 3e97f3ec8..876cae637 100644 --- a/Assets/Scripts/Framework/EventSystemKit/EventTriggerEx.cs +++ b/Assets/Scripts/Framework/EventSystemKit/EventTriggerEx.cs @@ -75,19 +75,19 @@ namespace AibisDream.Framework public override void OnPointerEnter(PointerEventData data) { - EventSystemEx.Instance.OnPointerEnter(_interaction); + if (_interaction != null) EventSystemEx.Instance.OnPointerEnter(_interaction); base.OnPointerEnter(data); } public override void OnPointerExit(PointerEventData data) { - EventSystemEx.Instance.OnPointerExit(_interaction); + if (_interaction != null) EventSystemEx.Instance.OnPointerExit(_interaction); base.OnPointerExit(data); } public override void OnPointerDown(PointerEventData eventData) { - if (_interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) { EventSystemEx.Instance.OnPointerDown(_interaction); base.OnPointerDown(eventData); @@ -96,8 +96,7 @@ namespace AibisDream.Framework public override void OnPointerUp(PointerEventData eventData) { - - if (_interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) { EventSystemEx.Instance.OnPointerUp(_interaction); if (eventData != null) @@ -109,26 +108,38 @@ namespace AibisDream.Framework public override void OnDrag(PointerEventData eventData) { - EventSystemEx.Instance.OnDrag(_interaction); - base.OnDrag(eventData); + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + { + EventSystemEx.Instance.OnDrag(_interaction); + base.OnDrag(eventData); + } } public override void OnEndDrag(PointerEventData eventData) { - EventSystemEx.Instance.OnEndDrag(_interaction); - base.OnEndDrag(eventData); + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + { + EventSystemEx.Instance.OnEndDrag(_interaction); + base.OnEndDrag(eventData); + } } public override void OnBeginDrag(PointerEventData eventData) { - EventSystemEx.Instance.OnEndDrag(_interaction); - base.OnBeginDrag(eventData); + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + { + EventSystemEx.Instance.OnBeginDrag(_interaction); + base.OnBeginDrag(eventData); + } } public override void OnPointerClick(PointerEventData eventData) { - // EventSystemEx.Instance.OnPointerClick(_interaction); - base.OnPointerClick(eventData); + if (_interaction != null && _interaction.IsAvailable && !EventSystemEx.Instance.isLocked) + { + // EventSystemEx.Instance.OnPointerClick(_interaction); + base.OnPointerClick(eventData); + } } }