Exemple #1
0
        public void SetupLoop(HeatLoop lp, ModuleSystemHeat sh, bool visible)
        {
            SetupComponents();
            loop       = lp;
            heatModule = sh;
            // Utils.Log($"{loop} {heatModule}, {colorRing}, {infoPanelTitle}");
            infoPanelTitle.text = heatModule.part.partInfo.title;
            colorRing.color     = SystemHeatSettings.GetLoopColor(loop.ID);
            Transform xform = transform.FindDeepChild(heatModule.iconName);

            if (xform != null)
            {
                systemIcon.sprite = xform.GetComponent <Image>().sprite;
            }
            SetVisibility(visible);
        }
Exemple #2
0
        public void SetLoop(int loopID)
        {
            if (rect == null)
            {
                FindComponents();
            }

            trackedLoopID = loopID;
            if (simulator != null)
            {
                overlayToggleText.text     = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopTitle", trackedLoopID.ToString());
                swatch.color               = SystemHeatSettings.GetLoopColor(trackedLoopID);
                fluxTextHeader.text        = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopFluxTitle");
                temperatureTextHeader.text = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopTemperatureTitle");
            }
        }
Exemple #3
0
        public void SetLoop(int loopID)
        {
            if (rect == null)
            {
                FindComponents();
            }

            trackedLoopID = loopID;
            if (simulator != null)
            {
                //overlayToggle.SetIsOnWithoutNotify(SystemHeatOverlay.Instance.CheckLoopVisibility(trackedLoopID));
                overlayToggleText.text     = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopTitle", trackedLoopID.ToString());
                swatch.color               = SystemHeatSettings.GetLoopColor(trackedLoopID);
                fluxTextHeader.text        = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopFluxTitle");
                temperatureTextHeader.text = Localizer.Format("#LOC_SystemHeat_ToolbarPanel_LoopTemperatureTitle");
            }
        }
Exemple #4
0
        public void UpdateLoop(HeatLoop lp, ModuleSystemHeat sh, bool visible)
        {
            loop       = lp;
            heatModule = sh;
            Transform xform;

            if (heatModule != null && heatModule.part != null)
            {
                infoPanelTitle.text = heatModule.part.partInfo.title;
                xform = transform.FindDeepChild(heatModule.iconName);

                if (xform != null)
                {
                    systemIcon.sprite = xform.GetComponent <Image>().sprite;
                }
            }

            colorRing.color = SystemHeatSettings.GetLoopColor(loop.ID);

            SetVisibility(visible);
        }
Exemple #5
0
        public OverlayLine(Transform parent, int id)
        {
            Utils.Log($"[OverlayLine]: building line for loop ID {id}");



            if (HighLogic.LoadedSceneIsEditor)
            {
                VectorLine.SetCamera3D(EditorLogic.fetch.editorCamera);
            }

            if (HighLogic.LoadedSceneIsFlight)
            {
                VectorLine.SetCamera3D(FlightCamera.fetch.mainCamera);
            }
            line                      = new VectorLine($"SystemHeat_Loop{id}_VectorLine", new List <Vector3>(), SystemHeatSettings.OverlayBaseLineWidth, LineType.Continuous, Joins.Weld);
            line.layer                = 0;
            line.material             = new Material(Shader.Find("GUI/Text Shader"));
            line.material.renderQueue = 3000;

            lineColor = SystemHeatSettings.GetLoopColor(id);
        }
Exemple #6
0
 public void UpdateColor(int id)
 {
     lineColor = SystemHeatSettings.GetLoopColor(id);
 }