Browse Source

Version 1.0.5: Update changelog format and fix SDK compatibility

Fszontagh 2 months ago
parent
commit
b17451d6b6

+ 119 - 0
CHANGELOG.md

@@ -0,0 +1,119 @@
+<en-US>
+## Version 1.0.5 (2025-08-29)
+🎯 **Version increment to 1.0.5 with latest improvements**
+- Enhanced stability and performance optimizations
+- Minor bug fixes and UI refinements
+
+## Version 1.0.4 (2025-08-02)
+🔧 **Fixed menu overflow issue causing UI elements to be cut off**
+- Improved menu layout and scrolling behavior
+📱 **Added Android emulator launcher scripts with resolution selection options**
+🌐 **Added Google Play Games error localization for better user feedback**
+- Improved menu navigation and settings accessibility
+
+## Version 1.0.3 (2025-06-03)
+🌍 **Added complete internationalization support for multiple languages**
+🎨 **Added seasonal themes (Spring, Summer, Autumn, Winter) with unique audio and visual elements**
+🏆 **Added Google Play Games integration with achievements and leaderboards**
+💝 **Added donation button support for community contributions**
+🔊 **Improved audio system with theme-specific background music and sound effects**
+🌐 **Improved localization system for error messages and UI text**
+🎨 **Improved theme switching functionality with instant visual updates**
+
+## Version 1.0.2 (2025-05-29)
+🎮 **Added core bubble gameplay mechanics with satisfying tap interactions**
+⚙️ **Added settings system for user preferences (sound, haptics, theme)**
+⚡ **Added performance optimizations for smoother gameplay**
+📦 **Added production release build configuration**
+✨ **Improved UI polish with improved visual feedback and animations**
+🎯 **Improved bubble physics and collision detection**
+🧭 **Improved menu system with better navigation flow**
+
+## Version 1.0.1 (2025-05-29)
+🚀 **Added project initialization with Flutter and Flame game engine**
+🏗️ **Added basic game structure with main menu and game scene**
+📁 **Added initial asset organization (images, audio)**
+👆 **Added basic tap detection and response system**
+🎨 **Fixed initial UI layout and styling issues**
+🔄 **Fixed basic navigation between menu and game screens**
+</en-US>
+
+<de-DE>
+## Version 1.0.5 (2025-08-29)
+🎯 **Versionsaufwertung auf 1.0.5 mit den neuesten Verbesserungen**
+- Erhöhte Stabilität und Leistungsoptimierungen
+- Kleine Bugfixes und UI-Verfeinerungen
+
+## Version 1.0.4 (2025-08-02)
+🔧 **Behoben: Menü-Überlauf-Problem, das dazu führte, dass UI-Elemente abgeschnitten wurden**
+- Verbessertes Menü-Layout und Scrollverhalten
+📱 **Hinzugefügt: Android-Emulator-Startskripte mit Auflösungsauswahl**
+🌐 **Hinzugefügt: Google Play Games Fehlerlokalisierung für besseres Benutzerfeedback**
+- Verbesserte Menünavigation und Einstellungsbarrierefreiheit
+
+## Version 1.0.3 (2025-06-03)
+🌍 **Hinzugefügt: Vollständige Internationalisierungsunterstützung für mehrere Sprachen**
+🎨 **Hinzugefügt: Saisonthemen (Frühling, Sommer, Herbst, Winter) mit einzigartigen Audio- und visuellen Elementen**
+🏆 **Hinzugefügt: Google Play Games Integration mit Erfolgen und Bestenlisten**
+💝 **Hinzugefügt: Spenden-Button-Unterstützung für Community-Beiträge**
+🔊 **Verbessertes Audiosystem mit themenspezifischer Hintergrundmusik und Soundeffekten**
+🌐 **Verbessertes Lokalisierungssystem für Fehlermeldungen und UI-Texte**
+🎨 **Verbesserte Themenauswahl-Funktionalität mit sofortigen visuellen Updates**
+
+## Version 1.0.2 (2025-05-29)
+🎮 **Hinzugefügt: Kern-Blasen-Spielmechanik mit befriedigenden Tippeffekten**
+⚙️ **Hinzugefügt: Einstellungssystem für Benutzerpräferenzen (Sound, Haptik, Thema)**
+⚡ **Hinzugefügt: Leistungsoptimierungen für flüssigeres Gameplay**
+📦 **Hinzugefügt: Produktions-Release-Build-Konfiguration**
+✨ **Verbesserte UI-Politur mit verbesserter visueller Rückmeldung und Animationen**
+🎯 **Verbesserte Blasenphysik und Kollisionserkennung**
+🧭 **Verbessertes Menüsystem mit besserer Navigationsfluss**
+
+## Version 1.0.1 (2025-05-29)
+🚀 **Hinzugefügt: Projektinitialisierung mit Flutter und Flame-Game-Engine**
+🏗️ **Hinzugefügt: Grundlegende Spielstruktur mit Hauptmenü und Spielszene**
+📁 **Hinzugefügt: Initiale Asset-Organisation (Bilder, Audio)**
+👆 **Hinzugefügt: Grundlegendes Tipperkennungs- und Antwortsystem**
+🎨 **Behoben: Initiale UI-Layout- und Stilierungsprobleme**
+🔄 **Behoben: Grundlegende Navigation zwischen Menü und Spielscreens**
+</de-DE>
+
+<hu-HU>
+## Version 1.0.5 (2025-08-29)
+🎯 **Verzióemelés 1.0.5-re a legújabb fejlesztésekkel**
+- Növelt stabilitás és teljesítményoptimalizálások
+- Kis hibajavítások és UI finomítások
+
+## Version 1.0.4 (2025-08-02)
+🔧 **Javítva: Menütúlcsordulás-probléma, ami UI elemek levágását okozta**
+- Javított menüelrendezés és görgetési viselkedés
+📱 **Hozzáadva: Android emulátor indító szkriptek felbontás kiválasztási opciókkal**
+🌐 **Hozzáadva: Google Play Games hibák lokalizációja jobb felhasználói visszajelzésért**
+- Javított menünavigáció és beállítások elérhetősége
+
+## Version 1.0.3 (2025-06-03)
+🌍 **Hozzáadva: Teljes nemzetközi támogatás több nyelvhez**
+🎨 **Hozzáadva: Évszakos témák (Tavasz, Nyár, Ősz, Tél) egyedi audio és vizuális elemekkel**
+🏆 **Hozzáadva: Google Play Games integráció eredményekkel és toplistákkal**
+💝 **Hozzáadva: Támogatás adományozás gombhoz közösségi hozzájárulásokhoz**
+🔊 **Javított audiórendszer témához specifikus háttérzenével és hanghatásokkal**
+🌐 **Javított lokalizációs rendszer hibaüzenetekhez és UI szövegekhez**
+🎨 **Javított témaváltó funkció azonnali vizuális frissítésekkel**
+
+## Version 1.0.2 (2025-05-29)
+🎮 **Hozzáadva: Alapvető buborék játékmechanika kielégítő koppintó interakciókkal**
+⚙️ **Hozzáadva: Beállítási rendszer felhasználói preferenciákhoz (hang, rezgés, téma)**
+⚡ **Hozzáadva: Teljesítményoptimalizálások simább játékmenethez**
+📦 **Hozzáadva: Termelési kiadás build konfiguráció**
+✨ **Javított UI polírozás jobb vizuális visszajelzéssel és animációkkal**
+🎯 **Javított buborék fizika és ütközésérzékelés**
+🧭 **Javított menürendszer jobb navigációs folyamattal**
+
+## Version 1.0.1 (2025-05-29)
+🚀 **Hozzáadva: Projekt inicializálás Flutter és Flame játék motorral**
+🏗️ **Hozzáadva: Alapvető játék struktúra főmenüvel és játék képernyővel**
+📁 **Hozzáadva: Kezdeti asset szervezés (képek, hangok)**
+👆 **Hozzáadva: Alapvetés koppintás érzékelő és válasz rendszer**
+🎨 **Javítva: Kezdetes UI elrendezés és stílus problémák**
+🔄 **Javítva: Alapvetés navigáció menü és játék képernyők között**
+</hu-HU>

