示例#1
0
    public void tap()
    {
        float currentTap = Time.fixedTime;

        if (taps.Count > 0)
        {
            float lastTap = taps[taps.Count - 1];

            float delta = currentTap - lastTap;

            int numberOfDeltas = taps.Count - 1;

            float tolerance = meanDelta * (1.0f - accuracy);

            if (delta > meanDelta + tolerance || delta < meanDelta - tolerance)
            {
                Reset();
                meanDelta = delta;
                Debug.Log("reset");
                BPMManager.Phase();
            }
            else
            {
                meanDelta = (meanDelta * numberOfDeltas + delta) / (numberOfDeltas + 1);
            }

            UpdateBPM();
            game.GetComponent <HealthManager>().setBPM(BPM);
            game.GetComponent <MoveSegment>().setSpeed(BPM);
        }

        taps.Add(currentTap);
    }
示例#2
0
 private void GameOver()
 {
     BPMManager.Phase();
     gameOver.SetActive(true);
     StartCoroutine(Countdown());
 }