コード例 #1
0
        private void Start()
        {
            if (canvas != null)
            {
                return;
            }

            canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            GameObject go =
                CanvasUtil.CreateTextPanel(canvas, "", 70, TextAnchor.UpperRight,
                                           new CanvasUtil.RectData(
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(0.95f, 0.95f),
                                               new Vector2(0.5f, 0.5f)));


            textObj          = go.GetComponent <Text>();
            textObj.color    = Color.black;
            textObj.font     = CanvasUtil.TrajanBold;
            textObj.text     = "Lightbringer\nT-" + getTimeInCleanFormat(timeRemaining);
            textObj.fontSize = 90;
            textObj.CrossFadeAlpha(1f, 0f, false);
        }
コード例 #2
0
        public void CreateCanvas()
        {
            if (_canvas != null)
            {
                return;
            }

            CanvasUtil.CreateFonts();
            _canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            UnityEngine.Object.DontDestroyOnLoad(_canvas);

            GameObject canvas = CanvasUtil.CreateTextPanel
                                (
                _canvas,
                "",
                24,
                TextAnchor.LowerRight,
                new CanvasUtil.RectData
                (
                    new Vector2(0, 50),
                    new Vector2(0, 45),
                    new Vector2(0, 0),
                    new Vector2(1, 0),
                    new Vector2(0.5f, 0.5f)
                )
                                );

            _textObj          = canvas.GetComponent <Text>();
            _textObj.font     = CanvasUtil.TrajanBold;
            _textObj.text     = "";
            _textObj.fontSize = 24;
        }
コード例 #3
0
        private void makeModCanvas(int ad)
        {
            if (canvas != null)
            {
                return;
            }

            CanvasUtil.CreateFonts();
            canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            GameObject go =
                CanvasUtil.CreateTextPanel(canvas, "", 27, TextAnchor.UpperCenter,
                                           new CanvasUtil.RectData(
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               generateNonAnnoyingLocation(),
                                               new Vector2(0.5f, 0.5f)));


            textObj          = go.GetComponent <Text>();
            textObj.color    = ads[ad].textColor;
            textObj.font     = CanvasUtil.TrajanBold;
            textObj.text     = "";
            textObj.fontSize = 50;
            textObj.text     = ads[ad].textDescription;
            textObj.CrossFadeAlpha(1f, 0f, false);
        }
コード例 #4
0
        private IEnumerator displayEnemyLevel(int level, Color c)
        {
            yield return(new WaitForSeconds(2f));

            CanvasUtil.CreateFonts();
            GameObject canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            GameObject go     =
                CanvasUtil.CreateTextPanel(canvas, "", 130, TextAnchor.UpperCenter,
                                           new CanvasUtil.RectData(
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(1.0f, 0.7f),
                                               new Vector2(0.5f, 0.5f)));


            Text textObj = go.GetComponent <Text>();

            textObj.color    = c;
            textObj.font     = CanvasUtil.TrajanBold;
            textObj.text     = "";
            textObj.fontSize = 170;
            textObj.text     = "Level " + level;
            textObj.CrossFadeAlpha(1f, 1f, false);

            yield return(new WaitForSeconds(3f));

            textObj.CrossFadeAlpha(0f, 3f, false);

            yield return(new WaitForSeconds(3.5f));

            Destroy(go);
            Destroy(canvas);
        }
コード例 #5
0
        private Vector2 fixMousePosition(RectTransform r)
        {
            bool    b;
            Vector2 pos = CanvasUtil.ScreenToUISpacePos(Input.mousePosition, DialogCanvasUtil.DialogCanvasRect, out b);

            return(new Vector2(pos.x - r.rect.width, pos.y + r.rect.height));
        }
