コード例 #1
0
        public Color GetRankColorFromRank(RankModel.Rank rank)
        {
            switch (rank)
            {
            case RankModel.Rank.S: return(SColor);

            case RankModel.Rank.A: return(AColor);

            case RankModel.Rank.B: return(BColor);

            case RankModel.Rank.C: return(CColor);

            case RankModel.Rank.D: return(DColor);

            case RankModel.Rank.E: return(EColor);

            default: return(SSColor);
            }
        }
コード例 #2
0
ファイル: ScoreCounter.cs プロジェクト: incertia/CountersPlus
        private void UpdateText()
        {
            RankModel.Rank immediateRank = relativeScoreAndImmediateRank.immediateRank;
            if (immediateRank != prevImmediateRank)
            {
                rankText.text     = RankModel.GetRankName(immediateRank);
                prevImmediateRank = immediateRank;

                Color RankColor = Color.white;
                if (Settings.CustomRankColors)
                {
                    RankColor = Settings.GetRankColorFromRank(immediateRank);
                }
                rankText.color = RankColor;
            }
            float relativeScore = relativeScoreAndImmediateRank.relativeScore * 100;

            relativeScoreText.text = $"{relativeScore.ToString($"F{Settings.DecimalPrecision}")}%";
        }
コード例 #3
0
        private void UpdateClassicModeText()
        {
            RankModel.Rank immediateRank = relativeScoreAndImmediateRank.immediateRank;
            float          relativeScore = (relativeScoreAndImmediateRank.relativeScore) * 100.0f;

            if (Math.Floor(relativeScore) != Math.Floor(prevRelativeScore))
            {
                Color currentColor = GetColorForRelativeScore(relativeScore);
            }
            prevRelativeScore = relativeScore;
            if (immediateRank != prevImmediateRank)
            {
                rankText.text     = RankModel.GetRankName(immediateRank);
                prevImmediateRank = immediateRank;
            }
            int decimalPrecision = 2;

            relativeScoreText.text = $"{relativeScore.ToString($"F{decimalPrecision}")}%";
        }
コード例 #4
0
        static bool Prefix(ref ImmediateRankUIPanel __instance, ref RelativeScoreAndImmediateRankCounter ____relativeScoreAndImmediateRankCounter,
                           ref RankModel.Rank ____prevImmediateRank, ref float ____prevRelativeScore, ref TextMeshProUGUI ____rankText,
                           ref TextMeshProUGUI ____relativeScoreText)
        {
            if (!CountersController.settings.Enabled)
            {
                return(true);                                      //Dont use Score Counters decimal precision if the plugin is disabled
            }
            if (model == null)
            {
                model = CountersController.settings.scoreConfig;
            }
            RankModel.Rank rank = ____relativeScoreAndImmediateRankCounter.immediateRank;
            if (rank != ____prevImmediateRank)
            {
                ____rankText.text     = model.Mode != ICounterMode.BaseGame ? $"\n{RankModel.GetRankName(rank)}" : RankModel.GetRankName(rank);
                ____prevImmediateRank = rank;
            }
            if (model.CustomRankColors) //checks if custom rank colors is enabled
            {
                if (RankModel.GetRankName(rank) == "SS")
                {
                    ColorUtility.TryParseHtmlString(model.SSColor, out Color RankColor); //converts config hex color to unity RGBA value
                    ____rankText.color = RankColor;                                      //sets color of ranktext
                }
                if (RankModel.GetRankName(rank) == "S")
                {
                    ColorUtility.TryParseHtmlString(model.SColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
                if (RankModel.GetRankName(rank) == "A")
                {
                    ColorUtility.TryParseHtmlString(model.AColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
                if (RankModel.GetRankName(rank) == "B")
                {
                    ColorUtility.TryParseHtmlString(model.BColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
                if (RankModel.GetRankName(rank) == "C")
                {
                    ColorUtility.TryParseHtmlString(model.CColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
                if (RankModel.GetRankName(rank) == "D")
                {
                    ColorUtility.TryParseHtmlString(model.DColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
                if (RankModel.GetRankName(rank) == "E")
                {
                    ColorUtility.TryParseHtmlString(model.EColor, out Color RankColor);
                    ____rankText.color = RankColor;
                }
            }
            float score = ____relativeScoreAndImmediateRankCounter.relativeScore;

            if (Mathf.Abs(____prevRelativeScore - score) >= 0.001f)
            {
                float roundedScore = (float)Math.Round((decimal)score * 100, model.DecimalPrecision);
                ____relativeScoreText.text = $"{roundedScore.ToString($"F{model.DecimalPrecision}")}%";
            }
            return(false);
        }
コード例 #5
0
 public Color GetRankColorFromRank(RankModel.Rank rank) => rank switch
 {