2016-09-02 19:30:27 +08:00
|
|
|
|
//Copyright (c) 2007-2016 ppy Pty Ltd <contact@ppy.sh>.
|
|
|
|
|
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
|
|
|
|
|
2016-10-13 21:14:18 +08:00
|
|
|
|
using OpenTK;
|
2016-09-02 19:30:27 +08:00
|
|
|
|
using osu.Framework.Graphics;
|
|
|
|
|
using osu.Game.Beatmaps.Objects;
|
|
|
|
|
using osu.Game.Beatmaps.Objects.Mania;
|
2016-10-13 09:10:15 +08:00
|
|
|
|
using osu.Game.Beatmaps.Objects.Mania.Drawable;
|
2016-09-02 19:30:27 +08:00
|
|
|
|
|
|
|
|
|
namespace osu.Game.GameModes.Play.Mania
|
|
|
|
|
{
|
2016-10-13 09:10:15 +08:00
|
|
|
|
public class ManiaHitRenderer : HitRenderer<ManiaBaseHit>
|
2016-09-02 19:30:27 +08:00
|
|
|
|
{
|
|
|
|
|
private readonly int columns;
|
|
|
|
|
|
|
|
|
|
public ManiaHitRenderer(int columns = 5)
|
|
|
|
|
{
|
|
|
|
|
this.columns = columns;
|
|
|
|
|
}
|
|
|
|
|
|
2016-10-14 17:48:07 +08:00
|
|
|
|
protected override HitObjectConverter<ManiaBaseHit> Converter => new ManiaConverter(columns);
|
2016-09-02 19:30:27 +08:00
|
|
|
|
|
2016-10-13 09:10:15 +08:00
|
|
|
|
protected override Playfield CreatePlayfield() => new ManiaPlayfield(columns);
|
2016-09-02 19:30:27 +08:00
|
|
|
|
|
2016-10-13 09:10:15 +08:00
|
|
|
|
protected override Drawable GetVisualRepresentation(ManiaBaseHit h)
|
2016-09-02 19:30:27 +08:00
|
|
|
|
{
|
2016-10-13 09:10:15 +08:00
|
|
|
|
return new DrawableNote(h)
|
2016-09-02 19:30:27 +08:00
|
|
|
|
{
|
2016-10-13 09:10:15 +08:00
|
|
|
|
Position = new Vector2((float)(h.Column + 0.5) / columns, -0.1f),
|
|
|
|
|
RelativePositionAxes = Axes.Both
|
|
|
|
|
};
|
2016-09-02 19:30:27 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|