コード例 #6
0
        private void MakeCanvas()
        {
            if (CanvasObject == null)
            {
                CanvasObject = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920f, 1080f));
            }

            if (TextCanvas == null)
            {
                CanvasUtil.CreateFonts();
                TextCanvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920f, 1080f));
                GameObject TextPanel = CanvasUtil.CreateTextPanel(TextCanvas, "", 35, TextAnchor.MiddleCenter,
                                                                  new CanvasUtil.RectData(
                                                                      new Vector2(0, 50),
                                                                      new Vector2(0, 45),
                                                                      new Vector2(0, 0),
                                                                      new Vector2(1, 0),
                                                                      new Vector2(0.5f, 0.5f)));
                TextObject          = TextPanel.GetComponent <Text>();
                TextObject.font     = CanvasUtil.TrajanBold;
                TextObject.text     = "";
                TextObject.fontSize = 50;
                TextObject.color    = Color.red;
            }
        }
コード例 #7
0
        private void Start()
        {
            timeRemaining = (float)infinite_globals.secondsToRun;

            if (canvas != null)
            {
                return;
            }

            CanvasUtil.CreateFonts();
            canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            GameObject go =
                CanvasUtil.CreateTextPanel(canvas, "", 27, TextAnchor.MiddleCenter,
                                           new CanvasUtil.RectData(
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(0, 0),
                                               new Vector2(1.9f, 1.9f),
                                               new Vector2(0.5f, 0.5f)));


            textObj          = go.GetComponent <Text>();
            textObj.color    = Color.white;
            textObj.font     = CanvasUtil.TrajanBold;
            textObj.text     = getTimeInCleanFormat((float)infinite_globals.secondsToRun);
            textObj.fontSize = 50;
            textObj.CrossFadeAlpha(1f, 0f, false);
        }
コード例 #8
0
        public void SetupCanvasIcon()
        {
            Vector2    anchor       = new Vector2(x, y);
            GameObject canvasSprite = CanvasUtil.CreateImagePanel
                                      (
                _canvas,
                SpriteLoader.GetSprite(spriteName),
                new CanvasUtil.RectData(Vector2.zero, Vector2.zero, anchor, anchor + new Vector2(1f / 15f, 0.1f))
                                      );

            // Add a canvas group so we can fade it in and out
            canvasGroup = canvasSprite.AddComponent <CanvasGroup>();
            canvasGroup.blocksRaycasts = false;
            canvasGroup.interactable   = false;
            if (!BingoUI.globalSettings.alwaysDisplay)
            {
                canvasGroup.gameObject.SetActive(false);
            }

            GameObject text = CanvasUtil.CreateTextPanel
                              (
                canvasSprite,
                "0",
                23,
                TextAnchor.LowerCenter,
                new CanvasUtil.RectData(Vector2.zero, Vector2.zero, Vector2.zero, Vector2.one)
                              );

            textPanel       = text.GetComponent <Text>();
            textPanel.color = Color.black;
        }
コード例 #9
0
ファイル: IGTHud.cs プロジェクト: SpectralPlatypus/Pepperoni
        public void Awake()
        {
            gameEnd     = false;
            stopped     = true;
            textToggle  = true;
            _remastered = DebugManager.remastered;
            lastCostume = null;

            var ar = AspectRatio.GetAspectRatio(Screen.width, Screen.height);

            if (ar.x == 16f && ar.y == 9f)
            {
                wideAspect = true;
            }
            Logger.LogDebug($"Wide Aspect: {wideAspect}");

            DontDestroyOnLoad(gameObject);
            if (OverlayCanvas == null)
            {
                CanvasUtil.CreateFonts();
                OverlayCanvas      = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
                OverlayCanvas.name = "IGTDisplay";
                DontDestroyOnLoad(OverlayCanvas);

                _background = CanvasUtil.CreateImagePanel(OverlayCanvas, new Color32(0x28, 0x28, 0x28, 0x00),
                                                          wideAspect ? topRightLegacy : topRightHD);
                _textPanel = CanvasUtil.CreateTMProPanel(_background, string.Empty, 24,
                                                         TextAnchor.UpperLeft,
                                                         new CanvasUtil.RectData(new Vector2(-5, -5), new Vector2(0, 0), new Vector2(0, 0), new Vector2(1, 1)));

                tmProObjRef           = _textPanel.GetComponent <TextMeshProUGUI>();
                tmProObjRef.alignment = TextAlignmentOptions.TopRight;
            }
        }
