1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-23 02:07:24 +08:00

Add finisher notes.

This commit is contained in:
smoogipooo 2017-03-20 15:07:42 +09:00
parent caf3ec1400
commit 29f303b4d0

View File

@ -21,37 +21,60 @@ namespace osu.Desktop.VisualTests.Tests
Add(new CentreHitCirclePiece Add(new CentreHitCirclePiece
{ {
Position = new Vector2(100, 100), Position = new Vector2(100, 100)
KiaiMode = true });
Add(new FinisherPiece(new CentreHitCirclePiece())
{
Position = new Vector2(350, 100)
}); });
Add(new RimHitCirclePiece Add(new RimHitCirclePiece
{ {
Position = new Vector2(100, 250), Position = new Vector2(100, 280)
KiaiMode = true });
Add(new FinisherPiece(new RimHitCirclePiece())
{
Position = new Vector2(350, 280)
}); });
Add(new BashCirclePiece Add(new BashCirclePiece
{ {
Position = new Vector2(100, 400), Position = new Vector2(100, 460)
KiaiMode = true });
Add(new FinisherPiece(new BashCirclePiece())
{
Position = new Vector2(350, 460)
}); });
Add(new DrumRollCirclePiece Add(new DrumRollCirclePiece
{ {
Width = 256, Width = 250,
Position = new Vector2(100, 550), Position = new Vector2(100, 640)
KiaiMode = true });
Add(new FinisherPiece(new DrumRollCirclePiece()
{
Width = 250
})
{
Position = new Vector2(600, 640)
}); });
} }
} }
class FinisherCirclePiece : Container class FinisherPiece : ScrollingCirclePiece
{ {
public FinisherCirclePiece() public FinisherPiece(CirclePiece originalPiece)
{ {
Anchor = Anchor.CentreLeft; Scale = new Vector2(1.5f);
Children = new[]
{
originalPiece
};
} }
} }
@ -189,7 +212,7 @@ namespace osu.Desktop.VisualTests.Tests
/// a regular "circle" is created by setting the width of this piece to 0px (resulting in a 64px radius circle). /// a regular "circle" is created by setting the width of this piece to 0px (resulting in a 64px radius circle).
/// </para> /// </para>
/// </summary> /// </summary>
abstract class CirclePiece : Container abstract class CirclePiece : ScrollingCirclePiece
{ {
private bool kiaiMode; private bool kiaiMode;
/// <summary> /// <summary>
@ -218,12 +241,10 @@ namespace osu.Desktop.VisualTests.Tests
private Box innerBackground; private Box innerBackground;
private Triangles triangles; private Triangles triangles;
public CirclePiece() protected CirclePiece()
{ {
Container iconContainer; Container iconContainer;
Origin = Anchor.CentreLeft;
Children = new Drawable[] Children = new Drawable[]
{ {
// The "inner layer" overshoots the ObjectPiece by 64px on both sides // The "inner layer" overshoots the ObjectPiece by 64px on both sides
@ -369,4 +390,14 @@ namespace osu.Desktop.VisualTests.Tests
/// <returns>The icon.</returns> /// <returns>The icon.</returns>
protected virtual Drawable CreateIcon() => null; protected virtual Drawable CreateIcon() => null;
} }
class ScrollingCirclePiece : Container
{
public ScrollingCirclePiece()
{
Origin = Anchor.CentreLeft;
// Todo: Relative X position
}
}
} }