feat: animated animatronic

pull/190/head
alestiago 3 years ago
parent e1b500e05c
commit d69f06fa54

@ -25,7 +25,7 @@ class FlutterForest extends Component
await super.onLoad(); await super.onLoad();
gameRef.addContactCallback(_DashNestBumperBallContactCallback()); gameRef.addContactCallback(_DashNestBumperBallContactCallback());
final signPost = FlutterSignPost()..initialPosition = Vector2(8.35, 58.3); final signPost = FlutterSignPost()..initialPosition = Vector2(8.35, -58.3);
final bigNest = _BigDashNestBumper() final bigNest = _BigDashNestBumper()
..initialPosition = Vector2(18.55, -59.35); ..initialPosition = Vector2(18.55, -59.35);
@ -58,15 +58,19 @@ class _FlutterForestController extends ComponentController<FlutterForest>
final activatedBonus = _activatedBumpers.length == 3; final activatedBonus = _activatedBumpers.length == 3;
if (activatedBonus) { if (activatedBonus) {
gameRef.read<GameBloc>().add(const BonusActivated(GameBonus.dashNest));
_addBonusBall(); _addBonusBall();
gameRef.read<GameBloc>().add(const BonusActivated(GameBonus.dashNest));
_activatedBumpers _activatedBumpers
..forEach((bumper) => bumper.deactivate()) ..forEach((bumper) => bumper.deactivate())
..clear(); ..clear();
component.firstChild<DashAnimatronic>()?.playing = true;
} }
} }
Future<void> _addBonusBall() async { Future<void> _addBonusBall() async {
// TODO(alestiago): Remove hardcoded duration.
await Future<void>.delayed(const Duration(milliseconds: 700)); await Future<void>.delayed(const Duration(milliseconds: 700));
await gameRef.add( await gameRef.add(
ControlledBall.bonus(theme: gameRef.theme) ControlledBall.bonus(theme: gameRef.theme)

Loading…
Cancel
Save