예제 #1
0
        protected virtual void ApplyCustomState(DrawableHitObject drawable, ArmedState state)
        {
            var h = (OsuHitObject)drawable.HitObject;

            // apply grow effect
            switch (drawable)
            {
            case DrawableSliderHead _:
            case DrawableSliderTail _:
                // special cases we should *not* be scaling.
                break;

            case DrawableSlider _:
            case DrawableHitCircle _:
            {
                using (drawable.BeginAbsoluteSequence(h.StartTime - h.TimePreempt))
                    drawable.ScaleTo(StartScale).Then().ScaleTo(EndScale, h.TimePreempt, Easing.OutSine);
                break;
            }
            }

            // remove approach circles
            switch (drawable)
            {
            case DrawableHitCircle circle:
                // we don't want to see the approach circle
                using (circle.BeginAbsoluteSequence(h.StartTime - h.TimePreempt))
                    circle.ApproachCircle.Hide();
                break;
            }
        }
예제 #2
0
 private void dropOffScreen(DrawableHitObject obj, double failTime, float randomRotation, Vector2 originalScale, Vector2 originalPosition)
 {
     using (obj.BeginAbsoluteSequence(failTime))
     {
         obj.RotateTo(randomRotation, duration);
         obj.ScaleTo(originalScale * 0.5f, duration);
         obj.MoveTo(originalPosition + new Vector2(0, 400), duration);
     }
 }
예제 #3
0
        protected virtual void ApplyCustomState(DrawableHitObject drawable, ArmedState state)
        {
            var h = (OsuHitObject)drawable.HitObject;

            // apply grow effect
            switch (drawable)
            {
            case DrawableSliderHead _:
            case DrawableSliderTail _:
                // special cases we should *not* be scaling.
                break;

            case DrawableSlider _:
            case DrawableHitCircle _:
            {
                //using (drawable.BeginAbsoluteSequence(h.StartTime - h.TimePreempt, true))
                drawable.ScaleTo(radiusScaleFactor);        //.Then().ScaleTo(2.0f, h.TimePreempt, Easing.OutExpo);
                break;
            }
            }
        }