public void Modify(TooltipSlot slot, Vector3[] corners)
        {
            slot.SelfRect.pivot             = pivot;
            slot.SelfRect.anchoredPosition += anghoredPosition;
            slot.LayoutGroup.childAlignment = alignment;

            Vector3 worldPosition = Vector3.zero;
            int     cornerCount   = 0;

            for (int i = 0; i < worldCornerIndexes.Length; i++)
            {
                if (worldCornerIndexes[i] < corners.Length)
                {
                    worldPosition += corners[worldCornerIndexes[i]];
                    cornerCount++;
                }
            }

            if (cornerCount == 0)
            {
                worldPosition = (corners[1] + corners[3]) / 2;
            }
            else
            {
                worldPosition /= cornerCount;
            }

            slot.SelfRect.position = worldPosition;
        }
Exemple #2
0
        private void Show(TooltipSlot newTooltip, RectTransform targetRect, TooltipAlignment alignment, TooltipSize size)
        {
            currentTooltip = newTooltip;
            targetRect.GetWorldCorners(Corners);

            tooltipSizeSettings.Value(size).Modify(newTooltip);
            tooltipAlignmentSettings.Value(alignment).Modify(newTooltip, Corners);

            TooltipSpell.Slot.Show(targetRect);
        }
 public void Modify(TooltipSlot slot)
 {
     slot.LayoutElement.flexibleWidth  = flexibleWidth;
     slot.LayoutElement.preferredWidth = preferredWidth;
 }
Exemple #4
0
 public void Hide()
 {
     currentTooltip?.Hide();
     currentTooltip = null;
 }