private void CheckInteraction()
    {
        interactText.gameObject.SetActive(false);

        if (Physics.Raycast(playerCamera.transform.position, playerCamera.transform.forward, out RaycastHit hit, interactRange, raycastLayerMask))
        {
            Interactable subject = hit.collider.gameObject.GetComponent <Interactable>();
            if (subject != null && subject.IsInteractable())
            {
                interactText.gameObject.SetActive(true);
                interactText.text = subject.GetInteractionPrompt();

                if (m_InputHandler.GetInteractDown())
                {
                    subject.Interact(this);
                }
            }
        }
    }