Beispiel #1
0
        public override void Update()
        {
            base.Update();
            sliderBar.SetValue((float)AudioEngine.Time / AudioEngine.AudioLength, true);

            if (newAim.HasValue)
            {
                int aim  = newAim.Value;
                int diff = Math.Abs(aim - AudioEngine.Time);

                if (diff < 100)
                {
                    if (AudioEngine.IsReversed && Player.IsSliding)
                    {
                        return;
                    }

                    AudioEngine.ChangeFrequencyRate(1);
                    newAim = null;
                }
                else if (aim > AudioEngine.Time)
                {
                    AudioEngine.ChangeFrequencyRate(Math.Min(10, 0.8f + diff / 2000f));
                }
                else
                {
                    AudioEngine.ChangeFrequencyRate(Math.Max(-10, -0.2f - diff / 2000f));
                }
            }
            else
            {
                sliderBarUser.SetValue(sliderBar.Current, true);
            }
        }