Make InputDrum handle all Normals/Claps, hitobjects all others

This commit is contained in:
smoogipoo
2017-12-26 14:18:23 +09:00
parent 58c35b8ba5
commit 14162b5d46
7 changed files with 72 additions and 94 deletions

View File

@ -123,9 +123,6 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables
MainPiece.AccentColour = colours.YellowDark;
expandingRing.Colour = colours.YellowLight;
targetRing.BorderColour = colours.YellowDark.Opacity(0.25f);
foreach (var mapping in HitObject.ProgressionSamples)
mapping.RetrieveChannels(audio);
}
protected override void LoadComplete()
@ -223,22 +220,6 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables
UpdateJudgement(true);
if (AllJudged)
return true;
// While the swell hasn't been fully judged, input is still blocked so it doesn't fall through to other hitobjects
// This causes the playfield to not play sounds, so they need to be handled locally
var mappingIndex = HitObject.ProgressionSamples.BinarySearch(new DrumSampleMapping { Time = Time.Current });
if (mappingIndex < 0)
mappingIndex = ~mappingIndex - 1;
var mapping = HitObject.ProgressionSamples[mappingIndex];
if (isCentre)
mapping.CentreChannel.Play();
else
mapping.RimChannel.Play();
return true;
}
}