예제 #1
0
        private void PositionTest(uGUI mainGUI, Transform canvTrans)
        {
            GameObject obj2 = new GameObject("SubnauticaMiniMap.Overlay2");
            var        img2 = obj2.AddComponent <RawImage>();

            img2.color = new Color(1.0f, 1.0f, 0.0f);
            objs.Add(obj2);
            var rto2 = obj2.GetComponent <RectTransform>();

            if (rto2 != null)
            {
                printOnce("c9");
            }
            rto2.localScale = new Vector3(2.0f, 0.5f, 1.0f);
            var mcanv = mainGUI.screenCanvas;

            if (mcanv != null)
            {
                var mcanv2 = mcanv.GetComponent <Transform>();
                if (mcanv2 != null)
                {
                    rto2.SetParent(mcanv2);
                }
            }

            GameObject obj3 = new GameObject("SubnauticaMiniMap.Overlay3");
            var        img3 = obj3.AddComponent <RawImage>();

            img3.color = new Color(0.0f, 1.0f, 0.0f);
            objs.Add(obj3);
            var rto3 = obj3.GetComponent <RectTransform>();

            //var to2 = obj2.GetComponent<Transform>();
            if (rto3 != null)
            {
                printOnce("c10");
            }
            //var to3 = obj3.GetComponent<Transform>();
            rto3.SetParent(canvTrans);
            rto3.position  += new Vector3(0, 0, 0.1f);
            rto3.localScale = new Vector3(0.001f, 0.001f, 1.0f);


            GameObject obj4 = new GameObject("SubnauticaMiniMap.Overlay4");
            var        img4 = obj4.AddComponent <UnityEngine.UI.RawImage>();

            img4.color = new Color(0.0f, 1.0f, 1.0f);
            objs.Add(obj4);
            var rto4 = obj4.GetComponent <RectTransform>();

            rto4.SetParent(canvTrans);
            rto4.localScale = new Vector3(0.1f, 0.1f, 0.1f);
            rto4.position   = new Vector3(1.0f, 0.0f, 0.0f);
            //rto4.anchorMax = new Vector2(Screen.width / 4, Screen.height / 4);
            //rto4.anchorMin = new Vector2(0, 0);
            rto4.position += new Vector3(0, 0, 0.1f);
        }
예제 #2
0
 static void Postfix(uGUI __instance)
 {
     maybeCreateLoadingCanvas();
     if (isLoading() && hasLoadingScreen(__instance))
     {
         GameObject loadingScreen = __instance.loading.gameObject;
         loadingScreen.transform.SetParent(loadingCanvas.GetComponent <RectTransform>());
         loadingScreen.GetComponent <RectTransform>().position =
             MainCamera.camera.gameObject.transform.parent.position + MainCamera.camera.gameObject.transform.parent.forward * 3f;
         loadingScreen.GetComponent <RectTransform>().LookAt(MainCamera.camera.gameObject.transform.parent);
         loadingScreen.GetComponent <RectTransform>().Rotate(0f, 180f, 0f);
     }
 }
예제 #3
0
 private static bool hasLoadingScreen(uGUI instance)
 {
     return(instance.loading != null && instance.loading.gameObject != null);
 }