Esempio n. 1
0
 private void Add(int column, int startTime, int endTime)
 {
     if (startTime == endTime)
     {
         HitCircleMania note = new HitCircleMania(hitObjectManager, column, startTime, SoundType);
         note.SampleSet          = SampleSet;
         note.SampleSetAdditions = SampleSetAdditions;
         note.CustomSampleSet    = CustomSampleSet;
         note.SampleVolume       = SampleVolume;
         note.Siblings           = 1;
         HitObjects.Add(note);
     }
     else
     {
         HitCircleManiaLong note = new HitCircleManiaLong(hitObjectManager, column, startTime, endTime, HitObjectSoundType.Normal);
         note.SoundTypeStart          = HitObjectSoundType.Normal;
         note.SoundTypeEnd            = SoundType;
         note.SampleSet               = SampleSet;
         note.SampleSetAdditions      = SampleSetAdditions;
         note.SampleSetAtEnd          = SampleSet;
         note.SampleSetAdditionsAtEnd = SampleSetAdditions;
         note.CustomSampleSet         = CustomSampleSet;
         note.SampleVolume            = SampleVolume;
         note.Siblings = 1;
         HitObjects.Add(note);
     }
 }
Esempio n. 2
0
        private void Add(int column, int startTime, int endTime, int siblings = 1, int simultaneousSiblings = 0)
        {
            if (simultaneousSiblings == 0)
            {
                simultaneousSiblings = siblings;
            }

            int volume = SampleVolume;

            if ((convertType & ManiaConvertType.NotChange) == 0)
            {
                if (SampleVolume != 0)
                {
                    volume = Math.Min(SampleVolume, SampleVolume * 4 / 3 / simultaneousSiblings);
                }
                else
                {
                    ControlPoint cp = hitObjectManager.Beatmap.ControlPointAt(StartTime);
                    if (cp != null)
                    {
                        volume = Math.Min(cp.Volume, cp.Volume * 4 / 3 / simultaneousSiblings);
                    }
                }
            }

            if (startTime == endTime)
            {
                HitCircleMania note = new HitCircleMania(hitObjectManager, column, startTime, SoundTypeAt(startTime));
                note.SampleSet          = SampleSetAt(startTime);
                note.SampleSetAdditions = SampleSetAdditionsAt(startTime);
                note.CustomSampleSet    = CustomSampleSet;
                note.SampleVolume       = volume;
                note.Siblings           = siblings;
                HitObjects.Add(note);
            }
            else
            {
                HitCircleManiaLong note = new HitCircleManiaLong(hitObjectManager, column, startTime, endTime, SoundType);
                note.SoundTypeStart          = SoundTypeAt(startTime);
                note.SoundTypeEnd            = SoundTypeAt(endTime);
                note.SampleSet               = SampleSetAt(startTime);
                note.SampleSetAdditions      = SampleSetAdditionsAt(startTime);
                note.SampleSetAtEnd          = SampleSetAt(endTime);
                note.SampleSetAdditionsAtEnd = SampleSetAdditionsAt(endTime);
                note.SlideSampleSet          = SampleSet;
                note.SlideSampleSetAdditions = SampleSetAdditions;
                note.CustomSampleSet         = CustomSampleSet;
                note.SampleVolume            = volume;
                note.Siblings = siblings;
                HitObjects.Add(note);
            }
        }