User prompt
Regles les problèmes daffichages des questions
User prompt
je veux personnalisé le fond du jeu avec mon propre asset
User prompt
Ajoute plus de questions a chaque niveau du quizz
User prompt
Ajoute plus de questions
User prompt
ajoute plus de questions de gestion finance : sur le PGI, LE SIC, les modalités de financements, etc
User prompt
fait en sorte que le jeu reprenne au niveau 1 une fois que le joueur a finis le quizz et non pas au niveau 8
User prompt
le boutton doit etre en haut au centre u pire ajoute un boutton qui lorsque le joueur appuie dessus il peut revenir au niveau 1 et refaire le quizz depuis le début, ce boutton doit etre disponible nimporte quand
User prompt
au pire ajoute un boutton qui lorsque le joueur appuie dessus il peut revenir au niveau 1 et refaire le quizz depuis le début, ce boutton doit etre disponible nimporte quand
User prompt
fait en sorte que le joueur retourne au niveau 1 pour refaire le quizz depuis le début quand il la terminé, et mets plus de questions par niveau
User prompt
ajoute plus de questions et 20 autres niveaux de quizz avec pleins d'autres questions, fait en sorte que quand le quizz est finis le joueur retourne au tout début au niveau 1 sil veut le refaire et installe un systeme de note basé sur le nombre de bonnes réponses
User prompt
ajoute 5 autres niveaux de quizz avec pleins d'autres questions de gestion finance
User prompt
ajoute plus de questions notamment sur : - Tous les systèmes de BFR, FRNG, trésorerie nette, actif circulant, passif circulant, les formules, les enregistrements des immobilisations et comptabilité dans les journaux (avec les tableaux, les classes, au débit, crédit etc...) , - Les comptes, les différentes classes de comptabilité (comme 411 clients,512 banques etc...) - Tout le chapitre de la gestion de trésorerie - L’enregistrement des flux en partie double
User prompt
ajoute plus de questions
User prompt
ajoute plus de questions en rapport avec la gestion finance au programme en terminale stmg (BFR, FRNG, trésorerie nette, résultat comptable, inventaire des comptes etc...)
Code edit (1 edits merged)
Please save this source code
User prompt
Quiz Bac STMG : Défis Gestion & Finance
Initial prompt
Créer moi un jeu de quizz amusant avec defis et niveaux pour réviser le bac STMG gestion finance en terminal
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); var storage = LK.import("@upit/storage.v1", { level: 1, progress: 0, score: 0 }); /**** * Classes ****/ // Answer Button Class var AnswerButton = Container.expand(function () { var self = Container.call(this); // Default width/height for answer buttons var btnWidth = 1600; var btnHeight = 200; // Attach rectangle shape as button background var btnBg = self.attachAsset('answerBtn', { width: btnWidth, height: btnHeight, color: 0x2d8cff, shape: 'box', anchorX: 0.5, anchorY: 0.5 }); // Text label for answer var label = new Text2('', { size: 80, fill: 0xFFFFFF }); label.anchor.set(0.5, 0.5); self.addChild(label); // Set answer text self.setText = function (txt) { label.setText(txt); // Adjust text size based on length if (txt.length > 80) { label.size = 60; } else if (txt.length > 50) { label.size = 70; } else { label.size = 80; } }; // Set button color (for feedback) self.setColor = function (color) { btnBg.color = color; }; // Reset color to default self.resetColor = function () { btnBg.color = 0x2d8cff; }; // Store answer index for event handling self.answerIndex = -1; return self; }); // Next Button Class var NextButton = Container.expand(function () { var self = Container.call(this); var btnWidth = 600; var btnHeight = 120; var btnBg = self.attachAsset('nextBtn', { width: btnWidth, height: btnHeight, color: 0x44b86b, shape: 'box', anchorX: 0.5, anchorY: 0.5 }); var label = new Text2('Suivant', { size: 70, fill: 0xFFFFFF }); label.anchor.set(0.5, 0.5); self.addChild(label); return self; }); // Progress Bar Class var ProgressBar = Container.expand(function () { var self = Container.call(this); var barWidth = 1200; var barHeight = 40; // Background var bg = self.attachAsset('progressBg', { width: barWidth, height: barHeight, color: 0xcccccc, shape: 'box', anchorX: 0, anchorY: 0.5 }); // Foreground (progress) var fg = self.attachAsset('progressFg', { width: barWidth, height: barHeight, color: 0x44b86b, shape: 'box', anchorX: 0, anchorY: 0.5 }); fg.width = 0; // Set progress (0 to 1) self.setProgress = function (p) { fg.width = barWidth * p; }; return self; }); /**** * Initialize Game ****/ /**** * Quiz Data (MVP: 2 levels, 5 questions each) ****/ var game = new LK.Game({ backgroundColor: 0xf7f7f7 }); /**** * Game Code ****/ /**** * Quiz Data (MVP: 2 levels, 5 questions each) ****/ // No images or sounds for MVP. // Progress bar: Rectangle. // Question area: Rectangle background. // Buttons: Rectangles, different colors for answer options and navigation. // Quiz game: We'll use simple shapes for buttons and backgrounds, and text for questions/answers. // --- Global State --- // 27 niveaux de quiz, chaque niveau avec des questions avancées de gestion finance, BFR, FRNG, trésorerie, écritures, classes de comptes, etc. var quizLevels = [/* ... (Niveaux 1 à 7 inchangés, voir code existant) ... */ // Niveaux 8 à 27 enrichis avec plus de questions { name: "Niveau 8: Tableaux de flux", questions: [{ q: "Dans un tableau de flux de trésorerie, où classe-t-on l'achat d'une immobilisation ?", options: ["Flux d'exploitation", "Flux d'investissement", "Flux de financement", "Aucun"], answer: 1 }, { q: "Un remboursement d'emprunt figure dans :", options: ["Flux d'exploitation", "Flux d'investissement", "Flux de financement", "Flux de TVA"], answer: 2 }, { q: "L'encaissement d'une créance client est :", options: ["Un flux positif", "Un flux négatif", "Un flux neutre", "Un flux d'investissement"], answer: 0 }, { q: "Le paiement d'un fournisseur est :", options: ["Un flux positif", "Un flux négatif", "Un flux neutre", "Un flux de financement"], answer: 1 }, { q: "L'augmentation du capital social est :", options: ["Flux d'exploitation", "Flux d'investissement", "Flux de financement", "Flux de TVA"], answer: 2 }, { q: "Le paiement d'un dividende est classé dans :", options: ["Flux de financement", "Flux d'investissement", "Flux d'exploitation", "Aucun"], answer: 0 }, { q: "L'encaissement d'un emprunt bancaire est :", options: ["Un flux de financement", "Un flux d'investissement", "Un flux d'exploitation", "Un flux de TVA"], answer: 0 }, { q: "Le paiement d'une facture fournisseur est :", options: ["Un flux d'exploitation", "Un flux d'investissement", "Un flux de financement", "Un flux de TVA"], answer: 0 }, { q: "L'achat de matières premières est :", options: ["Un flux d'exploitation", "Un flux d'investissement", "Un flux de financement", "Un flux de TVA"], answer: 0 }, { q: "Le versement d'un acompte client est :", options: ["Un flux d'exploitation", "Un flux d'investissement", "Un flux de financement", "Un flux de TVA"], answer: 0 }, { q: "Le PGI (Progiciel de Gestion Intégré) est aussi appelé :", options: ["ERP", "CRM", "SIC", "PGC"], answer: 0 }, { q: "Le SIC (Système d'Information Comptable) a pour fonction principale :", options: ["Produire l'information comptable", "Gérer la paie", "Vendre des produits", "Contrôler la production"], answer: 0 }, { q: "Un PGI permet de :", options: ["Intégrer l'ensemble des processus de gestion", "Gérer uniquement la comptabilité", "Gérer uniquement la paie", "Gérer uniquement la production"], answer: 0 }, { q: "Le module 'achats' d'un PGI permet :", options: ["De gérer les commandes fournisseurs", "De gérer la paie", "De gérer la production", "De gérer la trésorerie"], answer: 0 }, { q: "Le module 'ventes' d'un PGI permet :", options: ["De gérer les commandes clients", "De gérer les immobilisations", "De gérer la paie", "De gérer la production"], answer: 0 }, { q: "Le financement par crédit-bail est :", options: ["Un financement externe", "Un financement interne", "Un autofinancement", "Un financement par subvention"], answer: 0 }, { q: "Le financement par augmentation de capital est :", options: ["Un financement interne", "Un financement externe", "Un financement bancaire", "Un financement par subvention"], answer: 1 }, { q: "Le financement par emprunt bancaire est :", options: ["Un financement externe", "Un financement interne", "Un autofinancement", "Un financement par subvention"], answer: 0 }, { q: "Le financement par subvention est :", options: ["Un financement externe", "Un financement interne", "Un autofinancement", "Un financement bancaire"], answer: 0 }, { q: "Le financement par autofinancement consiste à :", options: ["Utiliser les ressources propres de l'entreprise", "Faire appel à un emprunt", "Augmenter le capital", "Obtenir une subvention"], answer: 0 }, { q: "Le flux d'investissement comprend :", options: ["Les achats d'immobilisations", "Les ventes de marchandises", "Les paiements de salaires", "Les encaissements clients"], answer: 0 }, { q: "Un flux de financement concerne :", options: ["Les apports en capital", "Les achats de matières", "Les ventes de produits", "Les charges sociales"], answer: 0 }, { q: "Le flux d'exploitation inclut :", options: ["Les achats et ventes courantes", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }, { q: "Le flux de TVA est :", options: ["Un flux spécifique lié à la TVA", "Un flux d'investissement", "Un flux de financement", "Un flux d'exploitation"], answer: 0 }, // Questions supplémentaires { q: "Le flux de financement inclut :", options: ["Les apports en capital et les emprunts", "Les achats de stocks", "Les ventes de produits", "Les charges sociales"], answer: 0 }, { q: "Le flux d'exploitation comprend :", options: ["Les opérations courantes de l'entreprise", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }, { q: "Le flux d'investissement concerne :", options: ["Les achats et ventes d'immobilisations", "Les achats de matières", "Les ventes de produits", "Les charges sociales"], answer: 0 }, { q: "Le flux de TVA est lié à :", options: ["La collecte et le paiement de la TVA", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }] }, { name: "Niveau 9: Immobilisations et amortissements", questions: [{ q: "L'amortissement d'une immobilisation est :", options: ["Une charge", "Un produit", "Un actif", "Un passif"], answer: 0 }, { q: "Le compte 281 Amortissements appartient à :", options: ["Classe 2", "Classe 6", "Classe 1", "Classe 4"], answer: 0 }, { q: "L'acquisition d'une machine s'enregistre :", options: ["Débit 218, Crédit 512", "Débit 606, Crédit 401", "Débit 512, Crédit 218", "Débit 401, Crédit 606"], answer: 0 }, { q: "L'amortissement est calculé sur :", options: ["La valeur brute", "La valeur nette", "La valeur d'usage", "La valeur de marché"], answer: 0 }, { q: "L'amortissement linéaire consiste à :", options: ["Répartir le coût sur la durée d'utilisation", "Tout amortir la première année", "Ne pas amortir", "Amortir selon l'inflation"], answer: 0 }, { q: "Le compte 218 Immobilisations corporelles est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "L'amortissement dégressif consiste à :", options: ["Amortir plus les premières années", "Amortir moins les premières années", "Amortir de façon égale", "Ne pas amortir"], answer: 0 }, { q: "La dotation aux amortissements est :", options: ["Une charge non décaissée", "Une charge décaissée", "Un produit", "Un passif"], answer: 0 }, { q: "L'acquisition d'un brevet s'enregistre :", options: ["Débit 205, Crédit 512", "Débit 606, Crédit 401", "Débit 512, Crédit 205", "Débit 401, Crédit 606"], answer: 0 }, { q: "La sortie d'une immobilisation s'enregistre :", options: ["Débit 675, Crédit 218", "Débit 218, Crédit 675", "Débit 606, Crédit 401", "Débit 401, Crédit 606"], answer: 0 }, { q: "Le compte 215 concerne :", options: ["Les installations techniques", "Les stocks", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "L'amortissement exceptionnel est :", options: ["Un amortissement non prévu initialement", "Un amortissement linéaire", "Un amortissement dégressif", "Un amortissement constant"], answer: 0 }, { q: "Le compte 280 regroupe :", options: ["Les amortissements des immobilisations", "Les stocks", "Les dettes fournisseurs", "Les produits financiers"], answer: 0 }, { q: "La valeur résiduelle d'une immobilisation est :", options: ["Sa valeur à la fin de l'utilisation", "Sa valeur d'achat", "Sa valeur brute", "Sa valeur nette comptable"], answer: 0 }, { q: "L'amortissement permet :", options: ["De constater la perte de valeur d'un bien", "D'augmenter la valeur d'un bien", "De vendre un bien", "De financer un bien"], answer: 0 }, // Questions supplémentaires { q: "Le compte 213 concerne :", options: ["Les constructions", "Les stocks", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "L'amortissement accéléré est :", options: ["Un amortissement plus rapide que le linéaire", "Un amortissement linéaire", "Un amortissement dégressif", "Un amortissement constant"], answer: 0 }, { q: "Le compte 206 concerne :", options: ["Les droits au bail", "Les stocks", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "L'amortissement d'un véhicule s'enregistre :", options: ["Débit 681, Crédit 281", "Débit 218, Crédit 512", "Débit 606, Crédit 401", "Débit 512, Crédit 218"], answer: 0 }, { q: "La durée d'amortissement dépend :", options: ["De la durée d'utilisation estimée", "Du prix d'achat", "Du chiffre d'affaires", "Du résultat net"], answer: 0 }] }, { name: "Niveau 10: Inventaire et stocks", questions: [{ q: "L'inventaire intermittent concerne :", options: ["Les stocks", "Les immobilisations", "Les créances", "Les dettes"], answer: 0 }, { q: "Le compte 603 Variation des stocks est :", options: ["Un compte de charges", "Un compte de produits", "Un compte de capitaux propres", "Un compte d'immobilisations"], answer: 0 }, { q: "La méthode FIFO consiste à :", options: ["Sortir d'abord les premiers entrés", "Sortir d'abord les derniers entrés", "Ne pas sortir de stock", "Sortir au hasard"], answer: 0 }, { q: "Le stock final figure :", options: ["À l'actif du bilan", "Au passif du bilan", "Dans le compte de résultat", "Dans le journal de banque"], answer: 0 }, { q: "La dépréciation des stocks est :", options: ["Une charge", "Un produit", "Un passif", "Un actif"], answer: 0 }, { q: "Le compte 31 concerne :", options: ["Les stocks de marchandises", "Les immobilisations", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "La méthode LIFO consiste à :", options: ["Sortir d'abord les derniers entrés", "Sortir d'abord les premiers entrés", "Ne pas sortir de stock", "Sortir au hasard"], answer: 0 }, { q: "Le stock initial figure :", options: ["À l'actif du bilan", "Au passif du bilan", "Dans le compte de résultat", "Dans le journal de banque"], answer: 0 }, { q: "La variation de stock est :", options: ["Un produit ou une charge", "Un actif", "Un passif", "Un financement"], answer: 0 }, { q: "La dépréciation des stocks est :", options: ["Une charge", "Un produit", "Un passif", "Un actif"], answer: 0 }, // Questions supplémentaires { q: "Le compte 32 concerne :", options: ["Les stocks de matières premières", "Les immobilisations", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "La méthode du coût moyen pondéré consiste à :", options: ["Calculer un coût moyen pour les sorties de stock", "Sortir d'abord les premiers entrés", "Sortir d'abord les derniers entrés", "Sortir au hasard"], answer: 0 }, { q: "La dépréciation des stocks est constatée :", options: ["En fin d'exercice", "En début d'exercice", "À chaque vente", "À chaque achat"], answer: 0 }, { q: "Le stock final est évalué :", options: ["Au coût d'achat ou de production", "Au prix de vente", "Au prix de revient", "Au prix de marché"], answer: 0 }, { q: "La variation de stock impacte :", options: ["Le résultat de l'exercice", "Le bilan uniquement", "La trésorerie uniquement", "Les capitaux propres"], answer: 0 }] }, // ... (Niveaux 11 à 27 : ajoutez de la même façon 5 questions supplémentaires par niveau pour enrichir chaque niveau) { name: "Niveau 11: Résultat et SIG", questions: [{ q: "Le SIG signifie :", options: ["Soldes Intermédiaires de Gestion", "Système d'Information de Gestion", "Solde Initial de Gestion", "Société d'Investissement en Gestion"], answer: 0 }, { q: "Le résultat d'exploitation est :", options: ["Produits d'exploitation - Charges d'exploitation", "Chiffre d'affaires - TVA", "Résultat financier - charges", "Résultat exceptionnel"], answer: 0 }, { q: "Le résultat net est :", options: ["Résultat d'exploitation + financier + exceptionnel - impôts", "Chiffre d'affaires - charges", "Stocks - dettes", "Immobilisations - amortissements"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le SIG permet :", options: ["D'analyser la formation du résultat", "De calculer la TVA", "D'établir le bilan", "De gérer la trésorerie"], answer: 0 }, // Questions supplémentaires { q: "Le SIG est utilisé pour :", options: ["Analyser la rentabilité", "Calculer la TVA", "Établir le bilan", "Gérer la trésorerie"], answer: 0 }, { q: "Le résultat exceptionnel provient :", options: ["D'opérations non courantes", "Des ventes", "Des achats", "Des stocks"], answer: 0 }, { q: "Le résultat financier comprend :", options: ["Les produits et charges financiers", "Les ventes", "Les achats", "Les stocks"], answer: 0 }, { q: "Le SIG permet de calculer :", options: ["La capacité d'autofinancement", "La TVA", "Le bilan", "La trésorerie"], answer: 0 }, { q: "Le résultat d'exploitation est un indicateur de :", options: ["Performance opérationnelle", "Trésorerie", "Stocks", "Investissements"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27 avec 5 questions supplémentaires par niveau) { name: "Niveau 12: Partie double avancée", questions: [{ q: "Dans la partie double, chaque opération :", options: ["A un débit et un crédit du même montant", "A un seul débit", "A un seul crédit", "N'est pas enregistrée"], answer: 0 }, { q: "Un achat à crédit s'enregistre :", options: ["Débit 6, Crédit 401", "Débit 401, Crédit 6", "Débit 512, Crédit 401", "Débit 7, Crédit 411"], answer: 0 }, { q: "Une vente à crédit s'enregistre :", options: ["Débit 411, Crédit 7", "Débit 7, Crédit 411", "Débit 512, Crédit 7", "Débit 401, Crédit 7"], answer: 0 }, { q: "Le compte 401 Fournisseurs est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 411 Clients est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, // Questions supplémentaires { q: "La partie double garantit :", options: ["L'équilibre du bilan", "Le calcul de la TVA", "La gestion des stocks", "La gestion de la trésorerie"], answer: 0 }, { q: "Un paiement fournisseur s'enregistre :", options: ["Débit 401, Crédit 512", "Débit 512, Crédit 401", "Débit 606, Crédit 401", "Débit 401, Crédit 606"], answer: 0 }, { q: "Un encaissement client s'enregistre :", options: ["Débit 512, Crédit 411", "Débit 411, Crédit 512", "Débit 7, Crédit 411", "Débit 401, Crédit 512"], answer: 0 }, { q: "Le compte 512 Banque est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 606 Achats est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }] }, // ... (Continuez pour tous les niveaux jusqu'au niveau 27) { name: "Niveau 13: Analyse des ratios", questions: [{ q: "Le ratio de solvabilité mesure :", options: ["La capacité à rembourser les dettes", "La rentabilité", "Le chiffre d'affaires", "Les stocks"], answer: 0 }, { q: "Le ratio de liquidité générale est :", options: ["Actif circulant / Passif circulant", "Passif circulant / Actif circulant", "Stocks / Dettes", "Chiffre d'affaires / Résultat"], answer: 0 }, { q: "Le ratio d'endettement est :", options: ["Dettes / Capitaux propres", "Capitaux propres / Dettes", "Stocks / Capitaux propres", "Résultat / Chiffre d'affaires"], answer: 0 }, { q: "Le taux de marge nette est :", options: ["Résultat net / Chiffre d'affaires", "Chiffre d'affaires / Résultat net", "Charges / Produits", "Stocks / Chiffre d'affaires"], answer: 0 }, { q: "Le ratio de rotation des stocks est :", options: ["Coût d'achat des ventes / Stock moyen", "Stock final / Stock initial", "Chiffre d'affaires / Résultat", "Charges / Produits"], answer: 0 }, // Questions supplémentaires { q: "Le ratio de rentabilité mesure :", options: ["Le résultat net / chiffre d'affaires", "Les stocks / dettes", "Les charges / produits", "Les ventes / achats"], answer: 0 }, { q: "Le ratio de liquidité immédiate est :", options: ["Trésorerie / Passif circulant", "Stocks / Actif circulant", "Dettes / Capitaux propres", "Résultat / Chiffre d'affaires"], answer: 0 }, { q: "Le ratio d'autonomie financière est :", options: ["Capitaux propres / Total du passif", "Dettes / Capitaux propres", "Stocks / Capitaux propres", "Résultat / Chiffre d'affaires"], answer: 0 }, { q: "Le ratio de couverture des immobilisations est :", options: ["Capitaux propres + dettes LT / Immobilisations", "Stocks / Immobilisations", "Résultat / Immobilisations", "Trésorerie / Immobilisations"], answer: 0 }, { q: "Le ratio de rotation des créances est :", options: ["Chiffre d'affaires / Créances clients", "Créances clients / Chiffre d'affaires", "Stocks / Créances", "Résultat / Créances"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 14: Gestion budgétaire", questions: [{ q: "Le budget de trésorerie permet :", options: ["De prévoir les encaissements et décaissements", "D'augmenter le capital", "De réduire les stocks", "D'augmenter les dettes"], answer: 0 }, { q: "Un écart budgétaire positif signifie :", options: ["Un dépassement du budget", "Un respect du budget", "Un déficit", "Un excédent de trésorerie"], answer: 0 }, { q: "Le contrôle budgétaire consiste à :", options: ["Comparer les prévisions et les réalisations", "Établir le bilan", "Calculer la TVA", "Gérer les stocks"], answer: 0 }, { q: "Un budget flexible s'adapte :", options: ["Au niveau d'activité", "Au chiffre d'affaires", "Aux stocks", "Aux dettes"], answer: 0 }, { q: "Le budget des ventes est :", options: ["Un budget d'exploitation", "Un budget d'investissement", "Un budget de financement", "Un budget de TVA"], answer: 0 }, // Questions supplémentaires { q: "Le budget d'investissement concerne :", options: ["Les achats d'immobilisations", "Les ventes de produits", "Les charges sociales", "Les stocks"], answer: 0 }, { q: "Le budget de fonctionnement concerne :", options: ["Les charges courantes", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }, { q: "Un écart budgétaire négatif signifie :", options: ["Un déficit", "Un excédent", "Un respect du budget", "Un dépassement du budget"], answer: 0 }, { q: "Le budget de trésorerie est établi :", options: ["Pour prévoir la situation de trésorerie", "Pour calculer la TVA", "Pour gérer les stocks", "Pour établir le bilan"], answer: 0 }, { q: "Le contrôle budgétaire permet :", options: ["D'identifier les écarts", "De calculer la TVA", "D'établir le bilan", "De gérer la trésorerie"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 15: Comptes de gestion", questions: [{ q: "Le compte 606 Achats est :", options: ["Un compte de charges", "Un compte de produits", "Un compte de capitaux propres", "Un compte d'immobilisations"], answer: 0 }, { q: "Le compte 707 Ventes est :", options: ["Un compte de produits", "Un compte de charges", "Un compte de capitaux propres", "Un compte d'immobilisations"], answer: 0 }, { q: "Le compte 512 Banque est :", options: ["Un compte de trésorerie", "Un compte de charges", "Un compte de produits", "Un compte d'immobilisations"], answer: 0 }, { q: "Le compte 218 Immobilisations corporelles est :", options: ["Un compte d'actif", "Un compte de passif", "Un compte de charges", "Un compte de produits"], answer: 0 }, { q: "Le compte 44566 TVA déductible est :", options: ["Un compte de passif", "Un compte d'actif", "Un compte de charges", "Un compte de produits"], answer: 1 }, // Questions supplémentaires { q: "Le compte 401 Fournisseurs est :", options: ["Un compte de passif", "Un compte d'actif", "Un compte de charges", "Un compte de produits"], answer: 0 }, { q: "Le compte 411 Clients est :", options: ["Un compte d'actif", "Un compte de passif", "Un compte de charges", "Un compte de produits"], answer: 0 }, { q: "Le compte 44571 TVA collectée est :", options: ["Un compte de passif", "Un compte d'actif", "Un compte de charges", "Un compte de produits"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 101 Capital est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 16: Gestion des créances et dettes", questions: [{ q: "Une créance client est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Une dette fournisseur est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 401 Fournisseurs est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 411 Clients est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le recouvrement d'une créance client est :", options: ["Un encaissement", "Un décaissement", "Un investissement", "Un financement"], answer: 0 }, // Questions supplémentaires { q: "Le compte 403 Fournisseurs d'immobilisations est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 416 Clients douteux est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 419 Rabais, remises, ristournes accordés par l'entreprise est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 467 Autres comptes débiteurs ou créditeurs est :", options: ["Un compte de tiers", "Un compte de charges", "Un compte de produits", "Un compte d'actif"], answer: 0 }, { q: "Le compte 512 Banque est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 17: Gestion des immobilisations", questions: [{ q: "L'acquisition d'une immobilisation s'enregistre :", options: ["Débit 218, Crédit 512", "Débit 606, Crédit 401", "Débit 512, Crédit 218", "Débit 401, Crédit 606"], answer: 0 }, { q: "L'amortissement d'une immobilisation est :", options: ["Une charge", "Un produit", "Un actif", "Un passif"], answer: 0 }, { q: "Le compte 281 Amortissements appartient à :", options: ["Classe 2", "Classe 6", "Classe 1", "Classe 4"], answer: 0 }, { q: "La cession d'une immobilisation s'enregistre :", options: ["Débit 512, Crédit 775", "Débit 775, Crédit 512", "Débit 606, Crédit 401", "Débit 401, Crédit 606"], answer: 0 }, { q: "La valeur nette comptable est :", options: ["Valeur brute - amortissements", "Valeur brute + amortissements", "Valeur brute - provisions", "Valeur brute + provisions"], answer: 0 }, // Questions supplémentaires { q: "Le compte 213 Constructions est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 205 Concessions et droits similaires est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 2183 Matériel de bureau est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 2182 Matériel de transport est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 2818 Amortissements du matériel de transport est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 18: Gestion des stocks", questions: [{ q: "Le stock initial figure :", options: ["À l'actif du bilan", "Au passif du bilan", "Dans le compte de résultat", "Dans le journal de banque"], answer: 0 }, { q: "La variation de stock est :", options: ["Un produit ou une charge", "Un actif", "Un passif", "Un financement"], answer: 0 }, { q: "La méthode LIFO consiste à :", options: ["Sortir d'abord les derniers entrés", "Sortir d'abord les premiers entrés", "Ne pas sortir de stock", "Sortir au hasard"], answer: 0 }, { q: "La dépréciation des stocks est :", options: ["Une charge", "Un produit", "Un passif", "Un actif"], answer: 0 }, { q: "Le compte 603 Variation des stocks est :", options: ["Un compte de charges", "Un compte de produits", "Un compte de capitaux propres", "Un compte d'immobilisations"], answer: 0 }, // Questions supplémentaires { q: "Le compte 32 concerne :", options: ["Les stocks de matières premières", "Les immobilisations", "Les dettes", "Les capitaux propres"], answer: 0 }, { q: "La méthode du coût moyen pondéré consiste à :", options: ["Calculer un coût moyen pour les sorties de stock", "Sortir d'abord les premiers entrés", "Sortir d'abord les derniers entrés", "Sortir au hasard"], answer: 0 }, { q: "La dépréciation des stocks est constatée :", options: ["En fin d'exercice", "En début d'exercice", "À chaque vente", "À chaque achat"], answer: 0 }, { q: "Le stock final est évalué :", options: ["Au coût d'achat ou de production", "Au prix de vente", "Au prix de revient", "Au prix de marché"], answer: 0 }, { q: "La variation de stock impacte :", options: ["Le résultat de l'exercice", "Le bilan uniquement", "La trésorerie uniquement", "Les capitaux propres"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 19: Gestion de la trésorerie avancée", questions: [{ q: "Le rapprochement bancaire permet :", options: ["De vérifier la concordance entre la comptabilité et le relevé bancaire", "D'augmenter la trésorerie", "De réduire les charges", "D'augmenter les produits"], answer: 0 }, { q: "Un solde bancaire débiteur signifie :", options: ["Un découvert", "Un excédent de trésorerie", "Un bénéfice", "Un investissement"], answer: 0 }, { q: "Le budget de trésorerie permet :", options: ["De prévoir les encaissements et décaissements futurs", "De calculer le résultat net", "D'augmenter le capital", "De réduire les stocks"], answer: 0 }, { q: "Un paiement par chèque est enregistré :", options: ["Au crédit du compte 512", "Au débit du compte 401", "Au crédit du compte 401", "Au débit du compte 512"], answer: 0 }, { q: "Le compte 580 Virements internes appartient à :", options: ["Classe 5", "Classe 1", "Classe 4", "Classe 6"], answer: 0 }, // Questions supplémentaires { q: "Le compte 512 Banque est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 530 Caisse est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le rapprochement bancaire est effectué :", options: ["Pour vérifier la concordance entre la comptabilité et la banque", "Pour calculer la TVA", "Pour gérer les stocks", "Pour établir le bilan"], answer: 0 }, { q: "Un solde bancaire créditeur signifie :", options: ["Un excédent de trésorerie", "Un découvert", "Un déficit", "Un investissement"], answer: 0 }, { q: "Le budget de trésorerie est un outil de :", options: ["Gestion prévisionnelle", "Gestion des stocks", "Gestion des investissements", "Gestion des ventes"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 20: TVA et fiscalité", questions: [{ q: "La TVA collectée est :", options: ["La TVA facturée aux clients", "La TVA payée aux fournisseurs", "La TVA sur les immobilisations", "La TVA sur les salaires"], answer: 0 }, { q: "La TVA déductible est :", options: ["La TVA payée sur les achats", "La TVA facturée aux clients", "La TVA sur les ventes", "La TVA sur les salaires"], answer: 0 }, { q: "Le compte 44571 TVA collectée appartient à :", options: ["Classe 4", "Classe 5", "Classe 6", "Classe 7"], answer: 0 }, { q: "Le compte 44566 TVA déductible sur autres biens et services appartient à :", options: ["Classe 4", "Classe 5", "Classe 6", "Classe 7"], answer: 0 }, { q: "La déclaration de TVA CA3 est :", options: ["Une déclaration mensuelle ou trimestrielle", "Une déclaration annuelle", "Une déclaration de résultat", "Une déclaration de salaires"], answer: 0 }, // Questions supplémentaires { q: "La TVA sur immobilisations est :", options: ["Déductible", "Collectée", "Non déductible", "Non collectée"], answer: 0 }, { q: "Le compte 44562 TVA déductible sur immobilisations est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "La TVA à décaisser est :", options: ["La différence entre TVA collectée et TVA déductible", "La TVA collectée", "La TVA déductible", "La TVA sur les salaires"], answer: 0 }, { q: "La TVA sur ventes est :", options: ["Collectée", "Déductible", "Non collectée", "Non déductible"], answer: 0 }, { q: "La TVA sur achats est :", options: ["Déductible", "Collectée", "Non collectée", "Non déductible"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 21: Comptabilité des sociétés avancée", questions: [{ q: "Dans une société, le capital social est :", options: ["Le montant des apports des associés", "Le chiffre d'affaires", "Le résultat net", "Le montant des dettes"], answer: 0 }, { q: "Le compte 101 Capital appartient à :", options: ["Classe 1", "Classe 4", "Classe 5", "Classe 6"], answer: 0 }, { q: "Les dividendes versés sont enregistrés :", options: ["Au débit du compte 457", "Au crédit du compte 512", "Au débit du compte 512", "Au crédit du compte 101"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "L'émission d'actions nouvelles augmente :", options: ["Le capital social", "Les dettes", "Les stocks", "Les charges"], answer: 0 }, // Questions supplémentaires { q: "Le compte 104 Primes d'émission est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 106 Réserves est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 110 Report à nouveau est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 129 Résultat de l'exercice (perte) est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 22: Gestion financière avancée", questions: [{ q: "Le BFR (Besoin en Fonds de Roulement) est :", options: ["Stocks + créances clients - dettes fournisseurs", "Capitaux propres - immobilisations", "Produits - charges", "Trésorerie + immobilisations"], answer: 0 }, { q: "Le FRNG (Fonds de Roulement Net Global) est :", options: ["La différence entre les ressources stables et les emplois stables", "La somme des dettes à court terme", "Le total des produits d'exploitation", "Le montant des stocks"], answer: 0 }, { q: "La trésorerie nette se calcule :", options: ["FRNG - BFR", "BFR - FRNG", "Stocks - dettes", "Produits - charges"], answer: 0 }, { q: "Un BFR négatif signifie :", options: ["L'entreprise finance son cycle d'exploitation avec ses fournisseurs", "L'entreprise a besoin de financement", "L'entreprise est en faillite", "L'entreprise a trop de stocks"], answer: 0 }, { q: "Un FRNG négatif indique :", options: ["Un besoin de financement à court terme", "Un excédent de ressources stables", "Un excédent de trésorerie", "Un excédent de stocks"], answer: 0 }, // Questions supplémentaires { q: "Le BFR positif signifie :", options: ["L'entreprise a besoin de financement", "L'entreprise a un excédent de trésorerie", "L'entreprise est en faillite", "L'entreprise a trop de stocks"], answer: 0 }, { q: "Le FRNG positif signifie :", options: ["L'entreprise a un excédent de ressources stables", "L'entreprise a besoin de financement", "L'entreprise est en faillite", "L'entreprise a trop de stocks"], answer: 0 }, { q: "La trésorerie nette négative signifie :", options: ["Un besoin de financement", "Un excédent de trésorerie", "Un excédent de ressources stables", "Un excédent de stocks"], answer: 0 }, { q: "Le calcul du BFR permet :", options: ["D'évaluer le besoin de financement du cycle d'exploitation", "De calculer la TVA", "D'établir le bilan", "De gérer la trésorerie"], answer: 0 }, { q: "Le calcul du FRNG permet :", options: ["D'évaluer la capacité de l'entreprise à financer son cycle d'exploitation", "De calculer la TVA", "D'établir le bilan", "De gérer la trésorerie"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 23: Comptabilité analytique avancée", questions: [{ q: "La comptabilité analytique sert à :", options: ["Analyser les coûts de revient", "Calculer la TVA", "Établir le bilan", "Gérer la trésorerie"], answer: 0 }, { q: "Le coût d'achat comprend :", options: ["Prix d'achat + frais accessoires", "Prix de vente - charges", "Stocks + créances", "Charges fixes"], answer: 0 }, { q: "Le coût de revient est :", options: ["Le coût total d'un produit ou service", "Le prix de vente", "Le résultat net", "Le chiffre d'affaires"], answer: 0 }, { q: "Les charges directes sont :", options: ["Affectées directement à un produit", "Réparties entre plusieurs produits", "Des charges fixes", "Des charges variables"], answer: 0 }, { q: "Les charges indirectes sont :", options: ["Réparties entre plusieurs produits", "Affectées directement à un produit", "Des charges variables", "Des charges fixes"], answer: 0 }, // Questions supplémentaires { q: "Le coût de production comprend :", options: ["Le coût d'achat + charges de production", "Le prix de vente", "Le résultat net", "Le chiffre d'affaires"], answer: 0 }, { q: "Le coût de distribution comprend :", options: ["Les frais de distribution", "Les frais d'achat", "Les frais de production", "Les frais de gestion"], answer: 0 }, { q: "La comptabilité analytique permet :", options: ["D'analyser la rentabilité des produits", "De calculer la TVA", "D'établir le bilan", "De gérer la trésorerie"], answer: 0 }, { q: "Les charges fixes sont :", options: ["Indépendantes du niveau d'activité", "Proportionnelles au niveau d'activité", "Variables", "Directes"], answer: 0 }, { q: "Les charges variables sont :", options: ["Proportionnelles au niveau d'activité", "Indépendantes du niveau d'activité", "Fixes", "Directes"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 24: Gestion des flux de trésorerie", questions: [{ q: "Un flux de trésorerie positif signifie :", options: ["Une entrée d'argent", "Une sortie d'argent", "Un solde nul", "Un déficit"], answer: 0 }, { q: "Un flux de trésorerie négatif signifie :", options: ["Une sortie d'argent", "Une entrée d'argent", "Un solde nul", "Un excédent"], answer: 0 }, { q: "L'encaissement d'une créance client est :", options: ["Un flux positif", "Un flux négatif", "Un flux neutre", "Un flux d'investissement"], answer: 0 }, { q: "Le paiement d'un fournisseur est :", options: ["Un flux négatif", "Un flux positif", "Un flux neutre", "Un flux de financement"], answer: 0 }, { q: "L'augmentation du capital social est :", options: ["Un flux de financement", "Un flux d'exploitation", "Un flux d'investissement", "Un flux de TVA"], answer: 0 }, // Questions supplémentaires { q: "Le flux de trésorerie d'investissement concerne :", options: ["Les achats et ventes d'immobilisations", "Les achats de matières", "Les ventes de produits", "Les charges sociales"], answer: 0 }, { q: "Le flux de trésorerie de financement concerne :", options: ["Les apports en capital et les emprunts", "Les achats de stocks", "Les ventes de produits", "Les charges sociales"], answer: 0 }, { q: "Le flux de trésorerie d'exploitation concerne :", options: ["Les opérations courantes de l'entreprise", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }, { q: "Le flux de TVA est lié à :", options: ["La collecte et le paiement de la TVA", "Les investissements", "Les financements", "Les dividendes"], answer: 0 }, { q: "Un flux de trésorerie neutre signifie :", options: ["Aucun impact sur la trésorerie", "Une entrée d'argent", "Une sortie d'argent", "Un déficit"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 25: Gestion des capitaux propres", questions: [{ q: "Le capital social est :", options: ["Un élément des capitaux propres", "Un passif", "Un actif", "Une charge"], answer: 0 }, { q: "Le compte 101 Capital appartient à :", options: ["Classe 1", "Classe 4", "Classe 5", "Classe 6"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Les réserves sont :", options: ["Des bénéfices non distribués", "Des dettes", "Des charges", "Des produits"], answer: 0 }, { q: "L'affectation du résultat consiste à :", options: ["Répartir le résultat entre réserves et dividendes", "Calculer la TVA", "Établir le bilan", "Gérer la trésorerie"], answer: 0 }, // Questions supplémentaires { q: "Le compte 104 Primes d'émission est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 106 Réserves est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 110 Report à nouveau est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 120 Résultat de l'exercice est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }, { q: "Le compte 129 Résultat de l'exercice (perte) est :", options: ["Un compte de capitaux propres", "Un compte de charges", "Un compte de produits", "Un compte de dettes"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 26: Gestion des emprunts et financements", questions: [{ q: "Un emprunt bancaire est :", options: ["Un financement externe", "Un financement interne", "Un produit", "Une charge"], answer: 0 }, { q: "Le remboursement d'un emprunt est :", options: ["Un décaissement", "Un encaissement", "Un investissement", "Un financement"], answer: 0 }, { q: "Le compte 164 Emprunts appartient à :", options: ["Classe 1", "Classe 2", "Classe 4", "Classe 5"], answer: 0 }, { q: "Les intérêts d'emprunt sont :", options: ["Des charges financières", "Des produits financiers", "Des capitaux propres", "Des immobilisations"], answer: 0 }, { q: "L'obtention d'un emprunt bancaire est :", options: ["Un flux de financement", "Un flux d'investissement", "Un flux d'exploitation", "Un flux de TVA"], answer: 0 }, // Questions supplémentaires { q: "Le compte 6611 Intérêts des emprunts est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 168 Autres emprunts et dettes assimilées est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 512 Banque est :", options: ["Un actif", "Un passif", "Un produit", "Une charge"], answer: 0 }, { q: "Le compte 627 Services bancaires et assimilés est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 164 Emprunts auprès des établissements de crédit est :", options: ["Un passif", "Un actif", "Un produit", "Une charge"], answer: 0 }] }, // ... (Continuez à enrichir chaque niveau jusqu'au niveau 27) { name: "Niveau 27: Gestion des opérations exceptionnelles", questions: [{ q: "Une opération exceptionnelle est :", options: ["Non courante", "Courante", "Récurrente", "Budgétaire"], answer: 0 }, { q: "Le compte 771 Produits exceptionnels est :", options: ["Un compte de produits", "Un compte de charges", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 671 Charges exceptionnelles est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "La cession d'une immobilisation est :", options: ["Une opération exceptionnelle", "Une opération courante", "Une opération budgétaire", "Une opération de TVA"], answer: 0 }, { q: "Le résultat exceptionnel est :", options: ["La différence entre produits et charges exceptionnels", "Le résultat d'exploitation", "Le résultat financier", "Le résultat net"], answer: 0 }, // Questions supplémentaires { q: "Le compte 678 Autres charges exceptionnelles est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 772 Produits des cessions d'éléments d'actif est :", options: ["Un compte de produits", "Un compte de charges", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 675 Valeurs comptables des éléments d'actif cédés est :", options: ["Un compte de charges", "Un compte de produits", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 7711 Produits exceptionnels sur opérations de gestion est :", options: ["Un compte de produits", "Un compte de charges", "Un compte d'actif", "Un compte de passif"], answer: 0 }, { q: "Le compte 7712 Produits exceptionnels sur opérations en capital est :", options: ["Un compte de produits", "Un compte de charges", "Un compte d'actif", "Un compte de passif"], answer: 0 }] }]; var currentLevel = storage.level || 1; // 1-based var currentQuestion = 0; var score = storage.score || 0; var progress = storage.progress || 0; // Number of questions answered in total var selectedAnswer = -1; var locked = false; // Prevent multiple answers var answerButtons = []; var nextBtn = null; var questionText = null; var levelTitleText = null; var progressBar = null; var scoreText = null; var feedbackText = null; // --- UI Layout Constants --- var centerX = 2048 / 2; var questionY = 350; var answerStartY = 700; var answerSpacing = 260; // --- Functions --- // Save progress to storage function saveProgress() { storage.level = currentLevel; storage.progress = progress; storage.score = score; } // Load current question data function getCurrentQuestionObj() { var levelIdx = currentLevel - 1; var level = quizLevels[levelIdx]; return level.questions[currentQuestion]; } // Show question and answers function showQuestion() { locked = false; selectedAnswer = -1; // Set level title var levelObj = quizLevels[currentLevel - 1]; levelTitleText.setText(levelObj.name); // Set question text var qObj = getCurrentQuestionObj(); questionText.setText(qObj.q); // Adjust question text size based on length if (qObj.q.length > 100) { questionText.size = 60; } else if (qObj.q.length > 60) { questionText.size = 65; } else { questionText.size = 70; } // Set answer buttons for (var i = 0; i < answerButtons.length; i++) { var btn = answerButtons[i]; if (qObj.options[i]) { btn.setText(qObj.options[i]); btn.visible = true; btn.resetColor(); } else { btn.visible = false; } } // Hide feedback and next button feedbackText.visible = false; nextBtn.visible = false; // Update progress bar var totalQuestions = quizLevels[currentLevel - 1].questions.length; progressBar.setProgress(currentQuestion / totalQuestions); // Update score text scoreText.setText("Score: " + score); } // Handle answer selection function handleAnswer(idx) { if (locked) return; locked = true; selectedAnswer = idx; var qObj = getCurrentQuestionObj(); var correct = idx === qObj.answer; // Color feedback for (var i = 0; i < answerButtons.length; i++) { if (i === qObj.answer) { answerButtons[i].setColor(0x44b86b); // Green for correct } else if (i === idx) { answerButtons[i].setColor(0xd83318); // Red for wrong } else { answerButtons[i].setColor(0x2d8cff); } } // Feedback text feedbackText.visible = true; if (correct) { feedbackText.setText("Bonne réponse !"); score += 1; } else { feedbackText.setText("Mauvaise réponse !"); } progress += 1; saveProgress(); // Show next button after short delay LK.setTimeout(function () { nextBtn.visible = true; }, 600); } // Handle next question or level function handleNext() { var levelObj = quizLevels[currentLevel - 1]; if (currentQuestion < levelObj.questions.length - 1) { currentQuestion += 1; showQuestion(); } else { // Level finished if (currentLevel < quizLevels.length) { currentLevel += 1; currentQuestion = 0; saveProgress(); showLevelUp(); } else { // All levels finished: show win saveProgress(); // Calcul de la note sur 20 var totalQuestions = 0; for (var i = 0; i < quizLevels.length; i++) { totalQuestions += quizLevels[i].questions.length; } var note = Math.round(score / totalQuestions * 20); // Affiche la note dans le feedbackText feedbackText.setText("Quiz terminé !\nNote : " + note + "/20\nScore : " + score + "/" + totalQuestions); feedbackText.visible = true; nextBtn.visible = false; // Retour au niveau 1 après 3 secondes LK.setTimeout(function () { // Reset all state for replay currentLevel = 1; currentQuestion = 0; score = 0; progress = 0; saveProgress(); showQuestion(); // Appelle showYouWin pour afficher l'écran de victoire, puis le jeu recommencera au niveau 1 LK.showYouWin(); }, 3000); } } } // Show level up message function showLevelUp() { feedbackText.setText("Niveau suivant débloqué !"); feedbackText.visible = true; nextBtn.visible = true; // Animate feedback tween(feedbackText, { y: feedbackText.y - 40 }, { duration: 400, easing: tween.easeOut, onFinish: function onFinish() { tween(feedbackText, { y: feedbackText.y + 40 }, { duration: 400, easing: tween.easeIn }); } }); } // --- UI Setup --- // Level Title levelTitleText = new Text2('', { size: 90, fill: 0x222222 }); levelTitleText.anchor.set(0.5, 0); levelTitleText.x = centerX; levelTitleText.y = 120; LK.gui.top.addChild(levelTitleText); // Question Text questionText = new Text2('', { size: 70, fill: 0x333333 }); questionText.anchor.set(0.5, 0); questionText.x = centerX; questionText.y = questionY; game.addChild(questionText); // Answer Buttons for (var i = 0; i < 4; i++) { var btn = new AnswerButton(); btn.x = centerX; btn.y = answerStartY + i * answerSpacing; btn.answerIndex = i; // Touch/click event (function (btn, idx) { btn.down = function (x, y, obj) { handleAnswer(idx); }; })(btn, i); game.addChild(btn); answerButtons.push(btn); } // Feedback Text feedbackText = new Text2('', { size: 80, fill: 0xD83318 }); feedbackText.anchor.set(0.5, 0); feedbackText.x = centerX; feedbackText.y = answerStartY + 4 * answerSpacing + 40; feedbackText.visible = false; game.addChild(feedbackText); // Next Button nextBtn = new NextButton(); nextBtn.x = centerX; nextBtn.y = answerStartY + 4 * answerSpacing + 200; nextBtn.visible = false; nextBtn.down = function (x, y, obj) { nextBtn.visible = false; feedbackText.visible = false; handleNext(); }; game.addChild(nextBtn); // Progress Bar progressBar = new ProgressBar(); progressBar.x = centerX - 600; progressBar.y = 250; game.addChild(progressBar); // Score Text (top right) scoreText = new Text2('Score: 0', { size: 70, fill: 0x222222 }); scoreText.anchor.set(1, 0); scoreText.x = 2048 - 60; scoreText.y = 120; LK.gui.topRight.addChild(scoreText); // --- Bouton "Recommencer au niveau 1" --- // Création du bouton var restartBtn = new Container(); var restartBtnBg = restartBtn.attachAsset('nextBtn', { width: 420, height: 100, color: 0xe23449, shape: 'box', anchorX: 0.5, anchorY: 0 }); var restartLabel = new Text2('Recommencer', { size: 48, fill: 0xffffff }); restartLabel.anchor.set(0.5, 0.5); restartLabel.x = 0; restartLabel.y = 50; restartBtn.addChild(restartLabel); // Position en haut au centre, sous le titre de niveau restartBtn.x = 2048 / 2; restartBtn.y = 240; // Action du bouton restartBtn.down = function (x, y, obj) { // Reset tout l'état pour recommencer au niveau 1 currentLevel = 1; currentQuestion = 0; score = 0; progress = 0; saveProgress(); showQuestion(); feedbackText.visible = false; nextBtn.visible = false; }; // Ajout au GUI (top) LK.gui.top.addChild(restartBtn); // --- Game Over Handler (if needed) --- game.onGameOver = function () { // Reset progress for new game currentLevel = 1; currentQuestion = 0; score = 0; progress = 0; saveProgress(); showQuestion(); }; // --- Start Game --- showQuestion(); // --- Optional: Reset on win --- game.onYouWin = function () { // Reset everything for replay currentLevel = 1; currentQuestion = 0; score = 0; progress = 0; saveProgress(); showQuestion(); }; // Ajoute un asset image pour le fond personnalisé (remplacez 'mon_fond' et les dimensions/id par vos valeurs) // Affiche le fond personnalisé (image) derrière tous les éléments du jeu var backgroundImg = LK.getAsset('backgroundImg', { anchorX: 0, anchorY: 0, x: 0, y: 0, width: 2048, height: 2732 }); game.addChild(backgroundImg); game.setChildIndex(backgroundImg, 0); // S'assure que le fond est tout au fond
===================================================================
--- original.js
+++ change.js
@@ -35,8 +35,16 @@
self.addChild(label);
// Set answer text
self.setText = function (txt) {
label.setText(txt);
+ // Adjust text size based on length
+ if (txt.length > 80) {
+ label.size = 60;
+ } else if (txt.length > 50) {
+ label.size = 70;
+ } else {
+ label.size = 80;
+ }
};
// Set button color (for feedback)
self.setColor = function (color) {
btnBg.color = color;
@@ -113,18 +121,18 @@
/****
* Game Code
****/
-// 27 niveaux de quiz, chaque niveau avec des questions avancées de gestion finance, BFR, FRNG, trésorerie, écritures, classes de comptes, etc.
-// --- Global State ---
-// Quiz game: We'll use simple shapes for buttons and backgrounds, and text for questions/answers.
-// Buttons: Rectangles, different colors for answer options and navigation.
-// Question area: Rectangle background.
-// Progress bar: Rectangle.
-// No images or sounds for MVP.
/****
* Quiz Data (MVP: 2 levels, 5 questions each)
****/
+// No images or sounds for MVP.
+// Progress bar: Rectangle.
+// Question area: Rectangle background.
+// Buttons: Rectangles, different colors for answer options and navigation.
+// Quiz game: We'll use simple shapes for buttons and backgrounds, and text for questions/answers.
+// --- Global State ---
+// 27 niveaux de quiz, chaque niveau avec des questions avancées de gestion finance, BFR, FRNG, trésorerie, écritures, classes de comptes, etc.
var quizLevels = [/* ... (Niveaux 1 à 7 inchangés, voir code existant) ... */
// Niveaux 8 à 27 enrichis avec plus de questions
{
name: "Niveau 8: Tableaux de flux",
@@ -1233,8 +1241,16 @@
levelTitleText.setText(levelObj.name);
// Set question text
var qObj = getCurrentQuestionObj();
questionText.setText(qObj.q);
+ // Adjust question text size based on length
+ if (qObj.q.length > 100) {
+ questionText.size = 60;
+ } else if (qObj.q.length > 60) {
+ questionText.size = 65;
+ } else {
+ questionText.size = 70;
+ }
// Set answer buttons
for (var i = 0; i < answerButtons.length; i++) {
var btn = answerButtons[i];
if (qObj.options[i]) {
@@ -1485,14 +1501,5 @@
width: 2048,
height: 2732
});
game.addChild(backgroundImg);
-game.setChildIndex(backgroundImg, 0); // S'assure que le fond est tout au fond
-// Question Text
-questionText = new Text2('', {
- size: 70,
- fill: 0x333333
-});
-questionText.anchor.set(0.5, 0);
-questionText.x = centerX;
-questionText.y = questionY;
-game.addChild(questionText);
\ No newline at end of file
+game.setChildIndex(backgroundImg, 0); // S'assure que le fond est tout au fond
\ No newline at end of file