コード例 #10
0
        public override void Initialize()
        {
            if (Instance != null)
            {
                Log("Warning: " + GetType().Name + " is a singleton. Trying to create more than one may cause issues!");
                return;
            }

            Instance = this;
            comms    = new CommunicationNode();
            comms.EnableNode(this);

            Log("Mod Common initializing!");

            SetupDefaulSettings();

            RegisterCallbacks();

            DevLog.Logger.Hide();

            // Setup and prepare the CanvasUtil fonts so that other mods can use them.
            CanvasUtil.CreateFonts();

            Log("Mod Common is done initializing!");
        }
コード例 #11
0
        public IEnumerator ShowAlert(string text)
        {
            var canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, 100);
            var tp     = CanvasUtil.CreateTextPanel(
                canvas,
                text,
                20,
                TextAnchor.LowerRight,
                new CanvasUtil.RectData(
                    new Vector2(1920, 80),
                    new Vector2(-40, 40),
                    new Vector2(1, 0),
                    new Vector2(1, 0),
                    new Vector2(1, 0)
                    )
                );

            GameObject.DontDestroyOnLoad(canvas);
            var cg = tp.AddComponent <CanvasGroup>();

            yield return(CanvasUtil.FadeInCanvasGroup(cg));

            yield return(new WaitForSeconds(3f));

            yield return(CanvasUtil.FadeOutCanvasGroup(cg));

            GameObject.DestroyImmediate(canvas);
        }
コード例 #12
0
        public void EnableRedwing()
        {
            _isEnabled = true;
            textures.loadAllTextures();
            ModHooks.Instance.FocusCostHook       += InstanceOnFocusCostHook;
            ModHooks.Instance.BeforeAddHealthHook += InstanceOnBeforeAddHealthHook;
            ModHooks.Instance.AttackHook          += InstanceOnAttackHook;
            ModHooks.Instance.CharmUpdateHook     += RedwingLance;
            ModHooks.Instance.DashPressedHook     += NoDashWhileHoldingUp;
            On.HeroController.JumpReleased        += NoVelocityResetOnReleaseWithJetpack;
            On.NailSlash.StartSlash             += NailSlashOnStartSlash;
            ModCommon.ModCommon.OnSpellHook     += OverwriteSpells;
            On.HeroController.CancelHeroJump    += DontCancelWithJetpack;
            On.HeroController.AffectedByGravity += AffectedByGravityIsShit;
            On.HeroController.Jump += RocketJumpIfRocketJumping;

            canvasObj = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920f, 1080f));
            FireBar   = CanvasUtil.CreateImagePanel(canvasObj,
                                                    Sprite.Create(Texture2D.whiteTexture, new Rect(0, 0, 1, 1), new Vector2(0.5f, 0.5f)),
                                                    new CanvasUtil.RectData(new Vector2(300f, 100f), new Vector2(0.9f, 0.9f),
                                                                            new Vector2(0.910f, 0.89f), new Vector2(0.910f, 0.89f)));
            DontDestroyOnLoad(canvasObj);
            DontDestroyOnLoad(FireBar);

            FireBarImage = FireBar.GetComponent <Image>();

            FireBarImage.preserveAspect = false;
            FireBarImage.type           = Image.Type.Filled;
            FireBarImage.fillMethod     = Image.FillMethod.Horizontal;
            FireBarImage.fillAmount     = (float)firePower;
            StartCoroutine(AddHeroHooks());
        }
コード例 #13
0
        public void ShowAlert(string text)
        {
            if (this.displayedAlert != null)
            {
                this.displayedAlert.SetActive(false);
            }
            var canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, 100);
            var tp     = CanvasUtil.CreateTextPanel(
                canvas,
                text,
                20,
                TextAnchor.LowerRight,
                new CanvasUtil.RectData(
                    new Vector2(1920, 80),
                    new Vector2(-40, 40),
                    new Vector2(1, 0),
                    new Vector2(1, 0),
                    new Vector2(1, 0)
                    )
                );

            GameObject.DontDestroyOnLoad(canvas);
            var cg = tp.AddComponent <CanvasGroup>();

            this.displayedAlert = tp;
            this.StartCoroutine(this.AnimateAlert(cg, canvas));
        }
