From 9845cd0490497fcfc9eaa610cc4a66dcddebebf2 Mon Sep 17 00:00:00 2001 From: RuiAlonso Date: Tue, 19 Apr 2022 16:31:34 +0200 Subject: [PATCH] refactor: _PlungerSpriteAnimationGroupComponent load sprites onload --- .../lib/src/components/plunger.dart | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/packages/pinball_components/lib/src/components/plunger.dart b/packages/pinball_components/lib/src/components/plunger.dart index 1a3c2a1c..bed9e5e8 100644 --- a/packages/pinball_components/lib/src/components/plunger.dart +++ b/packages/pinball_components/lib/src/components/plunger.dart @@ -107,14 +107,8 @@ class Plunger extends BodyComponent with InitialPosition, Layered { Future onLoad() async { await super.onLoad(); await _anchorToJoint(); - await _loadSprite(); - } - Future _loadSprite() async { - final spriteSheet = await gameRef.images.load( - Assets.images.plunger.plunger.keyName, - ); - _spriteComponent = _PlungerSpriteAnimationGroupComponent(spriteSheet); + _spriteComponent = _PlungerSpriteAnimationGroupComponent(); await add(_spriteComponent); } } @@ -132,11 +126,24 @@ enum _PlungerAnimationState { class _PlungerSpriteAnimationGroupComponent extends SpriteAnimationGroupComponent<_PlungerAnimationState> with HasGameRef { - _PlungerSpriteAnimationGroupComponent(Image spriteSheet) + _PlungerSpriteAnimationGroupComponent() : super( - anchor: Anchor.center, + anchor: Anchor.center, position: Vector2(1.87, 14.9), - ) { + ); + + void pull() => current = _PlungerAnimationState.pull; + + void release() => current = _PlungerAnimationState.release; + + @override + Future? onLoad() async { + await super.onLoad(); + + final spriteSheet = await gameRef.images.load( + Assets.images.plunger.plunger.keyName, + ); + const amountPerRow = 20; const amountPerColumn = 1; @@ -169,10 +176,6 @@ class _PlungerSpriteAnimationGroupComponent }; current = _PlungerAnimationState.release; } - - void pull() => current = _PlungerAnimationState.pull; - - void release() => current = _PlungerAnimationState.release; } /// {@template plunger_anchor}