From 8b1fc7063b387542803c6bc214ccf8acb32870bd Mon Sep 17 00:00:00 2001 From: chai <215380520@qq.com> Date: Sun, 19 May 2024 16:46:27 +0800 Subject: * rename --- Thronefall_1_0/Decompile/Tooltip.cs | 63 +++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Thronefall_1_0/Decompile/Tooltip.cs (limited to 'Thronefall_1_0/Decompile/Tooltip.cs') diff --git a/Thronefall_1_0/Decompile/Tooltip.cs b/Thronefall_1_0/Decompile/Tooltip.cs new file mode 100644 index 0000000..86091f7 --- /dev/null +++ b/Thronefall_1_0/Decompile/Tooltip.cs @@ -0,0 +1,63 @@ +using MoreMountains.Feedbacks; +using TMPro; +using UnityEngine; +using UnityEngine.UI; + +public class Tooltip : MonoBehaviour +{ + [SerializeField] + private TextMeshProUGUI content; + + [SerializeField] + private RectTransform targetRect; + + [SerializeField] + private MMF_Player onOpen; + + [SerializeField] + private MMF_Player onClose; + + [SerializeField] + private MMF_Player onUpdate; + + public string currentText => content.text; + + private void Awake() + { + base.transform.localScale = Vector3.zero; + content.text = ""; + } + + public void SetTooltip(string tooltipTxt) + { + if (tooltipTxt == content.text) + { + return; + } + onOpen.StopFeedbacks(); + onClose.StopFeedbacks(); + onUpdate.StopFeedbacks(); + content.text = tooltipTxt; + if (tooltipTxt == "") + { + onClose.PlayFeedbacks(); + return; + } + if (content.text == "") + { + onOpen.PlayFeedbacks(); + } + else + { + onUpdate.PlayFeedbacks(); + } + UpdateSize(); + } + + private void UpdateSize() + { + RectTransform component = GetComponent(); + LayoutRebuilder.ForceRebuildLayoutImmediate(targetRect); + component.sizeDelta = targetRect.sizeDelta; + } +} -- cgit v1.1-26-g67d0