|
|
|
@ -24,6 +24,7 @@ class GameState extends Equatable {
|
|
|
|
|
required this.activatedBonusLetters,
|
|
|
|
|
required this.bonusHistory,
|
|
|
|
|
required this.activatedDashNests,
|
|
|
|
|
required this.activatedSparkyFires,
|
|
|
|
|
}) : assert(score >= 0, "Score can't be negative"),
|
|
|
|
|
assert(balls >= 0, "Number of balls can't be negative");
|
|
|
|
|
|
|
|
|
@ -32,6 +33,7 @@ class GameState extends Equatable {
|
|
|
|
|
balls = 3,
|
|
|
|
|
activatedBonusLetters = const [],
|
|
|
|
|
activatedDashNests = const {},
|
|
|
|
|
activatedSparkyFires = const {},
|
|
|
|
|
bonusHistory = const [];
|
|
|
|
|
|
|
|
|
|
/// The current score of the game.
|
|
|
|
@ -48,6 +50,9 @@ class GameState extends Equatable {
|
|
|
|
|
/// Active dash nests.
|
|
|
|
|
final Set<String> activatedDashNests;
|
|
|
|
|
|
|
|
|
|
/// Active sparky fires.
|
|
|
|
|
final Set<String> activatedSparkyFires;
|
|
|
|
|
|
|
|
|
|
/// Holds the history of all the [GameBonus]es earned by the player during a
|
|
|
|
|
/// PinballGame.
|
|
|
|
|
final List<GameBonus> bonusHistory;
|
|
|
|
@ -64,6 +69,7 @@ class GameState extends Equatable {
|
|
|
|
|
int? balls,
|
|
|
|
|
List<int>? activatedBonusLetters,
|
|
|
|
|
Set<String>? activatedDashNests,
|
|
|
|
|
Set<String>? activatedSparkyFires,
|
|
|
|
|
List<GameBonus>? bonusHistory,
|
|
|
|
|
}) {
|
|
|
|
|
assert(
|
|
|
|
@ -77,6 +83,7 @@ class GameState extends Equatable {
|
|
|
|
|
activatedBonusLetters:
|
|
|
|
|
activatedBonusLetters ?? this.activatedBonusLetters,
|
|
|
|
|
activatedDashNests: activatedDashNests ?? this.activatedDashNests,
|
|
|
|
|
activatedSparkyFires: activatedSparkyFires ?? this.activatedSparkyFires,
|
|
|
|
|
bonusHistory: bonusHistory ?? this.bonusHistory,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
@ -87,6 +94,7 @@ class GameState extends Equatable {
|
|
|
|
|
balls,
|
|
|
|
|
activatedBonusLetters,
|
|
|
|
|
activatedDashNests,
|
|
|
|
|
activatedSparkyFires,
|
|
|
|
|
bonusHistory,
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|