refactor: adjusted Kicker constructor

pull/283/head
alestiago 3 years ago
parent 6d833de9c8
commit 3d9e669d2f

@ -50,7 +50,6 @@ class _BottomGroupSide extends Component {
); );
final kicker = Kicker( final kicker = Kicker(
side: _side, side: _side,
bloc: KickerCubit(),
children: [ children: [
ScoringBehavior(points: 5000)..applyTo(['bouncy_edge']), ScoringBehavior(points: 5000)..applyTo(['bouncy_edge']),
], ],

@ -21,6 +21,15 @@ export 'cubit/kicker_cubit.dart';
class Kicker extends BodyComponent with InitialPosition { class Kicker extends BodyComponent with InitialPosition {
/// {@macro kicker} /// {@macro kicker}
Kicker({ Kicker({
required BoardSide side,
Iterable<Component>? children,
}) : this._(
side: side,
bloc: KickerCubit(),
children: children,
);
Kicker._({
required BoardSide side, required BoardSide side,
required this.bloc, required this.bloc,
Iterable<Component>? children, Iterable<Component>? children,
@ -47,7 +56,8 @@ class Kicker extends BodyComponent with InitialPosition {
@visibleForTesting @visibleForTesting
Kicker.test({ Kicker.test({
required this.bloc, required this.bloc,
}) : _side = BoardSide.left; required BoardSide side,
}) : _side = side;
// TODO(alestiago): Consider refactoring once the following is merged: // TODO(alestiago): Consider refactoring once the following is merged:
// https://github.com/flame-engine/flame/pull/1538 // https://github.com/flame-engine/flame/pull/1538

@ -27,9 +27,9 @@ class KickerGame extends BallGame {
final center = screenToWorld(camera.viewport.canvasSize! / 2); final center = screenToWorld(camera.viewport.canvasSize! / 2);
await addAll( await addAll(
[ [
Kicker(side: BoardSide.left, bloc: KickerCubit()) Kicker(side: BoardSide.left)
..initialPosition = Vector2(center.x - 8.8, center.y), ..initialPosition = Vector2(center.x - 8.8, center.y),
Kicker(side: BoardSide.right, bloc: KickerCubit()) Kicker(side: BoardSide.right)
..initialPosition = Vector2(center.x + 8.8, center.y), ..initialPosition = Vector2(center.x + 8.8, center.y),
], ],
); );

@ -34,7 +34,10 @@ void main() {
initialState: KickerState.lit, initialState: KickerState.lit,
); );
final kicker = Kicker.test(bloc: bloc); final kicker = Kicker.test(
side: BoardSide.left,
bloc: bloc,
);
await kicker.add(behavior); await kicker.add(behavior);
await game.ensureAdd(kicker); await game.ensureAdd(kicker);

@ -28,7 +28,10 @@ void main() {
initialState: KickerState.lit, initialState: KickerState.lit,
); );
final kicker = Kicker.test(bloc: bloc); final kicker = Kicker.test(
side: BoardSide.left,
bloc: bloc,
);
await kicker.add(behavior); await kicker.add(behavior);
await game.ensureAdd(kicker); await game.ensureAdd(kicker);

@ -27,11 +27,11 @@ void main() {
await game.images.loadAll(assets); await game.images.loadAll(assets);
final leftKicker = Kicker( final leftKicker = Kicker(
side: BoardSide.left, side: BoardSide.left,
bloc: KickerCubit(), )
)..initialPosition = Vector2(-20, 0); ..initialPosition = Vector2(-20, 0)
..renderBody = false;
final rightKicker = Kicker( final rightKicker = Kicker(
side: BoardSide.right, side: BoardSide.right,
bloc: KickerCubit(),
)..initialPosition = Vector2(20, 0); )..initialPosition = Vector2(20, 0);
await game.ensureAddAll([leftKicker, rightKicker]); await game.ensureAddAll([leftKicker, rightKicker]);
@ -49,7 +49,7 @@ void main() {
flameTester.test( flameTester.test(
'loads correctly', 'loads correctly',
(game) async { (game) async {
final kicker = Kicker( final kicker = Kicker.test(
side: BoardSide.left, side: BoardSide.left,
bloc: KickerCubit(), bloc: KickerCubit(),
); );
@ -70,7 +70,10 @@ void main() {
initialState: KickerState.lit, initialState: KickerState.lit,
); );
when(bloc.close).thenAnswer((_) async {}); when(bloc.close).thenAnswer((_) async {});
final kicker = Kicker.test(bloc: bloc); final kicker = Kicker.test(
side: BoardSide.left,
bloc: bloc,
);
await game.ensureAdd(kicker); await game.ensureAdd(kicker);
game.remove(kicker); game.remove(kicker);
@ -85,7 +88,6 @@ void main() {
final kicker = Kicker( final kicker = Kicker(
side: BoardSide.left, side: BoardSide.left,
children: [component], children: [component],
bloc: KickerCubit(),
); );
await game.ensureAdd(kicker); await game.ensureAdd(kicker);
expect(kicker.children, contains(component)); expect(kicker.children, contains(component));
@ -94,7 +96,6 @@ void main() {
flameTester.test('a BumpingBehavior', (game) async { flameTester.test('a BumpingBehavior', (game) async {
final kicker = Kicker( final kicker = Kicker(
side: BoardSide.left, side: BoardSide.left,
bloc: KickerCubit(),
); );
await game.ensureAdd(kicker); await game.ensureAdd(kicker);
expect( expect(
@ -106,7 +107,6 @@ void main() {
flameTester.test('a KickerBallContactBehavior', (game) async { flameTester.test('a KickerBallContactBehavior', (game) async {
final kicker = Kicker( final kicker = Kicker(
side: BoardSide.left, side: BoardSide.left,
bloc: KickerCubit(),
); );
await game.ensureAdd(kicker); await game.ensureAdd(kicker);
expect( expect(
@ -118,7 +118,6 @@ void main() {
flameTester.test('a KickerBlinkingBehavior', (game) async { flameTester.test('a KickerBlinkingBehavior', (game) async {
final kicker = Kicker( final kicker = Kicker(
side: BoardSide.left, side: BoardSide.left,
bloc: KickerCubit(),
); );
await game.ensureAdd(kicker); await game.ensureAdd(kicker);
expect( expect(

Loading…
Cancel
Save