Esempio n. 1
0
        protected override double StrainValueOf(DifficultyHitObject current)
        {
            HitokoriDifficultyHitObject hitokoriCurrent = (HitokoriDifficultyHitObject)current;
            double bpm = Math.Min(hitokoriCurrent.BPM, MAX_BPM);

            return(Math.Pow(bpm / BASE_BPM, 0.6));
        }
Esempio n. 2
0
        protected override double StrainValueOf(DifficultyHitObject current)
        {
            HitokoriDifficultyHitObject hitokoriCurrent = (HitokoriDifficultyHitObject)current;

            double strain = CalculateAngleStrain(hitokoriCurrent.HitAngle);

            if (hitokoriCurrent.ChangedDirection)
            {
                strain *= DIRECTION_CHANGE_BONUS;
            }

            if (hitokoriCurrent.HoldAngle != null)
            {
                strain += CalculateAngleStrain(hitokoriCurrent.HoldAngle.Value);
            }

            return(1 + strain);
        }