protected override void Show()
 {
     if (TryGetTooltip(out string content, out string header))
     {
         _tooltipManager.ShowTooltip(KaynirTools.GetPointerRawPosition(),
                                     content,
                                     header);
     }
 }
 protected override void Show()
 {
     if (_tooltipHandler != null)
     {
         if (_tooltipHandler.OnTooltipRequest(out string content, out string header))
         {
             _tooltipManager.ShowTooltip(KaynirTools.GetPointerRawPosition(),
                                         content,
                                         header);
         }
     }
 }
    protected override void Show()
    {
        if (_tooltipContentText.IsEmpty)
        {
            return;
        }

        string content = _tooltipContentText.GetLocalizedString().Result;

        if (!string.IsNullOrEmpty(content))
        {
            string header = null;

            if (!_tooltipHeaderText.IsEmpty)
            {
                header = _tooltipHeaderText.GetLocalizedString().Result;
            }

            _tooltipManager.ShowTooltip(KaynirTools.GetPointerRawPosition(),
                                        content,
                                        header);
        }
    }
Esempio n. 4
0
    public void ConsumeMatchingGemstones()
    {
        if (_matchingGemstones.Count >= _minGemstonesForConsume)
        {
            _changedColumns.Clear();
            float energyGain = 0f;

            foreach (Gemstone gem in _matchingGemstones)
            {
                energyGain += gem.GemstoneSO.EnergyGainValue;
                HandleGemstoneDisposal(gem);
            }

            UpdateEmptySlotsInColumns();

            PlayerCharacter.Active.Stats.ChangeSpirit(energyGain);

            CreateSpiritTextPopup(energyGain.ToString(),
                                  KaynirTools.GetPointerWorldPosition());
        }

        ClearGemSelection();
    }
    private bool TryGetTooltip(out string content, out string header)
    {
        int linkIndex = TMP_TextUtilities.FindIntersectingLink(_linkedTextField,
                                                               KaynirTools.GetPointerRawPosition(),
                                                               null);

        if (linkIndex >= 0)
        {
            TMP_LinkInfo linkInfo = _linkedTextField.textInfo.linkInfo[linkIndex];
            int          localeID = GameMaster.Instance.GameSettings.CurrentLanguageID;

            content = _tooltipTables[localeID].GetEntry(linkInfo.GetLinkID())
                      .GetLocalizedString();
            header = linkInfo.GetLinkText();

            return(true);
        }
        else
        {
            content = null;
            header  = null;
            return(false);
        }
    }