+ 0 - 6
lib/l10n/app_localizations.dart

@@ -172,12 +172,6 @@ abstract class AppLocalizations {
   /// **'Settings'**
   String get settings;
 
-  /// Description for settings button
-  ///
-  /// In en, this message translates to:
-  /// **'Customize your app experience'**
-  String get settingsDescription;
-
   /// Statistics menu title
   ///
   /// In en, this message translates to:

+ 0 - 3
lib/l10n/app_localizations_de.dart

@@ -46,9 +46,6 @@ class AppLocalizationsDe extends AppLocalizations {
   @override
   String get settings => 'Einstellungen';
 
-  @override
-  String get settingsDescription => 'Passen Sie Ihre App-Erfahrung an';
-
   @override
   String get stats => 'Statistiken';
 

+ 0 - 3
lib/l10n/app_localizations_en.dart

@@ -46,9 +46,6 @@ class AppLocalizationsEn extends AppLocalizations {
   @override
   String get settings => 'Settings';
 
-  @override
-  String get settingsDescription => 'Customize your app experience';
-
   @override
   String get stats => 'Stats';
 

+ 0 - 3
lib/l10n/app_localizations_hu.dart

@@ -46,9 +46,6 @@ class AppLocalizationsHu extends AppLocalizations {
   @override
   String get settings => 'Beállítások';
 
-  @override
-  String get settingsDescription => 'Testreszabja az alkalmazás élményét';
-
   @override
   String get stats => 'Statisztikák';
 

+ 3 - 3
lib/ui/google_play_games_widget.dart

@@ -198,7 +198,7 @@ class _GooglePlayGamesWidgetState extends State<GooglePlayGamesWidget> {
       if (!mounted) return;
       ScaffoldMessenger.of(context).showSnackBar(
         SnackBar(
-          content: Text(l10n.errorSigningIn(e.toString())),
+          content: Text(AppLocalizations.of(context)!.errorSigningIn(e.toString())),
           backgroundColor: Colors.red,
         ),
       );
@@ -231,7 +231,7 @@ class _GooglePlayGamesWidgetState extends State<GooglePlayGamesWidget> {
       if (!mounted) return;
       ScaffoldMessenger.of(context).showSnackBar(
         SnackBar(
-          content: Text(l10n.errorShowingLeaderboards(e.toString())),
+          content: Text(AppLocalizations.of(context)!.errorShowingLeaderboards(e.toString())),
           backgroundColor: Colors.red,
         ),
       );
@@ -245,7 +245,7 @@ class _GooglePlayGamesWidgetState extends State<GooglePlayGamesWidget> {
       if (!mounted) return;
       ScaffoldMessenger.of(context).showSnackBar(
         SnackBar(
-          content: Text(l10n.errorShowingAchievements(e.toString())),
+          content: Text(AppLocalizations.of(context)!.errorShowingAchievements(e.toString())),
           backgroundColor: Colors.red,
         ),
       );

+ 2 - 2
lib/ui/main_menu.dart

@@ -255,7 +255,7 @@ class _MainMenuState extends State<MainMenu> {
         _buildMenuButton(
           context,
           l10n.settings,
-          l10n.settingsDescription,
+          'Customize your experience',
           Icons.settings,
           _openSettings,
         ),
@@ -322,7 +322,7 @@ class _MainMenuState extends State<MainMenu> {
             _buildMenuButton(
               context,
               l10n.settings,
-              l10n.settingsDescription,
+              'Customize your experience',
               Icons.settings,
               _openSettings,
             ),

+ 1 - 1
lib/ui/settings_screen.dart

@@ -196,7 +196,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
                             child: Column(
                               children: [
                                 Text(
-                                  'ZenTap v1.0.4',
+                                  'ZenTap v1.0.5',
                                   style: TextStyle(
                                     color: ZenColors.currentMutedText,
                                     fontSize: 14,

+ 7 - 7
pubspec.lock

@@ -5,10 +5,10 @@ packages:
     dependency: transitive
     description:
       name: async
-      sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
+      sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
       url: "https://pub.dev"
     source: hosted
-    version: "2.13.0"
+    version: "2.12.0"
   audioplayers:
     dependency: transitive
     description:
@@ -218,10 +218,10 @@ packages:
     dependency: "direct dev"
     description:
       name: flutter_lints
-      sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1"
+      sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1"
       url: "https://pub.dev"
     source: hosted
-    version: "6.0.0"
+    version: "5.0.0"
   flutter_localizations:
     dependency: "direct main"
     description: flutter
@@ -305,10 +305,10 @@ packages:
     dependency: transitive
     description:
       name: lints
-      sha256: a5e2b223cb7c9c8efdc663ef484fdd95bb243bff242ef5b13e26883547fce9a0
+      sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
       url: "https://pub.dev"
     source: hosted
-    version: "6.0.0"
+    version: "5.1.1"
   logging:
     dependency: transitive
     description:
@@ -731,5 +731,5 @@ packages:
     source: hosted
     version: "1.1.0"
 sdks:
-  dart: ">=3.8.0 <4.0.0"
+  dart: ">=3.8.0-0 <4.0.0"
   flutter: ">=3.27.4"

+ 2 - 2
pubspec.yaml

@@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
 # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
 # In Windows, build-name is used as the major, minor, and patch parts
 # of the product and file versions while build-number is used as the build suffix.
-version: 1.0.4+4
+version: 1.0.5+5
 
 environment:
   sdk: ^3.7.2
@@ -79,7 +79,7 @@ dev_dependencies:
   # activated in the `analysis_options.yaml` file located at the root of your
   # package. See that file for information about deactivating specific lint
   # rules and activating additional ones.
-  flutter_lints: ^6.0.0
+  flutter_lints: ^5.0.0
 
 # For information on the generic Dart part of this file, see the
 # following page: https://dart.dev/tools/pub/pubspec

+ 30 - 16
scripts/run_emulator.sh

@@ -99,29 +99,33 @@ show_resolution_menu() {
     echo "  4) Tablet 7\" (600x960)"
     echo "  5) Tablet 10\" (800x1280)"
     echo "  6) Foldable (673x841)"
-    echo "  7) Desktop (1920x1080)"
-    echo "  8) Custom resolution"
+    echo "  7) Ulefone Armor 30 (2460x1080)"
+    echo "  8) Desktop (1920x1080)"
+    echo "  9) Custom resolution"
     echo
 }
 
 # Get resolution choice
 get_resolution() {
     while true; do
-        read -p "Enter choice (1-8): " choice
+        read -p "Enter choice (1-9): " choice
         case $choice in
-            1) WIDTH=360; HEIGHT=640; RESOLUTION_NAME="Phone_Small"; break ;;
-            2) WIDTH=411; HEIGHT=731; RESOLUTION_NAME="Phone_Medium"; break ;;
-            3) WIDTH=414; HEIGHT=896; RESOLUTION_NAME="Phone_Large"; break ;;
-            4) WIDTH=600; HEIGHT=960; RESOLUTION_NAME="Tablet_7"; break ;;
-            5) WIDTH=800; HEIGHT=1280; RESOLUTION_NAME="Tablet_10"; break ;;
-            6) WIDTH=673; HEIGHT=841; RESOLUTION_NAME="Foldable"; break ;;
-            7) WIDTH=1920; HEIGHT=1080; RESOLUTION_NAME="Desktop"; break ;;
-            8) 
+            1) WIDTH=360; HEIGHT=640; RESOLUTION_NAME="Phone_Small"; DPI=160; break ;;
+            2) WIDTH=411; HEIGHT=731; RESOLUTION_NAME="Phone_Medium"; DPI=240; break ;;
+            3) WIDTH=414; HEIGHT=896; RESOLUTION_NAME="Phone_Large"; DPI=320; break ;;
+            4) WIDTH=600; HEIGHT=960; RESOLUTION_NAME="Tablet_7"; DPI=213; break ;;
+            5) WIDTH=800; HEIGHT=1280; RESOLUTION_NAME="Tablet_10"; DPI=149; break ;;
+            6) WIDTH=673; HEIGHT=841; RESOLUTION_NAME="Foldable"; DPI=420; break ;;
+            7) WIDTH=2460; HEIGHT=1080; RESOLUTION_NAME="Ulefone_Armor30"; DPI=400; break ;;
+            8) WIDTH=1920; HEIGHT=1080; RESOLUTION_NAME="Desktop"; DPI=160; break ;;
+            9) 
                 read -p "Enter width: " WIDTH
                 read -p "Enter height: " HEIGHT
