Exemple #1
0
        public ManiaHitObjectDifficulty(ManiaHitObject baseHitObject, int columnCount)
        {
            BaseHitObject = baseHitObject;

            endTime = (baseHitObject as IHasEndTime)?.EndTime ?? baseHitObject.StartTime;

            beatmapColumnCount = columnCount;
            heldUntil          = new double[beatmapColumnCount];
            individualStrains  = new double[beatmapColumnCount];
            prior_notes        = new ManiaHitObjectDifficulty[beatmapColumnCount];

            for (int i = 0; i < beatmapColumnCount; ++i)
            {
                individualStrains[i] = 0;
                heldUntil[i]         = 0;
                prior_notes[i]       = null;
            }

            // This is done to make sure the first note seen gets 2 individual strain.
            IndividualStrain       = 2;
            sharedMaxOverallStrain = OverallStrain;

            // These will get overridden if not the first note.
            prior_notes[BaseHitObject.Column] = this;
            heldUntil[BaseHitObject.Column]   = endTime;

            if (endTime > BaseHitObject.StartTime)
            {
                //prior_hold_notes.Add(this);
                //prior_hold_notes.Sort((x, y) => x.endTime.CompareTo(y.endTime));
            }
        }
Exemple #2
0
        public ManiaHitObjectDifficulty(ManiaHitObject baseHitObject, int columnCount)
        {
            BaseHitObject = baseHitObject;

            endTime = (baseHitObject as IHasEndTime)?.EndTime ?? baseHitObject.StartTime;

            beatmapColumnCount = columnCount;
            heldUntil          = new double[beatmapColumnCount];
            individualStrains  = new double[beatmapColumnCount];

            for (int i = 0; i < beatmapColumnCount; ++i)
            {
                individualStrains[i] = 0;
                heldUntil[i]         = 0;
            }
        }