void OnGUI()
 {
     if (GameMain.instance != null && GameMain.mainPlayer != null)
     {
         if (dysonPanel == null)
         {
             dysonPanel = GameObject.FindObjectOfType <UIDysonPanel>();
         }
         if (dysonPanel != null && dysonPanel.active)
         {
             GUI.skin = DSPSkin;
             if (GUI.Button(startButtonRect, "蓝图"))
             {
                 Show = !Show;
             }
             if (Show)
             {
                 winRect = GUILayout.Window(666, winRect, WindowFunc, "");
             }
         }
         else
         {
             Show = false;
         }
     }
 }
Example #2
0
 static void DspShow(UIDysonPanel __instance)
 {
     viewDsp = __instance.viewDysonSphere;
     if (viewDsp != null)
     {
         for (int i = 0; i < viewDsp.layersIdBased.Length; i++)
         {
             tempDsp[i] = null;
         }
         isShow = true;
     }
 }
 private void Update()
 {
     if (GameMain.instance != null && GameMain.mainPlayer != null)
     {
         if (dysonPanel == null)
         {
             dysonPanel = GameObject.FindObjectOfType <UIDysonPanel>();
         }
         if (dysonPanel != null && dysonPanel.active)
         {
             if (dsyonEditorTop == null)
             {
                 dsyonEditorTop = UIRoot.instance.transform.Find("Always on Top/Overlay Canvas - Top/Dyson Editor Top") as RectTransform;
             }
             if (BPUI == null)
             {
                 if (dsyonEditorTop != null)
                 {
                     BPUI               = GameObject.Instantiate(UIPrefab, dsyonEditorTop).transform as RectTransform;
                     BPUI.anchorMin     = new Vector2(0, 1);
                     BPUI.anchorMax     = new Vector2(0, 1);
                     BPUI.localPosition = targetPos;
                     openBtn            = BPUI.Find("BPOpenBtn").GetComponent <Button>();
                     openBtn.onClick.AddListener(OnOpenButtonClick);
                     BPPanel = BPUI.Find("BPPanel") as RectTransform;
                     saveBtn = BPPanel.Find("SaveBtn").GetComponent <Button>();
                     saveBtn.onClick.AddListener(OnSaveButtonClick);
                     fileNameInput = BPPanel.Find("InputField").GetComponent <InputField>();
                     contentRT     = BPPanel.Find("Scroll View/Viewport/Content").transform as RectTransform;
                     VLG           = contentRT.GetComponent <VerticalLayoutGroup>();
                     BPPanel.gameObject.SetActive(false);
                 }
             }
             else
             {
                 if (BPUI.localPosition != targetPos)
                 {
                     BPUI.localPosition = targetPos;
                 }
             }
         }
     }
 }
Example #4
0
            public static void UIDysonPanel_OnUpdate_Postfix(UIDysonPanel __instance)
            {
                if (cellValue != null)
                {
                    var dysonSphere = __instance.viewDysonSphere;
                    if (dysonSphere != null)
                    {
                        // Structure Progress
                        structValue.GetComponentInChildren <Text>().text = $"{dysonSphere.totalConstructedPoint} / {dysonSphere.totalStructurePoint}";

                        // Cell Progress
                        int totalCp = 0, cpOrdered = 0, totalCpMax = 0;
                        for (int i = 1; i < dysonSphere.layersIdBased.Length; i++)
                        {
                            if (dysonSphere.layersIdBased[i] != null && dysonSphere.layersIdBased[i].id == i)
                            {
                                for (int j = 1; j < dysonSphere.layersIdBased[i].nodeCursor; j++)
                                {
                                    DysonNode dysonNode = dysonSphere.layersIdBased[i].nodePool[j];
                                    if (dysonNode != null && dysonNode.id == j)
                                    {
                                        totalCp    += dysonNode.totalCp;
                                        cpOrdered  += dysonNode.cpOrdered;
                                        totalCpMax += dysonNode.totalCpMax;
                                    }
                                }
                            }
                        }
                        cellValue.GetComponentInChildren <Text>().text = $"{totalCp}/{cpOrdered}/{totalCpMax}";
                    }
                    else
                    {
                        structValue.GetComponentInChildren <Text>().text = "-";
                        cellValue.GetComponentInChildren <Text>().text   = "-";
                    }
                }
            }
Example #5
0
 static void DspShow(UIDysonPanel __instance)
 {
     isShow = true;
 }