コード例 #14
0
 public IEnumerator HideMenu(MenuScreen menu)
 {
     gameManager.inputHandler.StopUIInput();
     if (menu.title != null)
     {
         StartCoroutine(CanvasUtil.FadeOutCanvasGroup(menu.title));
         yield return(StartCoroutine(gameManager.timeTool.TimeScaleIndependentWaitForSeconds(0.1f)));
     }
     if (menu.topFleur != null)
     {
         menu.topFleur.ResetTrigger("show");
         menu.topFleur.SetTrigger("hide");
         yield return(StartCoroutine(gameManager.timeTool.TimeScaleIndependentWaitForSeconds(0.1f)));
     }
     if (menu.content != null)
     {
         StartCoroutine(CanvasUtil.FadeOutCanvasGroup(menu.content));
     }
     if (menu.controls != null)
     {
         StartCoroutine(CanvasUtil.FadeOutCanvasGroup(menu.controls));
     }
     if (menu.bottomFleur != null)
     {
         menu.bottomFleur.ResetTrigger("show");
         menu.bottomFleur.SetTrigger("hide");
         yield return(StartCoroutine(_gm.timeTool.TimeScaleIndependentWaitForSeconds(0.1f)));
     }
     if (menu.screenCanvasGroup != null)
     {
         yield return(StartCoroutine(CanvasUtil.FadeOutCanvasGroup(menu.screenCanvasGroup)));
     }
     gameManager.inputHandler.StartUIInput();
 }
コード例 #15
0
        private void LoadResources()
        {
            CanvasUtil.CreateFonts();

            TrajanBold   = CanvasUtil.TrajanBold;
            TrajanNormal = CanvasUtil.TrajanNormal;

            try
            {
                Arial = Font.CreateDynamicFontFromOSFont
                        (
                    Font.GetOSInstalledFontNames().First(x => x.ToLower().Contains("arial")),
                    13
                        );
            }
            catch
            {
                Logger.LogWarn("Unable to find Arial! Using Perpetua.");
                Arial = CanvasUtil.GetFont("Perpetua");
            }

            if (TrajanBold == null || TrajanNormal == null || Arial == null)
            {
                Benchwarp.instance.LogError("Could not find game fonts");
            }

            Assembly asm = Assembly.GetExecutingAssembly();

            foreach (string res in asm.GetManifestResourceNames())
            {
                if (!res.StartsWith("Benchwarp.Images."))
                {
                    continue;
                }

                try
                {
                    using (Stream imageStream = asm.GetManifestResourceStream(res))
                    {
                        byte[] buffer = new byte[imageStream.Length];
                        imageStream.Read(buffer, 0, buffer.Length);

                        Texture2D tex = new Texture2D(1, 1);
                        tex.LoadImage(buffer.ToArray());

                        string[] split        = res.Split('.');
                        string   internalName = split[split.Length - 2];

                        images.Add(internalName, tex);

                        Benchwarp.instance.Log("Loaded image: " + internalName);
                    }
                }
                catch (Exception e)
                {
                    Benchwarp.instance.LogError("Failed to load image: " + res + "\n" + e);
                }
            }
        }
コード例 #16
0
 private void setupScoreCanvas()
 {
     menuCanvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920f, 1080f));
     CanvasUtil.CreateTextPanel(menuCanvas,
                                parseScoreResults(), 12,
                                TextAnchor.MiddleLeft, new CanvasUtil.RectData(new Vector2(400f, 150f),
                                                                               new Vector2(0.5f, 0.5f), new Vector2(0.98f, 0.05f), new Vector2(0.98f, 0.05f)));
 }
コード例 #17
0
 public override void Initialize()
 {
     instance  = this;
     bossCount = 0;
     ModHooks.Instance.SetPlayerBoolHook += CountBosses;
     canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
     GameObject.DontDestroyOnLoad(canvas);
     UpdateUI();
 }
