public static void AddExitListener(GameObject go, Action <Collider> callback) { ColliderTriggerListener c = Get(go); if (c) { c.onTriggerExit = callback; } }
static public ColliderTriggerListener Get(GameObject go) { if (!go) { Logger.LogError("cannot add ColliderTriggerListener Component,the gameObject is null"); return(null); } ColliderTriggerListener listener = go.GetComponentDefault <ColliderTriggerListener>(); return(listener); }
private void CreatePlayerCollider() { CreateCollider(playerType == LabyrinthCreatureType.Self); if (playerType == LabyrinthCreatureType.Self && creature) { GameObject obj = creature.behaviour.collider_.gameObject; ColliderTriggerListener.AddEnterListener(obj, OnPlayerTriggerEnter); ColliderTriggerListener.AddStayListener(obj, OnPlayerTriggerStay); ColliderTriggerListener.AddExitListener(obj, OnPlayerTriggerExit); } }