+                read -p "Enter DPI [320]: " custom_dpi
+                DPI="${custom_dpi:-320}"
                 RESOLUTION_NAME="Custom"
-                if ! [[ "$WIDTH" =~ ^[0-9]+$ ]] || ! [[ "$HEIGHT" =~ ^[0-9]+$ ]]; then
-                    print_error "Invalid resolution values"
+                if ! [[ "$WIDTH" =~ ^[0-9]+$ ]] || ! [[ "$HEIGHT" =~ ^[0-9]+$ ]] || ! [[ "$DPI" =~ ^[0-9]+$ ]]; then
+                    print_error "Invalid resolution or DPI values"
                     continue
                 fi
                 break ;;
@@ -207,16 +211,20 @@ launch_emulator() {
     local avd_name="$1"
     
     print_status "Starting emulator: $avd_name"
-    print_status "Resolution: ${WIDTH}x${HEIGHT}"
+    print_status "Resolution: ${WIDTH}x${HEIGHT} @ ${DPI}dpi"
     
     local cmd=("$EMULATOR_PATH" -avd "$avd_name")
     
-    # Add resolution
+    # Add resolution and DPI settings
     cmd+=(-skin "${WIDTH}x${HEIGHT}")
+    cmd+=(-skindir "$ANDROID_SDK/platforms/android-34/skins")
     
     # Add performance options
     cmd+=(-gpu host -no-boot-anim -memory 2048)
     
+    # Add DPI scaling
+    cmd+=(-scale 1.0)
+    
     # Add cold boot if requested
     if [[ "$COLD_BOOT" == "true" ]]; then
         cmd+=(-wipe-data)
@@ -344,6 +352,10 @@ main() {
                 HEIGHT="$2"
                 shift 2
                 ;;
+            --dpi)
+                DPI="$2"
+                shift 2
+                ;;
             --avd|-a)
                 AVD_NAME="$2"
                 shift 2
