getAnimations method

  1. @override
List<CharacterAnimation> getAnimations(
  1. double progress,
  2. int charCount
)
override

Generates uniform scale/opacity pulse across all characters.

Implementation

@override
List<CharacterAnimation> getAnimations(double progress, int charCount) {
  if (charCount == 0) return [];

  final curved = applyCurve(progress);
  final normalized = sin(curved * pi);

  final scale = scaleMin + (scaleMax - scaleMin) * normalized;
  final opacity = opacityMin + (1.0 - opacityMin) * (1.0 - normalized * 0.5);

  return List.generate(charCount, (_) {
    return CharacterAnimation(
      scale: scale,
      opacity: opacity,
    );
  });
}