コード例 #18
0
        public static void SetupCanvas()
        {
            _canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceCamera, new Vector2(1920, 1080));
            UnityEngine.Object.DontDestroyOnLoad(_canvas);

            GameObject go = new GameObject();

            _coroutineStarter = go.AddComponent <NonBouncer>();
            UnityEngine.Object.DontDestroyOnLoad(go);
        }
コード例 #19
0
        public Dictionary <Room, Canvas> LoadRooms()
        {
            Dictionary <Room, Canvas> dictionary = new Dictionary <Room, Canvas>();
            List <Room> rooms = RoomService.Instance.GetAll();

            foreach (Room room in rooms)
            {
                dictionary.Add(room, CanvasUtil.CreateRoomCanvas(room));
            }

            return(dictionary);
        }
コード例 #20
0
 private static void UpdateUI()
 {
     if (text == null)
     {
         text = CanvasUtil.CreateTextPanel(canvas, $"Bosses: {bossCount}", 24, TextAnchor.MiddleCenter,
                                           new CanvasUtil.RectData(new Vector2(180, 54), new Vector2(-900, -480)));
     }
     else
     {
         text.GetComponent <Text>().text = $"Bosses: {bossCount}";
     }
 }
コード例 #21
0
        public void Init()
        {
            this.DoubleBuffered = true;
            CommonEventHandler();
            _square        = CanvasUtil.GetPrimeSquare(this.Parent.Width, this.Parent.Height);
            _dSquare       = _square;
            this.BackColor = Color.White;
            InitRightClickMenu();
            InitPanTool();

            _deleteTool = new DeleteTool();
            _deleteTool.StopWorking();
        }
コード例 #22
0
        private void Update()
        {
            if (!Input.GetKeyDown(KeyCode.F9))
            {
                return;
            }

            StartCoroutine
            (
                Canvas.activeSelf
                    ? CanvasUtil.FadeOutCanvasGroup(_group)
                    : CanvasUtil.FadeInCanvasGroup(_group)
            );
        }
コード例 #23
0
ファイル: rebalanced_hooks.cs プロジェクト: natis1/redwing
        private void setupFlameGauge()
        {
            GameObject flameGaugeDisplay = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            GameObject flameGauge        = CanvasUtil.CreateImagePanel(flameGaugeDisplay,
                                                                       Sprite.Create(load_textures.SOUL_HOLDER[0],
                                                                                     new Rect(0, 0, load_textures.SOUL_HOLDER[0].width, load_textures.SOUL_HOLDER[0].height),
                                                                                     new Vector2(0.5f, 0.5f)), new CanvasUtil.RectData(
                                                                           new Vector2(0, 0),
                                                                           new Vector2(0, 0),
                                                                           new Vector2(0, 0),
                                                                           new Vector2(0.05f, 0.05f)));

            flameGaugeControl = flameGauge.AddComponent <flame_gauge>();
            GameCameras.instance.hudCanvas.PrintSceneHierarchyTree("hud.txt");
        }
