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))); }
public void OnPointerExit(PointerEventData eventData) { if (context == TooltipContext.UI) { SetTooltipVisibility(false); context = TooltipContext.NONE; } }
public void OnPointerEnter(PointerEventData eventData) { if (context == TooltipContext.NONE) { context = TooltipContext.UI; SetTooltipVisibility(true); } }
public void OnMouseExit() { if (context == TooltipContext.NOT_UI) { SetTooltipVisibility(false); context = TooltipContext.NONE; } }
public void OnMouseEnter() { if (context == TooltipContext.NONE) { context = TooltipContext.NOT_UI; SetTooltipVisibility(true); } }
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())); }