Rename timing changes, simplify + improve columns/dictionary usage.

This commit is contained in:
smoogipooo
2017-06-07 19:09:51 +09:00
parent 7aee8ee547
commit 6f191193a1
8 changed files with 61 additions and 40 deletions

View File

@ -31,20 +31,19 @@ namespace osu.Game.Rulesets.Mania.Mods
{
var maniaHitRenderer = (ManiaHitRenderer)hitRenderer;
maniaHitRenderer.HitObjectTimingChanges = new Dictionary<int, List<DrawableTimingChange>>();
maniaHitRenderer.HitObjectTimingChanges = new List<DrawableTimingChange>[maniaHitRenderer.PreferredColumns];
maniaHitRenderer.BarlineTimingChanges = new List<DrawableTimingChange>();
for (int i = 0; i < maniaHitRenderer.PreferredColumns; i++)
maniaHitRenderer.HitObjectTimingChanges[i] = new List<DrawableTimingChange>();
foreach (HitObject obj in maniaHitRenderer.Objects)
{
var maniaObject = obj as ManiaHitObject;
if (maniaObject == null)
continue;
List<DrawableTimingChange> timingChanges;
if (!maniaHitRenderer.HitObjectTimingChanges.TryGetValue(maniaObject.Column, out timingChanges))
maniaHitRenderer.HitObjectTimingChanges[maniaObject.Column] = timingChanges = new List<DrawableTimingChange>();
timingChanges.Add(new DrawableGravityTimingChange(new TimingChange
maniaHitRenderer.HitObjectTimingChanges[maniaObject.Column].Add(new DrawableManiaGravityTimingChange(new TimingChange
{
Time = obj.StartTime,
BeatLength = 1000
@ -63,7 +62,7 @@ namespace osu.Game.Rulesets.Mania.Mods
for (double t = timingPoints[i].Time; Precision.DefinitelyBigger(endTime, t); t += point.BeatLength)
{
maniaHitRenderer.BarlineTimingChanges.Add(new DrawableGravityTimingChange(new TimingChange
maniaHitRenderer.BarlineTimingChanges.Add(new DrawableManiaGravityTimingChange(new TimingChange
{
Time = t,
BeatLength = 1000