示例#1
0
        public void Appear()
        {
            this.FadeIn();

            if (rank < ScoreRank.A)
            {
                this
                .MoveToOffset(new Vector2(0, -20))
                .MoveToOffset(new Vector2(0, 20), 200, Easing.OutBounce);

                if (rank <= ScoreRank.D)
                {
                    this.Delay(700)
                    .RotateTo(5, 150, Easing.In)
                    .MoveToOffset(new Vector2(0, 3), 150, Easing.In);
                }

                this.FadeInFromZero(200, Easing.OutQuint);
                return;
            }

            flash.Colour = OsuColour.ForRank(rank);
            flash.FadeIn().Then().FadeOut(1200, Easing.OutQuint);

            if (rank >= ScoreRank.S)
            {
                rankText.ScaleTo(1.05f).ScaleTo(1, 3000, Easing.OutQuint);
            }

            if (rank >= ScoreRank.X)
            {
                flash.FadeIn().Then().FadeOut(3000);
                superFlash.FadeIn().Then().FadeOut(800, Easing.OutQuint);
            }
        }