コード例 #24
0
    public void Awake()
    {
        Logger.LogDebug($@"Creating HP Bar for {name}");

        // On.CameraController.FadeOut += CameraController_FadeOut;

        screenScale = new Vector2(Screen.width / 1280f * 0.025f, Screen.height / 720f * 0.025f);

        bg_go = CanvasUtil.CreateImagePanel(EnemyHPBar.canvas, EnemyHPBar.bg,
                                            new CanvasUtil.RectData(Vector2.Scale(new Vector2(EnemyHPBar.bg.texture.width, EnemyHPBar.bg.texture
                                                                                              .height), screenScale * bgScale), new Vector2(0,
                                                                                                                                            32)));
        mg_go = CanvasUtil.CreateImagePanel(EnemyHPBar.canvas, EnemyHPBar.mg,
                                            new CanvasUtil.RectData(Vector2.Scale(new Vector2(EnemyHPBar.mg.texture.width, EnemyHPBar.mg.texture
                                                                                              .height), screenScale * mgScale), new Vector2(0, 32)));
        fg_go = CanvasUtil.CreateImagePanel(EnemyHPBar.canvas, EnemyHPBar.fg,
                                            new CanvasUtil.RectData(Vector2.Scale(new Vector2(EnemyHPBar.fg.texture.width, EnemyHPBar.fg.texture
                                                                                              .height), screenScale * fgScale), new Vector2(0, 32)));
        ol_go = CanvasUtil.CreateImagePanel(EnemyHPBar.canvas, EnemyHPBar.ol,
                                            new CanvasUtil.RectData(Vector2.Scale(new Vector2(EnemyHPBar.ol.texture.width, EnemyHPBar.ol.texture
                                                                                              .height), screenScale * olScale), new Vector2(0, 32)));

        bg_cr = bg_go.GetComponent <CanvasRenderer>();
        fg_cr = fg_go.GetComponent <CanvasRenderer>();
        mg_cr = mg_go.GetComponent <CanvasRenderer>();
        ol_cr = ol_go.GetComponent <CanvasRenderer>();

        hpbg                = mg_go.GetComponent <Image>();
        hpbg.type           = Image.Type.Filled;
        hpbg.fillMethod     = Image.FillMethod.Horizontal;
        hpbg.preserveAspect = false;

        health_bar                = fg_go.GetComponent <Image>();
        health_bar.type           = Image.Type.Filled;
        health_bar.fillMethod     = Image.FillMethod.Horizontal;
        health_bar.preserveAspect = false;

        bg_go.GetComponent <Image>().preserveAspect = false;
        ol_go.GetComponent <Image>().preserveAspect = false;

        hm = gameObject.GetComponent <HealthManager>();

        SetHPBarAlpha(0);
        maxHP  = hm.hp;
        currHP = hm.hp;
    }
コード例 #25
0
ファイル: UIManager.cs プロジェクト: sidhub1/kinesis
        /// <summary>
        /// draw a circle (point) on both screens
        /// </summary>
        /// <param name="myLine"></param>
        /// <param name="stroke"></param>
        /// <param name="fill"></param>
        public static void Draw(Point2D myPoint, Brush stroke, Brush fill)
        {
            if (mainw != null)
            {
                Point2D myPoint1 = new Point2D(myPoint.X, myPoint.Y);

                myPoint1.X = myPoint.X + mainw.userCanvasWindow.canvas.Width / 2 - mainw.userCanvas.Width / 2;
                myPoint1.Y = myPoint.Y + mainw.userCanvasWindow.canvas.Height / 2 - mainw.userCanvas.Height / 2;
                CanvasUtil.DrawEllipse(mainw.userCanvasWindow.canvas, myPoint1.X, myPoint1.Y, 50, 50, stroke, fill, null, 5);

                Point2D myPoint2 = new Point2D(myPoint.X, myPoint.Y);
                myPoint2.X = myPoint1.X * mainw.presentationCanvasWindow.canvas.Width / mainw.userCanvasWindow.canvas.Width;
                myPoint2.Y = myPoint1.Y * mainw.presentationCanvasWindow.canvas.Height / mainw.userCanvasWindow.canvas.Height;

                CanvasUtil.DrawEllipse(mainw.presentationCanvasWindow.canvas, myPoint2.X, myPoint2.Y, 50, 50, stroke, fill, null, 5);
            }
        }
コード例 #26
0
        //TODO: Remove all these pointless functions, call BindableFunctions.whatever directly

        private static void HideMenuClicked(string buttonName)
        {
            Text text = CanvasUtil.CreateTextPanel(GUIController.Instance.canvas, "", 27, TextAnchor.MiddleCenter,
                                                   new CanvasUtil.RectData(
                                                       new Vector2(0, 50),
                                                       new Vector2(0, 45),
                                                       new Vector2(0, 0),
                                                       new Vector2(1, 0),
                                                       new Vector2(0.5f, 0.5f))).GetComponent <Text>();

            text.font     = CanvasUtil.TrajanBold;
            text.text     = $"Press {Enum.GetName(typeof(KeyCode), DebugMod.settings.binds["Toggle All UI"])} to unhide the menu!";
            text.fontSize = 42;
            text.CrossFadeAlpha(1f, 0f, false);
            text.CrossFadeAlpha(0f, 6f, false);
            BindableFunctions.ToggleAllPanels();
        }
