diff --git a/lib/game/components/board.dart b/lib/game/components/board.dart index e71d5ede..49595f10 100644 --- a/lib/game/components/board.dart +++ b/lib/game/components/board.dart @@ -8,7 +8,7 @@ import 'package:pinball_components/pinball_components.dart'; class Board extends Component { /// {@macro board} // TODO(alestiago): Make Board a Blueprint and sort out priorities. - Board() : super(priority: 5); + Board() : super(priority: 1); @override Future onLoad() async { diff --git a/lib/game/components/plunger.dart b/lib/game/components/plunger.dart index cc5797c0..9b7eec39 100644 --- a/lib/game/components/plunger.dart +++ b/lib/game/components/plunger.dart @@ -15,7 +15,6 @@ class Plunger extends BodyComponent with KeyboardHandler, InitialPosition { Plunger({ required this.compressionDistance, }) : super( - priority: 5, // TODO(allisonryan0002): remove paint after asset is added. paint: Paint()..color = const Color.fromARGB(255, 241, 8, 8), ); diff --git a/lib/game/pinball_game.dart b/lib/game/pinball_game.dart index e09ab461..1fa99b8c 100644 --- a/lib/game/pinball_game.dart +++ b/lib/game/pinball_game.dart @@ -35,11 +35,13 @@ class PinballGame extends Forge2DGame _addContactCallbacks(); await _addGameBoundaries(); - unawaited(add(Board())); unawaited(addFromBlueprint(Boundaries())); + unawaited(addFromBlueprint(LaunchRamp())); unawaited(_addPlunger()); + unawaited(add(Board())); + unawaited(addFromBlueprint(DinoWalls())); unawaited(_addBonusWord()); - unawaited(_addRamps()); + unawaited(addFromBlueprint(SpaceshipRamp())); unawaited( addFromBlueprint( Spaceship( @@ -68,13 +70,6 @@ class PinballGame extends Forge2DGame Future _addGameBoundaries() async { await add(BottomWall()); createBoundaries(this).forEach(add); - unawaited( - addFromBlueprint( - DinoWalls( - position: Vector2(-2.4, 0), - ), - ), - ); } Future _addPlunger() async { @@ -95,11 +90,6 @@ class PinballGame extends Forge2DGame ); } - Future _addRamps() async { - unawaited(addFromBlueprint(SpaceshipRamp())); - unawaited(addFromBlueprint(LaunchRamp())); - } - void spawnBall() { final ball = ControlledBall.launch( theme: theme, diff --git a/packages/pinball_components/lib/src/components/dino_walls.dart b/packages/pinball_components/lib/src/components/dino_walls.dart index 13f56ff3..daf83850 100644 --- a/packages/pinball_components/lib/src/components/dino_walls.dart +++ b/packages/pinball_components/lib/src/components/dino_walls.dart @@ -12,16 +12,13 @@ import 'package:pinball_components/pinball_components.dart' hide Assets; /// {@endtemplate} class DinoWalls extends Forge2DBlueprint { /// {@macro dinowalls} - DinoWalls({required this.position}); - - /// The [position] where the elements will be created - final Vector2 position; + DinoWalls(); @override void build(_) { addAll([ - _DinoTopWall()..initialPosition = position, - _DinoBottomWall()..initialPosition = position, + _DinoTopWall(), + _DinoBottomWall(), ]); } } @@ -31,7 +28,7 @@ class DinoWalls extends Forge2DBlueprint { /// {@endtemplate} class _DinoTopWall extends BodyComponent with InitialPosition { ///{@macro dino_top_wall} - _DinoTopWall() : super(priority: 2); + _DinoTopWall() : super(priority: 1); List _createFixtureDefs() { final fixturesDef = []; @@ -129,7 +126,7 @@ class _DinoTopWall extends BodyComponent with InitialPosition { /// {@endtemplate} class _DinoBottomWall extends BodyComponent with InitialPosition { ///{@macro dino_top_wall} - _DinoBottomWall() : super(priority: 2); + _DinoBottomWall() : super(priority: 1); List _createFixtureDefs() { final fixturesDef = []; diff --git a/packages/pinball_components/lib/src/components/launch_ramp.dart b/packages/pinball_components/lib/src/components/launch_ramp.dart index 5f7ee098..3268cc46 100644 --- a/packages/pinball_components/lib/src/components/launch_ramp.dart +++ b/packages/pinball_components/lib/src/components/launch_ramp.dart @@ -142,7 +142,7 @@ class _LaunchRampBase extends BodyComponent with InitialPosition, Layered { class _LaunchRampForegroundRailing extends BodyComponent with InitialPosition, Layered { /// {@macro launch_ramp_foreground_railing} - _LaunchRampForegroundRailing() : super(priority: 4) { + _LaunchRampForegroundRailing() : super(priority: 1) { layer = Layer.launcher; } @@ -207,7 +207,6 @@ class _LaunchRampForegroundRailing extends BodyComponent size: sprite.originalSize / 10, anchor: Anchor.center, position: Vector2(22.8, 0), - priority: 4, ), ); } diff --git a/packages/pinball_components/test/src/components/dino_walls_test.dart b/packages/pinball_components/test/src/components/dino_walls_test.dart index af80444b..bb85bc8e 100644 --- a/packages/pinball_components/test/src/components/dino_walls_test.dart +++ b/packages/pinball_components/test/src/components/dino_walls_test.dart @@ -1,6 +1,5 @@ // ignore_for_file: cascade_invocations -import 'package:flame_forge2d/flame_forge2d.dart'; import 'package:flame_test/flame_test.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:pinball_components/pinball_components.dart'; @@ -15,7 +14,7 @@ void main() { flameTester.test( 'loads correctly', (game) async { - final dinoWalls = DinoWalls(position: Vector2.zero()); + final dinoWalls = DinoWalls(); await game.addFromBlueprint(dinoWalls); await game.ready();