animateZoom method
void
animateZoom({
- required double zoom,
- Duration? duration,
- VoidCallback? finish,
- Curve curve = Curves.decelerate,
Implementation
void animateZoom({
required double zoom,
Duration? duration,
VoidCallback? finish,
Curve curve = Curves.decelerate,
}) {
if (zoom <= 0.0 || _isMoving) return;
_isMoving = true;
double diffZoom = config.zoom - (zoom);
double initialZoom = config.zoom;
gameRef.getValueGenerator(
duration ?? Duration(seconds: 1),
onChange: (value) {
config.zoom = initialZoom - (diffZoom * value);
},
onFinish: () {
_isMoving = false;
finish?.call();
},
curve: curve,
).start();
}