2f73d2cd155bd0817cbc6ed97933ad6d15f694b1
Livrets
Jeu d'entraînement aux tables de multiplication (Kotlin Multiplatform, Android + iOS).
Règles du jeu
- Au lancement, on configure : le nombre de questions (5–50), le temps par question (3–30 s) et la table maximum (1–12).
- Chaque question est une multiplication tirée au hasard dans les tables 1 à la table maximum :
soit
a × b = ?, soita × ? = b. On répond avec le pavé numérique. - Temps écoulé = réponse comptée comme fausse (une saisie en cours est auto-validée).
- Après chaque réponse, un feedback (vert/rouge) s'affiche 1,5 s puis la question suivante arrive.
- À la fin : score, taux de réussite, temps moyen et résumé de chaque réponse fausse.
- L'Historique conserve les parties passées et le taux de réussite cumulé par table.
Lancer l'application
Android
./gradlew :androidApp:installDebug # appareil/émulateur connecté
# ou générer l'APK :
./gradlew :androidApp:assembleDebug # androidApp/build/outputs/apk/debug/
iOS
Ouvrir iosApp/iosApp.xcodeproj dans Xcode et lancer le scheme iosApp sur un simulateur.
macOS desktop
Lancer l'application en fenêtre (480×800) depuis le terminal :
./gradlew :desktopApp:run
Les données sont stockées dans ~/.livrets/.
Play Jeux Services (Android)
Connexion silencieuse au lancement, envoi automatique du score en fin de partie et bouton « Classement » sur l'accueil (UI native Play Jeux). Hors connexion ou sans configuration console, tout échoue silencieusement : le jeu reste pleinement jouable.
Score soumis : round((somme des produits réussis) × 30 ÷ secondes par question).
Prérequis manuels dans Google Play Console :
- Créer l'app (package
com.livrets.androidApp). - Jouer → Play Jeux Services : créer le jeu, lier l'app Android, ajouter les empreintes SHA-1 debug et release.
- Créer les 10 leaderboards avec les IDs
questions_5…questions_50(« 5 questions » … « 50 questions »). - Ajouter des testeurs Play Jeux Services pour valider la connexion en dev.
Tests
./gradlew :sharedUI:jvmTest # logique de jeu, générateur, persistance
Structure
sharedUI/: logique de jeu (game/), persistance (data/), UI Compose (ui/), thème (theme/)androidApp/: hôte AndroidiosApp/: hôte iOS (Xcode)
Description
Jeu d'entraînement aux tables de multiplication — Kotlin Multiplatform + Compose Multiplatform (Android, iOS, desktop JVM)
712 KiB
0 Stars
1 Watchers
0 Forks
Languages
Kotlin
85.2%
HTML
14.3%
Swift
0.5%