public override void HideResponses()
    {
        conversationUIElements.defaultMenuPanel.pcImage = null;
        base.HideResponses();
        if (lastSelectedDialogueButton)
        {
            lastSelectedDialogueButton.Deselect();
            lastSelectedDialogueButton = null;
        }

        scan = false;
    }
    public override void Update()
    {
        base.Update();
        if (scan)
        {
            var hit = AbstractMainMenu.Instance.CurrentUIHit();
            if (hit)
            {
                var dialogueFillingButton = hit.GetComponentInParent <DialogueFillingButton>();
                if (dialogueFillingButton)
                {
                    if (dialogueFillingButton != lastSelectedDialogueButton)
                    {
                        if (lastSelectedDialogueButton)
                        {
                            lastSelectedDialogueButton.Deselect();
                        }

                        lastSelectedDialogueButton = dialogueFillingButton;
                        lastSelectedDialogueButton.Select();
                    }

                    if (Input.GetMouseButtonDown(0))
                    {
                        dialogueFillingButton.Click();
                    }
                }
            }

            for (var i = 1; i <= currentButtons.Count; i++)
            {
                if (Input.GetKeyDown(i.ToString()))
                {
                    if (lastSelectedDialogueButton)
                    {
                        lastSelectedDialogueButton.Deselect();
                    }

                    lastSelectedDialogueButton = currentButtons[i - 1];
                    lastSelectedDialogueButton.Select();
                    break;
                }
            }
        }
    }