From e235a164da3aba8974838432ad8a39ee7df5773e Mon Sep 17 00:00:00 2001 From: alestiago Date: Thu, 31 Mar 2022 15:55:50 +0100 Subject: [PATCH] chore: rebase --- lib/game/components/flutter_forest.dart | 72 +++++++++++++++++++++++-- lib/game/pinball_game.dart | 2 +- 2 files changed, 69 insertions(+), 5 deletions(-) diff --git a/lib/game/components/flutter_forest.dart b/lib/game/components/flutter_forest.dart index 6eb3ce7d..49f2ff7a 100644 --- a/lib/game/components/flutter_forest.dart +++ b/lib/game/components/flutter_forest.dart @@ -46,11 +46,11 @@ class FlutterForest extends Component final signPost = FlutterSignPost()..initialPosition = Vector2(8.35, 58.3); // TODO(alestiago): adjust positioning once sprites are added. - final smallLeftNest = SmallDashNestBumper(id: 'small_left_nest') + final smallLeftNest = _SmallDashNestBumperA(id: 'small_nest_bumper_a') ..initialPosition = Vector2(8.95, 51.95); - final smallRightNest = SmallDashNestBumper(id: 'small_right_nest') + final smallRightNest = _SmallDashNestBumperB(id: 'small_nest_bumper_b') ..initialPosition = Vector2(23.3, 46.75); - final bigNest = BigDashNestBumper(id: 'big_nest') + final bigNest = BigDashNestBumper(id: 'big_nest_bumper') ..initialPosition = Vector2(18.55, 59.35); await addAll([ @@ -102,6 +102,24 @@ class BigDashNestBumper extends DashNestBumper { @override int get points => 20; + Future _loadSprite() async { + final sprite = await gameRef.loadSprite( + Assets.images.dashBumper.main.inactive.keyName, + ); + final spriteComponent = SpriteComponent( + sprite: sprite, + size: Vector2(10.8, 8.6), + anchor: Anchor.center, + ); + await add(spriteComponent); + } + + @override + Future onLoad() async { + await super.onLoad(); + await _loadSprite(); + } + @override Body createBody() { final shape = EllipseShape( @@ -121,7 +139,7 @@ class BigDashNestBumper extends DashNestBumper { /// {@macro dash_nest_bumper} @visibleForTesting -class SmallDashNestBumper extends DashNestBumper { +abstract class SmallDashNestBumper extends DashNestBumper { /// {@macro dash_nest_bumper} SmallDashNestBumper({required String id}) : super(id: id); @@ -146,3 +164,49 @@ class SmallDashNestBumper extends DashNestBumper { return world.createBody(bodyDef)..createFixture(fixtureDef); } } + +class _SmallDashNestBumperA extends SmallDashNestBumper { + _SmallDashNestBumperA({required String id}) : super(id: id); + + Future _loadSprite() async { + final sprite = await gameRef.loadSprite( + Assets.images.dashBumper.a.inactive.keyName, + ); + final spriteComponent = SpriteComponent( + sprite: sprite, + size: Vector2(7.1, 7.5), + anchor: Anchor.center, + position: Vector2(0.35, -1.2), + ); + await add(spriteComponent); + } + + @override + Future onLoad() async { + await super.onLoad(); + await _loadSprite(); + } +} + +class _SmallDashNestBumperB extends SmallDashNestBumper { + _SmallDashNestBumperB({required String id}) : super(id: id); + + Future _loadSprite() async { + final sprite = await gameRef.loadSprite( + Assets.images.dashBumper.b.inactive.keyName, + ); + final spriteComponent = SpriteComponent( + sprite: sprite, + size: Vector2(7.5, 7.4), + anchor: Anchor.center, + position: Vector2(0.35, -1.2), + ); + await add(spriteComponent); + } + + @override + Future onLoad() async { + await super.onLoad(); + await _loadSprite(); + } +} diff --git a/lib/game/pinball_game.dart b/lib/game/pinball_game.dart index b5162053..d0725d73 100644 --- a/lib/game/pinball_game.dart +++ b/lib/game/pinball_game.dart @@ -115,7 +115,7 @@ class DebugPinballGame extends PinballGame with TapDetector { @override Future onLoad() async { await super.onLoad(); - await _loadBackground(); + // await _loadBackground(); } // TODO(alestiago): Move to PinballGame once we have the real background