|
|
@ -5,8 +5,7 @@ import 'package:pinball_components/pinball_components.dart';
|
|
|
|
import 'package:pinball_flame/pinball_flame.dart';
|
|
|
|
import 'package:pinball_flame/pinball_flame.dart';
|
|
|
|
|
|
|
|
|
|
|
|
/// Adds a [GameBonus.googleWord] when all [GoogleLetter]s are activated.
|
|
|
|
/// Adds a [GameBonus.googleWord] when all [GoogleLetter]s are activated.
|
|
|
|
class GoogleWordBonusBehavior extends Component
|
|
|
|
class GoogleWordBonusBehavior extends Component {
|
|
|
|
with FlameBlocReader<GameBloc, GameState> {
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
await super.onLoad();
|
|
|
|
await super.onLoad();
|
|
|
@ -15,7 +14,8 @@ class GoogleWordBonusBehavior extends Component
|
|
|
|
listenWhen: (_, state) => state.letterSpriteStates.values
|
|
|
|
listenWhen: (_, state) => state.letterSpriteStates.values
|
|
|
|
.every((element) => element == GoogleLetterSpriteState.lit),
|
|
|
|
.every((element) => element == GoogleLetterSpriteState.lit),
|
|
|
|
onNewState: (state) {
|
|
|
|
onNewState: (state) {
|
|
|
|
bloc.add(const BonusActivated(GameBonus.googleWord));
|
|
|
|
readBloc<GameBloc, GameState>()
|
|
|
|
|
|
|
|
.add(const BonusActivated(GameBonus.googleWord));
|
|
|
|
readBloc<GoogleWordCubit, GoogleWordState>().onBonusAwarded();
|
|
|
|
readBloc<GoogleWordCubit, GoogleWordState>().onBonusAwarded();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|