mirror of https://github.com/ppy/osu
Tidy up and tweak transitions of DrawableJudgementInfo.
This commit is contained in:
parent
acfa4a4aac
commit
02fba000bc
|
@ -44,16 +44,14 @@ private void load(OsuColour colours)
|
|||
|
||||
protected override void LoadComplete()
|
||||
{
|
||||
base.LoadComplete();
|
||||
|
||||
if (Judgement.Result == HitResult.Hit)
|
||||
switch (Judgement.Result)
|
||||
{
|
||||
MoveToY(-100, 500);
|
||||
Delay(250);
|
||||
FadeOut(250);
|
||||
case HitResult.Hit:
|
||||
MoveToY(-100, 500);
|
||||
break;
|
||||
}
|
||||
|
||||
Expire();
|
||||
base.LoadComplete();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -179,19 +179,17 @@ public override void Add(DrawableHitObject<TaikoHitObject, TaikoJudgementInfo> h
|
|||
|
||||
public override void OnJudgement(DrawableHitObject<TaikoHitObject, TaikoJudgementInfo> judgedObject)
|
||||
{
|
||||
if (judgedObject.Judgement.Result == HitResult.Hit)
|
||||
{
|
||||
hitExplosionContainer.Add(new HitExplosion(judgedObject.Judgement));
|
||||
}
|
||||
bool wasHit = judgedObject.Judgement.Result == HitResult.Hit;
|
||||
|
||||
float judgementOffset = judgedObject.Judgement.Result == HitResult.Hit ? judgedObject.Position.X : 0;
|
||||
if (wasHit)
|
||||
hitExplosionContainer.Add(new HitExplosion(judgedObject.Judgement));
|
||||
|
||||
judgementContainer.Add(new DrawableTaikoJudgementInfo(judgedObject.Judgement)
|
||||
{
|
||||
Anchor = judgedObject.Judgement.Result == HitResult.Hit ? Anchor.TopLeft : Anchor.BottomLeft,
|
||||
Origin = judgedObject.Judgement.Result == HitResult.Hit ? Anchor.BottomCentre : Anchor.TopCentre,
|
||||
Anchor = wasHit ? Anchor.TopLeft : Anchor.CentreLeft,
|
||||
Origin = wasHit ? Anchor.BottomCentre : Anchor.Centre,
|
||||
RelativePositionAxes = Axes.X,
|
||||
X = judgementOffset,
|
||||
X = wasHit ? judgedObject.Position.X : 0,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,6 +25,8 @@ public class DrawableJudgementInfo<TJudgement> : Container
|
|||
|
||||
protected readonly SpriteText JudgementText;
|
||||
|
||||
protected double HitVisibleLength => 600;
|
||||
|
||||
/// <summary>
|
||||
/// Creates a drawable which visualises a <see cref="JudgementInfo"/>.
|
||||
/// </summary>
|
||||
|
@ -65,18 +67,27 @@ protected override void LoadComplete()
|
|||
{
|
||||
base.LoadComplete();
|
||||
|
||||
if (Judgement.Result == HitResult.Miss)
|
||||
FadeInFromZero(100, EasingTypes.OutQuint);
|
||||
|
||||
switch (Judgement.Result)
|
||||
{
|
||||
FadeInFromZero(60);
|
||||
case HitResult.Miss:
|
||||
ScaleTo(1.6f);
|
||||
ScaleTo(1, 100, EasingTypes.In);
|
||||
|
||||
ScaleTo(1.6f);
|
||||
ScaleTo(1, 100, EasingTypes.In);
|
||||
MoveToOffset(new Vector2(0, 100), 800, EasingTypes.InQuint);
|
||||
RotateTo(40, 800, EasingTypes.InQuint);
|
||||
|
||||
MoveToOffset(new Vector2(0, 100), 800, EasingTypes.InQuint);
|
||||
RotateTo(40, 800, EasingTypes.InQuint);
|
||||
Delay(600);
|
||||
FadeOut(200);
|
||||
break;
|
||||
case HitResult.Hit:
|
||||
ScaleTo(0.9f);
|
||||
ScaleTo(1, 500, EasingTypes.OutElastic);
|
||||
|
||||
Delay(600);
|
||||
FadeOut(200);
|
||||
Delay(250);
|
||||
FadeOut(250, EasingTypes.OutQuint);
|
||||
break;
|
||||
}
|
||||
|
||||
Expire();
|
||||
|
|
Loading…
Reference in New Issue