mirror of
https://github.com/ppy/osu.git
synced 2024-11-14 01:47:25 +08:00
Merge pull request #570 from smoogipooo/taiko-drawable-generation
Taiko drawable generation
This commit is contained in:
commit
486e14e0f6
@ -73,6 +73,16 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addSwell()
|
||||||
|
{
|
||||||
|
playfield.Add(new DrawableSwell(new Swell
|
||||||
|
{
|
||||||
|
StartTime = Time.Current + 1000,
|
||||||
|
EndTime = Time.Current + 5000,
|
||||||
|
PreEmpt = 1000
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
private void addDrumRoll(bool strong)
|
private void addDrumRoll(bool strong)
|
||||||
{
|
{
|
||||||
var d = new DrumRoll
|
var d = new DrumRoll
|
||||||
@ -85,16 +95,6 @@ namespace osu.Desktop.VisualTests.Tests
|
|||||||
playfield.Add(strong ? new DrawableStrongDrumRoll(d) : new DrawableDrumRoll(d));
|
playfield.Add(strong ? new DrawableStrongDrumRoll(d) : new DrawableDrumRoll(d));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addSwell()
|
|
||||||
{
|
|
||||||
playfield.Add(new DrawableSwell(new Swell
|
|
||||||
{
|
|
||||||
StartTime = Time.Current + 1000,
|
|
||||||
EndTime = Time.Current + 5000,
|
|
||||||
PreEmpt = 1000
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addCentreHit(bool strong)
|
private void addCentreHit(bool strong)
|
||||||
{
|
{
|
||||||
Hit h = new Hit
|
Hit h = new Hit
|
||||||
|
@ -2,15 +2,17 @@
|
|||||||
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||||
|
|
||||||
using osu.Game.Beatmaps;
|
using osu.Game.Beatmaps;
|
||||||
|
using osu.Framework.Graphics;
|
||||||
using osu.Game.Modes.Objects.Drawables;
|
using osu.Game.Modes.Objects.Drawables;
|
||||||
using osu.Game.Modes.Replays;
|
|
||||||
using osu.Game.Modes.Scoring;
|
using osu.Game.Modes.Scoring;
|
||||||
using osu.Game.Modes.Taiko.Beatmaps;
|
using osu.Game.Modes.Taiko.Beatmaps;
|
||||||
using osu.Game.Modes.Taiko.Judgements;
|
using osu.Game.Modes.Taiko.Judgements;
|
||||||
using osu.Game.Modes.Taiko.Objects;
|
using osu.Game.Modes.Taiko.Objects;
|
||||||
using osu.Game.Modes.Taiko.Replays;
|
using osu.Game.Modes.Taiko.Objects.Drawable;
|
||||||
using osu.Game.Modes.Taiko.Scoring;
|
using osu.Game.Modes.Taiko.Scoring;
|
||||||
using osu.Game.Modes.UI;
|
using osu.Game.Modes.UI;
|
||||||
|
using osu.Game.Modes.Replays;
|
||||||
|
using osu.Game.Modes.Taiko.Replays;
|
||||||
|
|
||||||
namespace osu.Game.Modes.Taiko.UI
|
namespace osu.Game.Modes.Taiko.UI
|
||||||
{
|
{
|
||||||
@ -27,9 +29,44 @@ namespace osu.Game.Modes.Taiko.UI
|
|||||||
|
|
||||||
protected override IBeatmapProcessor<TaikoHitObject> CreateBeatmapProcessor() => new TaikoBeatmapProcessor();
|
protected override IBeatmapProcessor<TaikoHitObject> CreateBeatmapProcessor() => new TaikoBeatmapProcessor();
|
||||||
|
|
||||||
protected override Playfield<TaikoHitObject, TaikoJudgement> CreatePlayfield() => new TaikoPlayfield();
|
protected override Playfield<TaikoHitObject, TaikoJudgement> CreatePlayfield() => new TaikoPlayfield
|
||||||
|
{
|
||||||
|
Anchor = Anchor.CentreLeft,
|
||||||
|
Origin = Anchor.CentreLeft
|
||||||
|
};
|
||||||
|
|
||||||
protected override DrawableHitObject<TaikoHitObject, TaikoJudgement> GetVisualRepresentation(TaikoHitObject h) => null;
|
protected override DrawableHitObject<TaikoHitObject, TaikoJudgement> GetVisualRepresentation(TaikoHitObject h)
|
||||||
|
{
|
||||||
|
var centreHit = h as CentreHit;
|
||||||
|
if (centreHit != null)
|
||||||
|
{
|
||||||
|
if (h.IsStrong)
|
||||||
|
return new DrawableStrongCentreHit(centreHit);
|
||||||
|
return new DrawableCentreHit(centreHit);
|
||||||
|
}
|
||||||
|
|
||||||
|
var rimHit = h as RimHit;
|
||||||
|
if (rimHit != null)
|
||||||
|
{
|
||||||
|
if (h.IsStrong)
|
||||||
|
return new DrawableStrongRimHit(rimHit);
|
||||||
|
return new DrawableRimHit(rimHit);
|
||||||
|
}
|
||||||
|
|
||||||
|
var drumRoll = h as DrumRoll;
|
||||||
|
if (drumRoll != null)
|
||||||
|
{
|
||||||
|
if (h.IsStrong)
|
||||||
|
return new DrawableStrongDrumRoll(drumRoll);
|
||||||
|
return new DrawableDrumRoll(drumRoll);
|
||||||
|
}
|
||||||
|
|
||||||
|
var swell = h as Swell;
|
||||||
|
if (swell != null)
|
||||||
|
return new DrawableSwell(swell);
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
protected override FramedReplayInputHandler CreateReplayInputHandler(Replay replay) => new TaikoFramedReplayInputHandler(replay);
|
protected override FramedReplayInputHandler CreateReplayInputHandler(Replay replay) => new TaikoFramedReplayInputHandler(replay);
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,7 @@ namespace osu.Game.Screens.Play
|
|||||||
{
|
{
|
||||||
var beatmap = Beatmap.Beatmap;
|
var beatmap = Beatmap.Beatmap;
|
||||||
|
|
||||||
if (beatmap.BeatmapInfo?.Mode > PlayMode.Osu)
|
if (beatmap.BeatmapInfo?.Mode > PlayMode.Taiko)
|
||||||
{
|
{
|
||||||
//we only support osu! mode for now because the hitobject parsing is crappy and needs a refactor.
|
//we only support osu! mode for now because the hitobject parsing is crappy and needs a refactor.
|
||||||
Exit();
|
Exit();
|
||||||
|
Loading…
Reference in New Issue
Block a user