コード例 #1
0
        public static RelatedNodeHighlightSet FixHighlight(ResearchNode node)
        {
            var instance = new RelatedNodeHighlightSet(
                node, Highlighting.Reason.FixedPrimary,
                Highlighting.Reason.FixedSecondary);

            instance._relatedNodes = RelatedNodes(node);
            return(instance);
        }
コード例 #2
0
        public static RelatedNodeHighlightSet HoverOn(ResearchNode node)
        {
            var instance = new RelatedNodeHighlightSet(
                node, Highlighting.Reason.HoverPrimary,
                Highlighting.Reason.HoverSecondary);

            instance._relatedNodes = RelatedNodes(node);
            return(instance);
        }
コード例 #3
0
ファイル: Tree.cs プロジェクト: jptrrs/RimWorld-ResearchPal
 static bool ContinueHoverHighlight(Vector2 mouse)
 {
     if (hoverHighlightSet == null)
     {
         return(false);
     }
     if (hoverHighlightSet.TryStop(mouse))
     {
         hoverHighlightSet = null;
         return(false);
     }
     return(true);
 }
コード例 #4
0
ファイル: Tree.cs プロジェクト: jptrrs/RimWorld-ResearchPal
        public static void HandleFixedHighlight(ResearchNode node)
        {
            var i = fixedHighlightSets.FirstIndexOf(s => s.Causer() == node);

            if (i < fixedHighlightSets.Count())
            {
                fixedHighlightSets[i].Stop();
                fixedHighlightSets.RemoveAt(i);
            }
            else
            {
                var hl = RelatedNodeHighlightSet.FixHighlight(node);
                hl.Start();
                if (!Event.current.shift)
                {
                    StopFixedHighlights();
                }
                fixedHighlightSets.Add(hl);
            }
        }
コード例 #5
0
ファイル: Tree.cs プロジェクト: jptrrs/RimWorld-ResearchPal
 static void OverrideHighlight(ResearchNode node)
 {
     hoverHighlightSet?.Stop();
     hoverHighlightSet = RelatedNodeHighlightSet.HoverOn(node);
     hoverHighlightSet.Start();
 }