internal HitCircle(HitObjectManager hit_object_manager, Vector2 pos, int startTime, bool newCombo, int comboOffset, HitObjectSoundType soundType) : base(hit_object_manager, pos, startTime, soundType, newCombo, comboOffset) { Type = HitObjectType.Circle; Color4 white = Color4.White; SpriteHitCircle1 = new pSprite(TextureManager.Load(OsuTexture.hitcircle0), FieldTypes.GamefieldSprites, OriginTypes.Centre, ClockTypes.Audio, Position, SpriteManager.drawOrderBwd(StartTime), false, white); Sprites.Add(SpriteHitCircle1); //SpriteHitCircle1.TagNumeric = 1; SpriteHitCircle1.TagNumeric = DIMMABLE_TAG; SpriteHitCircleText = new pSpriteText(null, "default", 3, //SkinManager.Current.FontHitCircle, SkinManager.Current.FontHitCircleOverlap, FieldTypes.GamefieldSprites, OriginTypes.Centre, ClockTypes.Audio, Position, SpriteManager.drawOrderBwd(StartTime - 1), false, white); SpriteHitCircleText.TextConstantSpacing = false; SpriteHitCircleText.TagNumeric = DIMMABLE_TAG; SpriteApproachCircle = new ApproachCircle(Position, 1, false, 1, white); SpriteApproachCircle.Clocking = ClockTypes.Audio; Sprites.Add(SpriteApproachCircle); if (ShowCircleText) { Sprites.Add(SpriteHitCircleText); } SpriteApproachCircle.Transform(new TransformationF(TransformationType.Fade, 0, 0.9F, startTime - DifficultyManager.PreEmpt, Math.Min(startTime, startTime - DifficultyManager.PreEmpt + DifficultyManager.FadeIn * 2))); SpriteApproachCircle.Transform(new TransformationF(TransformationType.Scale, 4, 1, startTime - DifficultyManager.PreEmpt, startTime)); SpriteApproachCircle.Transform(new TransformationF(TransformationType.Fade, 0.9f, 0, startTime, startTime + (int)(DifficultyManager.PreEmpt * 0.1f))); Transformation fadeIn = new TransformationF(TransformationType.Fade, 0, 1, startTime - DifficultyManager.PreEmpt, startTime - DifficultyManager.PreEmpt + DifficultyManager.FadeIn); SpriteHitCircle1.Transform(fadeIn); SpriteHitCircleText.Transform(fadeIn); Transformation fadeOut = new TransformationF(TransformationType.Fade, 1, 0, startTime, startTime + DifficultyManager.HitWindow50); SpriteHitCircle1.Transform(fadeOut); SpriteHitCircleText.Transform(fadeOut); }
protected virtual void OnIncrease(int currentCombo) { displayCombo++; if (s_hitCombo.TagNumeric != s_hitCombo_Incoming.TagNumeric) { transferToMainCounter(); } s_hitCombo_Incoming.Transformations.Clear(); Transformation t1 = new TransformationF(TransformationType.Scale, 2F, 1.28F, Clock.Time, Clock.Time + 300); Transformation t2 = new TransformationF(TransformationType.Fade, 0.6F, 0, Clock.Time, Clock.Time + 300); s_hitCombo_Incoming.Transform(t1); s_hitCombo_Incoming.Transform(t2); }