private void addHitJudgement(bool kiai)
        {
            TaikoHitResult hitResult = RNG.Next(2) == 0 ? TaikoHitResult.Good : TaikoHitResult.Great;

            var cpi = new ControlPointInfo();

            cpi.EffectPoints.Add(new EffectControlPoint
            {
                KiaiMode = kiai
            });

            Hit hit = new Hit();

            hit.ApplyDefaults(cpi, new BeatmapDifficulty());

            var h = new DrawableTestHit(hit)
            {
                X         = RNG.NextSingle(hitResult == TaikoHitResult.Good ? -0.1f : -0.05f, hitResult == TaikoHitResult.Good ? 0.1f : 0.05f),
                Judgement = new TaikoJudgement
                {
                    Result      = HitResult.Hit,
                    TaikoResult = hitResult,
                    TimeOffset  = 0
                }
            };

            playfield.OnJudgement(h);

            if (RNG.Next(10) == 0)
            {
                h.Judgement.SecondHit = true;
                playfield.OnJudgement(h);
            }
        }
Esempio n. 2
0
        protected override int NumericResultForScore(TaikoHitResult result)
        {
            switch (result)
            {
            default:
                return(0);

            case TaikoHitResult.Great:
                return(200);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Computes the numeric result value for the accuracy portion of the score.
        /// For the combo portion of the score, see <see cref="NumericResultForScore(TaikoHitResult)"/>.
        /// </summary>
        /// <param name="result">The result to compute the value for.</param>
        /// <returns>The numeric result value.</returns>
        protected virtual int NumericResultForAccuracy(TaikoHitResult result)
        {
            switch (result)
            {
            default:
                return(0);

            case TaikoHitResult.Good:
                return(150);

            case TaikoHitResult.Great:
                return(300);
            }
        }
Esempio n. 4
0
        private void addHitJudgement()
        {
            TaikoHitResult hitResult = RNG.Next(2) == 0 ? TaikoHitResult.Good : TaikoHitResult.Great;

            playfield.OnJudgement(new DrawableTestHit(new Hit())
            {
                X         = RNG.NextSingle(hitResult == TaikoHitResult.Good ? -0.1f : -0.05f, hitResult == TaikoHitResult.Good ? 0.1f : 0.05f),
                Judgement = new TaikoJudgement
                {
                    Result      = HitResult.Hit,
                    TaikoResult = hitResult,
                    TimeOffset  = 0,
                    SecondHit   = RNG.Next(10) == 0
                }
            });
        }
Esempio n. 5
0
 protected override int NumericResultForAccuracy(TaikoHitResult result)
 {
     return(0);
 }