public void GlideToTarget(OsbSprite s, ParticleGlideObject p)
        {
            // From TriggerTime to Assembled Point
            // Good, now move to the target spot
            var endTime = TriggerTime + GlideDuration;

            s.MoveX(EasingEffect, TriggerTime, endTime, s.PositionAt(TriggerTime).X, p.targetV.X);
            s.MoveY(EasingEffect, TriggerTime, endTime, s.PositionAt(TriggerTime).Y, p.targetV.Y);

            // Alright, let's let it stay there for demonstrating the effect worked HOORAY
            s.Fade(endTime, endTime + 1000, 1, 0);
        }
        public void GenerateParticle(ParticleGlideObject p)
        {
            // The money shot #ohbaby
            // This method will create the particle, then take the particle and have it glide over to target coordinates
            // TODO: Have some nice random slow glide movement PRIOR to moving to the target spot
            // and some fade effects too

            //  Create sprite
            var layer  = GetLayer("ParticleGliders");
            var sprite = layer.CreateSprite(Particle1SpritePath, OsbOrigin.Centre, p.initV);

            GlideRandomly(sprite);
            GlideToTarget(sprite, p);
        }