From 06204f0d3682b484642daaba3fa6843766f3ac22 Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Thu, 24 Jul 2025 22:41:24 +0200 Subject: [PATCH 1/2] Implement possibilty to reopen game --- lib/data/game_session.dart | 6 ++++++ pubspec.yaml | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/data/game_session.dart b/lib/data/game_session.dart index dc100a5..dca4f52 100644 --- a/lib/data/game_session.dart +++ b/lib/data/game_session.dart @@ -247,17 +247,23 @@ class GameSession extends ChangeNotifier { List updatePoints() { List bonusPlayers = []; _sumPoints(); + bool limitExceeded = false; + if (isPointsLimitEnabled) { bonusPlayers = _checkHundredPointsReached(); for (int i = 0; i < playerScores.length; i++) { if (playerScores[i] > pointLimit) { isGameFinished = true; + limitExceeded = true; print('${players[i]} hat die 100 Punkte ueberschritten, ' 'deswegen wurde das Spiel beendet'); setWinner(); } } + if (!limitExceeded) { + isGameFinished = false; + } } notifyListeners(); return bonusPlayers; diff --git a/pubspec.yaml b/pubspec.yaml index 2658056..a79e550 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,7 +2,7 @@ name: cabo_counter description: "Mobile app for the card game Cabo" publish_to: 'none' -version: 0.5.3+596 +version: 0.5.3+597 environment: sdk: ^3.5.4 From d4be9bffba79585e3d2f562edfd91b7128bba6a2 Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Thu, 24 Jul 2025 22:46:53 +0200 Subject: [PATCH 2/2] Updated pointLimit shown in main menu --- lib/presentation/views/main_menu_view.dart | 9 +++++---- pubspec.yaml | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/presentation/views/main_menu_view.dart b/lib/presentation/views/main_menu_view.dart index 21deb97..74a7549 100644 --- a/lib/presentation/views/main_menu_view.dart +++ b/lib/presentation/views/main_menu_view.dart @@ -1,6 +1,7 @@ import 'package:cabo_counter/core/constants.dart'; import 'package:cabo_counter/core/custom_theme.dart'; import 'package:cabo_counter/data/game_manager.dart'; +import 'package:cabo_counter/data/game_session.dart'; import 'package:cabo_counter/l10n/generated/app_localizations.dart'; import 'package:cabo_counter/presentation/views/active_game_view.dart'; import 'package:cabo_counter/presentation/views/create_game_view.dart'; @@ -135,7 +136,7 @@ class _MainMenuViewState extends State { subtitle: Visibility( visible: session.isGameFinished, replacement: Text( - '${AppLocalizations.of(context).mode}: ${_translateGameMode(session.isPointsLimitEnabled)}', + '${AppLocalizations.of(context).mode}: ${_translateGameMode(session)}', style: const TextStyle(fontSize: 14), ), child: Text( @@ -216,9 +217,9 @@ class _MainMenuViewState extends State { /// Translates the game mode boolean into the corresponding String. /// If [pointLimit] is true, it returns '101 Punkte', otherwise it returns 'Unbegrenzt'. - String _translateGameMode(bool isPointLimitEnabled) { - if (isPointLimitEnabled) { - return '${ConfigService.getPointLimit()} ${AppLocalizations.of(context).points}'; + String _translateGameMode(GameSession gameSession) { + if (gameSession.isPointsLimitEnabled) { + return '${gameSession.pointLimit} ${AppLocalizations.of(context).points}'; } return AppLocalizations.of(context).unlimited; } diff --git a/pubspec.yaml b/pubspec.yaml index a79e550..a67a45f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,7 +2,7 @@ name: cabo_counter description: "Mobile app for the card game Cabo" publish_to: 'none' -version: 0.5.3+597 +version: 0.5.3+598 environment: sdk: ^3.5.4