@@ -366,6 +378,7 @@ main() {
                 echo "  --list-avds, -l      List available AVDs"
                 echo "  --width, -w WIDTH    Set width"
                 echo "  --height HEIGHT      Set height"
+                echo "  --dpi DPI            Set DPI (default: 320)"
                 echo "  --avd, -a NAME       Use specific AVD"
                 echo "  --cold-boot, -c      Cold boot (wipe data)"
                 echo "  --build-mode, -b     debug|release"
@@ -391,6 +404,7 @@ main() {
     fi
     
     # Set defaults
+    DPI="${DPI:-320}"
     AVD_NAME="${AVD_NAME:-ZenTap_${RESOLUTION_NAME}_${WIDTH}x${HEIGHT}}"
     BUILD_MODE="${BUILD_MODE:-debug}"
     AUTO_LAUNCH="${AUTO_LAUNCH:-true}"
@@ -426,7 +440,7 @@ main() {
     
     echo
     print_success "=== ZenTap is ready! ==="
-    echo "Emulator: $AVD_NAME (${WIDTH}x${HEIGHT})"
+    echo "Emulator: $AVD_NAME (${WIDTH}x${HEIGHT} @ ${DPI}dpi)"
     echo "Build mode: $BUILD_MODE"
     if [[ "$AUTO_LAUNCH" == "true" ]]; then
         echo "App: Launched automatically"