Move all extended animation logic out of DrawableJudgement

This commit is contained in:
Dean Herbert
2020-11-17 14:59:34 +09:00
parent 82c3925a37
commit f465dd5a5e
5 changed files with 146 additions and 42 deletions

View File

@ -4,9 +4,9 @@
using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Game.Configuration;
using osuTK;
using osu.Game.Rulesets.Judgements;
using osu.Game.Rulesets.Objects.Drawables;
using osu.Game.Rulesets.Scoring;
using osuTK;
namespace osu.Game.Rulesets.Osu.Objects.Drawables
{
@ -65,8 +65,20 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
fadeOutDelay = hitLightingEnabled ? 1400 : base.FadeOutDelay;
JudgementText?.TransformSpacingTo(Vector2.Zero).Then().TransformSpacingTo(new Vector2(14, 0), 1800, Easing.OutQuint);
base.ApplyHitAnimations();
}
protected override Drawable CreateDefaultJudgement(HitResult type) => new OsuJudgementPiece();
private class OsuJudgementPiece : DefaultJudgementPiece
{
public override void PlayAnimation(HitResult resultType)
{
base.PlayAnimation(resultType);
if (resultType != HitResult.Miss)
JudgementText.TransformSpacingTo(Vector2.Zero).Then().TransformSpacingTo(new Vector2(14, 0), 1800, Easing.OutQuint);
}
}
}
}