Exemplo n.º 1
0
        public TooltipSection MinablesTooltip(TooltipContext context)
        {
            var myHardness        = this.Tier.GetCurrentValue(context.Player.User);
            var minableBlockTypes = Block.BlockTypesWithAttribute(typeof(Minable)).Select(x => new KeyValuePair <Type, float>(x, Block.Get <Minable>(x).Hardness)).ToList();

            if (!minableBlockTypes.Any())
            {
                return(null);
            }

            var allBlocks = AllItems.OfType <BlockItem>();

            var resList = new List <LocString>();

            minableBlockTypes.OrderBy(item => item.Value).ForEach(x =>
            {
                var targetItem = allBlocks.FirstOrDefault(item => item.OriginType == x.Key);
                var hitCount   = (int)Math.Ceiling(x.Value / myHardness);
                if (targetItem != null)
                {
                    resList.Add(Localizer.Do($"{Localizer.Do($"{targetItem.UILink()}: {hitCount}")} {Localizer.Plural("hit", hitCount)}"));
                }
            });

            return(new TooltipSection(Localizer.DoStr("Can mine"), resList.FoldoutListLoc("item", context.Origin)));
        }
Exemplo n.º 2
0
 public void OnPointerExit(PointerEventData eventData)
 {
     if (context == TooltipContext.UI)
     {
         SetTooltipVisibility(false);
         context = TooltipContext.NONE;
     }
 }
Exemplo n.º 3
0
 public void OnPointerEnter(PointerEventData eventData)
 {
     if (context == TooltipContext.NONE)
     {
         context = TooltipContext.UI;
         SetTooltipVisibility(true);
     }
 }
Exemplo n.º 4
0
 public void OnMouseExit()
 {
     if (context == TooltipContext.NOT_UI)
     {
         SetTooltipVisibility(false);
         context = TooltipContext.NONE;
     }
 }
Exemplo n.º 5
0
 public void OnMouseEnter()
 {
     if (context == TooltipContext.NONE)
     {
         context = TooltipContext.NOT_UI;
         SetTooltipVisibility(true);
     }
 }
Exemplo n.º 6
0
    public TooltipSection ControllsTooltip(TooltipContext context)
    {
        var res = new StringBuilder();

        res.AppendLine(Localizer.DoStr("Can smite any block or world object."));
        res.AppendLine(Localizer.DoStr("Can be used as a hammer to place infinite amount of blocks."));
        res.AppendLine(Localizer.DoStr("Can ignore auth for different actions (storage, vehicles, blocks)."));
        res.AppendLine(Localizer.DoStr("Can copy world block to carried slot with \"E\", hold \"Ctrl\" to add whole stack."));

        return(new TooltipSection(Localizer.DoStr("Special Actions"), res.ToStringLoc()));
    }