public virtual void OnTriggerDown() { m_isInteracting = true; if (m_parentTrigger != null) { m_parentTrigger.OnTriggerDown(); } m_onInteracted.Invoke(); }
private void TraceForAnim() { Ray ray = m_cam.ScreenPointToRay(Input.mousePosition); RaycastHit2D hit2D; RaycastHit hit; Vector3 mousePos = m_cam.ScreenToWorldPoint(Input.mousePosition); if (hit2D = Physics2D.Raycast(new Vector2(mousePos.x, mousePos.y), Vector3.zero)) { if (hit2D.collider.CompareTag("Interactable")) { m_tempObj = hit2D.collider.GetComponent <InteractableTrigger>(); if (m_tempObj != null) { m_tempObj.OnTriggerDown(); } else { Debug.LogWarning("No InteractableTriggerScript found!"); } } } else if (Physics.Raycast(ray, out hit, m_castDistance, m_layerMask)) { Debug.DrawLine(ray.origin, hit.point, Color.red, 100f); if (hit.collider.CompareTag("Interactable")) { m_tempObj = hit.collider.GetComponent <InteractableTrigger>(); if (m_tempObj != null) { m_tempObj.OnTriggerDown(); } else { Debug.LogWarning("No InteractableTriggerScript found!"); } } } }