void _startDartAnimation()

in lib/src/stage/game_element.dart [227:258]


  void _startDartAnimation(List<Point> points) {
    assert(points.isNotEmpty);
    game_audio.throwDart();
    for (var point in points) {
      final squareOffset = _dartAnimationOffset +
          Vector(SquareElement.size * point.x, SquareElement.size * point.y);

      final dart =
          FlipBook(_animations.getBitmapDatas('dart'), _frameRate, false)
            ..x = squareOffset.x
            ..y = squareOffset.y
            ..mouseEnabled = false
            ..play()
            ..addTo(_dartLayer);

      dart.onComplete.listen((e) => dart.removeFromParent());

      final shadow =
          FlipBook(_animations.getBitmapDatas('shadow'), _frameRate, false)
            ..x = squareOffset.x
            ..y = squareOffset.y
            ..mouseEnabled = false
            ..play()
            ..addTo(_dartLayer);

      shadow.onComplete.listen((e) => shadow.removeFromParent());

      stage!.juggler
        ..add(dart)
        ..add(shadow);
    }
  }