using UnityEngine; using System.Collections; using Beyond; using UnityEngine.Events; namespace Invector.vCharacterController.vActions { [vClassHeader("Trigger Ladder Action", false)] public class bTriggerLadderAction : vTriggerLadderAction { [vHelpBox("Disable Selected HUD OnValidate, and enable OnInvalidate. Script ActionTriggerEvent.cs")] public bool disableHUD = true; private TriggerDescriptor m_descriptor; private void OnLadderTriggerEnter(GameObject gameObject) { if (disableHUD) { //ActionTriggerEvent.LadderTriggerEnter?.Invoke(gameObject); ActionTriggerEvent.ActionTriggerEnter(m_descriptor); } } private void OnLadderTriggerExit(GameObject gameObject) { if (disableHUD) { //ActionTriggerEvent.LadderTriggerExit?.Invoke(gameObject); ActionTriggerEvent.ActionTriggerExit(m_descriptor); } } protected virtual void Start() { m_descriptor = new TriggerDescriptor(gameObject, TriggerDescriptor.TriggerType.Ladder); OnPlayerEnter.AddListener(() => OnLadderTriggerEnter(gameObject)); OnPlayerExit.AddListener(() => OnLadderTriggerExit(gameObject)); } } }