protected override void ApplyMissAnimations()
        {
            if (!(JudgementBody.Drawable is DefaultManiaJudgementPiece))
            {
                // this is temporary logic until mania's skin transformer returns IAnimatableJudgements
                JudgementBody.ScaleTo(1.6f);
                JudgementBody.ScaleTo(1, 100, Easing.In);

                JudgementBody.MoveTo(Vector2.Zero);
                JudgementBody.MoveToOffset(new Vector2(0, 100), 800, Easing.InQuint);

                JudgementBody.RotateTo(0);
                JudgementBody.RotateTo(40, 800, Easing.InQuint);
                JudgementBody.FadeOutFromOne(800);

                LifetimeEnd = JudgementBody.LatestTransformEndTime;
            }

            base.ApplyMissAnimations();
        }
Пример #2
0
        protected override void PrepareForUse()
        {
            base.PrepareForUse();

            Debug.Assert(Result != null);

            prepareDrawables();

            bodyDrawable.ResetAnimation();

            this.FadeInFromZero(FadeInDuration, Easing.OutQuint);
            JudgementBody.ScaleTo(1);
            JudgementBody.RotateTo(0);
            JudgementBody.MoveTo(Vector2.Zero);

            switch (Result.Type)
            {
            case HitResult.None:
                break;

            case HitResult.Miss:
                JudgementBody.ScaleTo(1.6f);
                JudgementBody.ScaleTo(1, 100, Easing.In);

                JudgementBody.MoveToOffset(new Vector2(0, 100), 800, Easing.InQuint);
                JudgementBody.RotateTo(40, 800, Easing.InQuint);

                this.Delay(600).FadeOut(200);
                break;

            default:
                ApplyHitAnimations();
                break;
            }

            Expire(true);
        }