refactor: _PlungerSpriteAnimationGroupComponent load sprites onload

pull/200/head
RuiAlonso 3 years ago
parent e217141022
commit 9845cd0490

@ -107,14 +107,8 @@ class Plunger extends BodyComponent with InitialPosition, Layered {
Future<void> onLoad() async { Future<void> onLoad() async {
await super.onLoad(); await super.onLoad();
await _anchorToJoint(); await _anchorToJoint();
await _loadSprite();
}
Future<void> _loadSprite() async { _spriteComponent = _PlungerSpriteAnimationGroupComponent();
final spriteSheet = await gameRef.images.load(
Assets.images.plunger.plunger.keyName,
);
_spriteComponent = _PlungerSpriteAnimationGroupComponent(spriteSheet);
await add(_spriteComponent); await add(_spriteComponent);
} }
} }
@ -132,11 +126,24 @@ enum _PlungerAnimationState {
class _PlungerSpriteAnimationGroupComponent class _PlungerSpriteAnimationGroupComponent
extends SpriteAnimationGroupComponent<_PlungerAnimationState> extends SpriteAnimationGroupComponent<_PlungerAnimationState>
with HasGameRef { with HasGameRef {
_PlungerSpriteAnimationGroupComponent(Image spriteSheet) _PlungerSpriteAnimationGroupComponent()
: super( : super(
anchor: Anchor.center, anchor: Anchor.center,
position: Vector2(1.87, 14.9), position: Vector2(1.87, 14.9),
) { );
void pull() => current = _PlungerAnimationState.pull;
void release() => current = _PlungerAnimationState.release;
@override
Future<void>? onLoad() async {
await super.onLoad();
final spriteSheet = await gameRef.images.load(
Assets.images.plunger.plunger.keyName,
);
const amountPerRow = 20; const amountPerRow = 20;
const amountPerColumn = 1; const amountPerColumn = 1;
@ -169,10 +176,6 @@ class _PlungerSpriteAnimationGroupComponent
}; };
current = _PlungerAnimationState.release; current = _PlungerAnimationState.release;
} }
void pull() => current = _PlungerAnimationState.pull;
void release() => current = _PlungerAnimationState.release;
} }
/// {@template plunger_anchor} /// {@template plunger_anchor}

Loading…
Cancel
Save