コード例 #27
0
        public static GameObject Show(Sprite bigSprite, string takeKey, string nameKey, string buttonKey, string descOneKey, string descTwoKey, Action callback)
        {
            // Create base canvas
            GameObject canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));

            // Add popup component, set values
            BigItemPopup popup = canvas.AddComponent <BigItemPopup>();

            popup._imagePrompt = bigSprite;
            popup._takeText    = Language.Language.Get(takeKey, "Prompts").Replace("<br>", " ");
            popup._nameText    = Language.Language.Get(nameKey, "UI").Replace("<br>", " ");
            popup._buttonText  = Language.Language.Get(buttonKey, "Prompts").Replace("<br>", " ");
            popup._descOneText = Language.Language.Get(descOneKey, "Prompts").Replace("<br>", " ");
            popup._descTwoText = Language.Language.Get(descTwoKey, "Prompts").Replace("<br>", " ");
            popup._callback    = callback;

            return(canvas);
        }
コード例 #28
0
        public void Start()
        {
            CanvasUtil.CreateFonts();
            canvas = CanvasUtil.CreateCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
            UnityEngine.Object.DontDestroyOnLoad(canvas);
            caliber       = CanvasUtil.CreateTextPanel(canvas, "", 25, TextAnchor.MiddleLeft, new CanvasUtil.RectData(new Vector2(600, 50), new Vector2(-560, 805), new Vector2(0.5f, 0), new Vector2(0.5f, 0), new Vector2(0.5f, 0.5f)), true).GetComponent <Text>();
            caliber.color = new Color(0.420f, 0.420f, 0.420f, 1f);
            caliber.text  = "";

            ammo       = CanvasUtil.CreateTextPanel(canvas, "", 25, TextAnchor.MiddleLeft, new CanvasUtil.RectData(new Vector2(600, 50), new Vector2(-560, 775), new Vector2(0.5f, 0), new Vector2(0.5f, 0), new Vector2(0.5f, 0.5f)), true).GetComponent <Text>();
            ammo.color = new Color(0.420f, 0.420f, 0.420f, 1f);
            ammo.text  = "";

            magazine       = CanvasUtil.CreateTextPanel(canvas, "", 25, TextAnchor.MiddleLeft, new CanvasUtil.RectData(new Vector2(600, 50), new Vector2(-560, 745), new Vector2(0.5f, 0), new Vector2(0.5f, 0), new Vector2(0.5f, 0.5f)), true).GetComponent <Text>();
            magazine.color = new Color(0.420f, 0.420f, 0.420f, 1f);
            magazine.text  = "";
            Modding.Logger.Log("[HOLLOW POINT] HPUI.cs sucessfully initialized!");
        }
コード例 #29
0
 private Text _GetOrInitializeTextComponent()
 {
     if (_textComponent == null)
     {
         DebugLog.Log("Initializing textComponent");
         _textComponent = _GetOrInitializeTextObj().AddComponent <Text>();
         _textComponent.horizontalOverflow   = HorizontalWrapMode.Overflow;
         _textComponent.resizeTextForBestFit = true;
         _textComponent.text = "";
         CanvasUtil.CreateFonts();
         _textComponent.font      = CanvasUtil.TrajanNormal;
         _textComponent.fontSize  = 30;
         _textComponent.fontStyle = FontStyle.Normal;
         _textComponent.alignment = TextAnchor.UpperLeft;
         _textComponent.color     = Color.white;
     }
     return(_textComponent);
 }
コード例 #30
0
        public bool VertexOnLine(OECPVertex vtx, ref OECPVertex projVtx)
        {
            var lst = new List <OECPLayer>();

            foreach (OECPLayer layer in Layers)
            {
                if (!layer.IsLine)
                {
                    continue;
                }
                if (!layer.IsVisible)
                {
                    continue;
                }
                lst.Add(layer);
            }
            return(CanvasUtil.VertexOnLine(vtx, lst, ref projVtx));
        }