Merge branch 'master' into hold-note-freeze

This commit is contained in:
smoogipoo
2020-08-21 14:39:25 +09:00
56 changed files with 563 additions and 194 deletions

View File

@ -49,6 +49,8 @@ namespace osu.Game.Rulesets.Mania.Objects.Drawables
/// </summary>
private readonly Container tailMaskingContainer;
private readonly SkinnableDrawable bodyPiece;
/// <summary>
/// Time at which the user started holding this hold note. Null if the user is not holding this hold note.
/// </summary>
@ -79,7 +81,7 @@ namespace osu.Game.Rulesets.Mania.Objects.Drawables
bodyOffsetContainer = new Container
{
RelativeSizeAxes = Axes.X,
Child = new SkinnableDrawable(new ManiaSkinComponent(ManiaSkinComponents.HoldNoteBody, hitObject.Column), _ => new DefaultBodyPiece
Child = bodyPiece = new SkinnableDrawable(new ManiaSkinComponent(ManiaSkinComponents.HoldNoteBody, hitObject.Column), _ => new DefaultBodyPiece
{
RelativeSizeAxes = Axes.Both
})
@ -191,6 +193,12 @@ namespace osu.Game.Rulesets.Mania.Objects.Drawables
// Samples are played by the head/tail notes.
}
public override void OnKilled()
{
base.OnKilled();
(bodyPiece.Drawable as IHoldNoteBody)?.Recycle();
}
protected override void Update()
{
base.Update();