User prompt
Ajoute ces nouveaux personnages au jeu "feÌe Lisa" : 1) Dogie -- le chien anti-chafeÌe -> apparition : une seule fois tout les niveaux Dogie est un ennemi du chafeÌe , qui apparaiÌt souvent pour faire des remarques droÌles et piquantes aÌ propos du chafeÌe ou preÌvenir lisa (le joueur) du comportement farceur du chafeÌe, Dogie apparaiÌt sur les plateformes d'arbres roses, puis quand lisa entre en collision avec lui, Un eÌcran de dialogue s'ouvre, dans lequel Dogie parle a lisa , Le message de Dogie est aleÌatoire parmis tout ses 65 remarques et messages qu'il peut dire, Le joueur doit appuyer sur ok pour fermer le dialogue et continuer sa route, Le message de Dogie est toujours droÌle et piquante a propos de son ennemis le chafeÌe et ses blagues "pourris" 2) Estella --- la dresseuse de pouvoirs ----> apparition : une seule fois tout les 3 nouveaux a partir du niveau 21 Estella apparait sur les plateformes des arbres roses, Elle est toujours en train de dresser de nouveaux pouvoirs pour les futures feÌes ! Quand lisa entre en collision avec elle, Estella lui donnera de la poussieÌre de bulle d'eÌtoiles, ce qui implique que Estella donnera au joueur 50 LIPOINTS d'un type que le joueur aura choisis, Un eÌcran de choix s'ouvre ,dans lequel le joueur doit choisir quel type de LIPOINTS il veut que Estella lui donne, entre les 5 types de LIPOINTS du jeu , Mais attention, il ne peut faire qu'un seul choix par apparition de Estella! Quand le joueur a fait son choix, il gagne les LIPOINTS correspondant, Estella disparaiÌt et le joueur doit continuer son chemin 3) Mazz le dragon ---- le cracheur de feu -> apparition : une fois tout les 2 niveaux a partir du niveau 24 Mazz le dragon apparaiÌt sur les plateformes d'arbres roses, Et quand lisa entre en collision avec lui, Mazz lui vole 30 LIPOINTS d'un type aleÌatoire (de façon involontaire car mazz aime s'amuser aÌ cracher du jeu, ce qui brulle certains LIPOINTS au passage), un message s'affiche dans lequel le jeu preÌviens le joueur des LIPOINTS perdus et de ce qu'a fait mazz, le message disparaiÌt au bout de 10 secondes âȘđĄ Consider importing and using the following plugins: @upit/tween.v1
User prompt
Fait en sorte que les textes du jeu (quizz, dialogues,) soient plus facile aÌ lire et moins petits
User prompt
Ajoute 30 autres questions possibles pour les jumelles, 40 autres devinette possibles ridicules pour le chafeÌe et 33 nouvelles propheÌtie chelou possible de Malicia
User prompt
Fait en sorte que les personnages fassent reÌellement tout ce que j'ai deÌcrit dans les conditions que j'ai deÌcrit ! âȘđĄ Consider importing and using the following plugins: @upit/tween.v1
User prompt
Fait en sorte que les personnages n'apparaissent qu'une fois dans les conditions que j'ai speÌcifieÌ !!!
User prompt
Regles les probleÌmes et fait en sorte que Margot et les autres personnages apparaissent sur les plateformes en eÌtant de la meÌme taille que lisa
User prompt
Please fix the bug: 'TypeError: Cannot read properties of undefined (reading 'spawnCharacters')' in or related to this line: 'self.spawnCharacters();' Line Number: 1810
User prompt
Ajoute ces personnages au jeu FeÌe Lisa (ils apparaissent sur les plateformes sous certaines conditions et offrent leurs propres Cadeaux ou deÌfis) : 1) la feÌe Stella - la guide eÌtoileÌe ---> apparition sur les plateformes : une fois tout les 1000 lipoints collecteÌe apreÌs le niveau 10, lisa (le joueur), doit alors choisir entre deux chemins seÌpareÌs diffeÌrents sur la plateforme des arbres roses, une bulle magique de mysteÌre d'eÌtoile se situe sur un arbre de chacun des deux chemins, quand lisa (le joueur), choisit son chemin en appuyant sur une des fleÌches qui pointent vers chaque chemin, et quand lisa rentre en collision avec la bulle magique de mysteÌre d'eÌtoile d'un des deux chemins, le joueur gagne aleÌatoirement entre 20 et 50 LIPOINTS d'un type aleÌatoire , le jeu envoie un message informant le joueur de ce qu'il a gagner, ce message disparaiÌt au bout de 5 secondes 2) la feÌe Margot - sĆur de lisa -> Apparition sur les plateformes : une fois tout les 2 niveaux Quand lisa entre en collision avec Margot, Margot donne 25 LIPOINTS cadeaux de n'importe quel type aleÌatoire au joueur ! Le jeu affiche un message tenant au courant le joueur du type de LIPOINTS que Margot lui a offert , le message disparaiÌt au bout de 5 secondes! 3) Le ChafeÌe - le chat malicieux blagueurs des feÌes ---> Apparition : aleÌatoire, le joueur a une chance de le croiser qu'une seule fois tout les 4 niveaux et seulement a partir du niveau 12, Quand lisa entre en collision avec le chafeÌe, le chafeÌe lui pose une question de devinette ridicule, si le joueur reÌpond correctement, le chafeÌe lui offre un cadeau et le joueur gagne 40 LIPOINTS de n'importe quel type! Mais si le joueur reÌpond mal aÌ la devinette, le chafeÌe lui vole aleÌatoirement 15 LIPOINTS du destin ou 20 LIPOINTS des sucettes (selon son envie du moment mdr) 4) La sorcieÌre Malicia --- la fabriquante de potions bizzares qui essaye de deviner ton future pouvoir ---> Apparition : deux fois tout les 4 niveaux a partir du niveau 19 Quand lisa entre en collision avec Malicia, un eÌcran de dialogue s'ouvre dans lequel Malicia parle a lisa en essayant de lui proposer ses recettes de potions bizzares a base de trucs chelous et essaye de deviner le futur pouvoir de lisa, le joueur doit lire ces dialogues, et appuyer sur suivant pour chaque bulle de dialogue, puis lorsque le dialogue est termineÌ, le joueur appuie sur ok, l'eÌcran de dialogue disparaiÌt et Malicia s'en va , lisa peut continuer sa route! 5) les jumelles humaines lylou et Sandra - deux enfants eÌmerveilleÌs par le monde des feÌes, elles te poseront des questions auxquelles tu devra reÌpondre sinceÌrement --> Apparition : une seule fois tout les 3 niveaux a partir du niveau 8, Quand lisa entre en collision avec les jumelles, un eÌcran sous forme de quizz, dans lequel les jumelles posent des questions s'ouvrira, et le joueur devra reÌpondre aux questions, Si le joueur fait une mauvais reÌponse, les jumelles en poseront toujours une plus dure, et cela jusqu'aÌ que le joueur reÌponde correctement aÌ la plus compliqueÌ deÌs questions (lol), Si le joueur reÌpond correctement aÌ la question, les jumelles le laisseront tranquille et lui offrirons meÌme 6 LIPOINTS de sucettes! Implante tout ces personnages et leurs assets dans le jeu! âȘđĄ Consider importing and using the following plugins: @upit/tween.v1
User prompt
Ajoute plus de questions de quizz a chaque type de deÌfis!
User prompt
Je veux personnaliseÌ le fond du jeu avec mon propre asset
User prompt
Fait en sorte que de nouveaux arbres soient toujours geÌneÌrer quand la feÌe avance
User prompt
Au pire ajoute des petits boutons de choix pour les quizz pour que le joueur choisisse la reÌponse quand il clique dessus
User prompt
Regles les probleÌme lieÌs aux quizz!
User prompt
Please fix the bug: 'Uncaught TypeError: Cannot read properties of undefined (reading 'x')' in or related to this line: 'var localPos = self.toLocal(globalPos);' Line Number: 173
User prompt
Please fix the bug: 'Uncaught TypeError: Cannot read properties of undefined (reading 'toGlobal')' in or related to this line: 'var globalPos = obj.parent.toGlobal(obj.position);' Line Number: 167
User prompt
Regles les probleÌme lieÌs au quizz
User prompt
Regles les problemes lieÌs au quizz, et ajoute une musique de fond en boucle au jeu
User prompt
Affiche le niveau du joueur a un endroit visible dans L'ui
User prompt
Fait en sorte que les questions de quizz soient en français et qu'ils y est 30 a 35 questions diffeÌrente de chaque type dans le jeu, et que la question a laquelle le joueur doit reÌpondre est tireÌ au hasard a chaque fois, et ajoute aussi le systeÌme de niveau dans L'ui
Code edit (1 edits merged)
Please save this source code
User prompt
FeÌe Lisa - Magical Power Discovery
Initial prompt
CreÌe mon jeu "FeÌe Lisa", c'est un jeu destineÌ, dans lequel le joueur doit aider une feÌe (la feÌe Lisa), aÌ deÌcouvrir ses pouvoirs et rejoindre le monde des feÌes ! Voici la description des meÌcaniques, du gameplay et de comment se preÌsente le jeu : Le jeu est un jeu de plateforme (avec la plateforme qui avance fur a mesure que le joueur et sa feÌe avance sur la plateforme), Les plateformes repreÌsentent le monde vaste du monde des feÌes, la feÌe Lisa saute sur les plateformes (des arbres magiques roses), Le joueur deÌplace lisa d'un arbre a un autre en appuyant sur l'arbre ouÌ il veut que lisa se deÌplace, Des eÌleÌments de pouvoirs aleÌatoire apparaissent aleÌatoirement sur les arbres (bulles de lumieÌres, bulles du destin, bulles de l'ombre, bulles des sucettes, bulles des oceÌans), le joueur doit faire en sorte que lisa rentre en collision avec les bulles de pouvoirs, a chaque fois que lisa rentre en collision avec une bulle , des mini deÌfis de test de pouvoir sont a faire : Pour les bulles de lumieÌres, le joueur doit faire en sorte que lisa reÌussisse a allumeÌ une lumieÌre juste par la force de sa penseÌe, En appuyant de façon reÌpeÌteÌe sur une icoÌne de lampe, Mais il y a seulement 30% de chance d'allumer avec succeÌs la lampe aÌ chaque appuie et lisa ne peut essayer seulement 3 fois par bulle de lumieÌre, si elle eÌchoue au bout de 3 essais, le joueur devra continuer la route sans gagner de points, car lisa n'aura pas trouveÌ son pouvoir !, Mais si elle reÌussit, le joueur gagne 5 LIPOINTS de lumieÌre (points qui servent aÌ lisa pour deÌcouvrir son pouvoir final et au joueur de monter en niveau), Pour les bulles du destin, c'est le meÌme principe, lorsque lisa entre en collision avec une bulle du destin, le joueur doit reÌpondre a une question simple de quizz sur la preÌdiction du destin d'un enfant de 5 ans (une question de preÌdiction aleÌatoire parmi 30 questions de preÌdiction diffeÌrentes disponibles dans le jeu), Si le joueur reÌpond correctement aÌ la preÌdiction, Il gagne 5 LIPOINTS du destin, et continue son aventure, Si le joueur reÌpond mal aÌ la preÌdiction (mauvaise reÌponse), Lisa continue son chemin et le joueur ne gagne aucun LIPOINTS du destin Pour les bulles de l'ombre, quand le joueur (lisa), rentre en collision avec une bulle de l'ombre, le joueur doit appuyer de façon reÌpeÌteÌe sur une icoÌne de soleil, le but est d'eÌteindre la lumieÌre ! Lisa n'a que 30% de chance d'eÌteindre la lumieÌre aÌ chaque fois que le joueur appuie sur le soleil et n'a que 3 essais! Si au bout des 3 essais, le soleil ne s'eÌteint pas, le joueur et lisa continuent leur aventure sans gagner de LIPOINTS de l'ombre!, Mais si la lumieÌre est eÌteinte avec succeÌs, lisa et le joueur gagnent 5 LIPOINTS de l'ombre! MeÌme principe pour les bulles des sucettes, faut entrer en collision avec une bulle de sucette, puis reÌpondre aÌ une question de quizz sur les sucettes tire aleÌatoirement parmi une base de donneÌes de 35 questions sur les sucettes, si le joueur reÌpond correctement aÌ la question de quizz, il gagne 5 LIPOINTS des sucettes et continue son aventure avec lisa, S'il reÌpond mal, il continue son aventure mais ne gagne aucun LIPOINTS des sucettes Pour les bulles des oceÌans, meÌme principe, sauf qu'il doit reÌpondre a une question de culture geÌneÌrale sur les oceÌans au lieu de quizz sur les sucettes ! S'il reÌpond correctement, il gagne 5 LIPOINTS des oceÌans, Puis continue son aventure, S'il reÌpond mal, il continue son aventure sans rien, Il y a un systeÌme de niveaux (jusqu'au niveau 50) Le joueur monte de niveaux en accumulant des LIPOINTS de tout type confondu, Il doit avoir 10 LIPOINTS de n'importe quel type pour passer au niveau 2, et a chaque fois le nombre de LIPOINTS a avoir pour monter au niveau supeÌrieur double par rapport au niveau preÌceÌdent !, Le jeu se finit au niveau 50 , avec la deÌcouverte du pouvoir de lisa (Le pouvoir final est le pouvoir pour lequel le joueur a collecteÌ le plus de LIPOINTS) Le nombre de LIPOINTS de chaque type posseÌder par le joueur doit eÌtre afficheÌ dans L'ui
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); var storage = LK.import("@upit/storage.v1"); /**** * Classes ****/ var Challenge = Container.expand(function (type) { var self = Container.call(this); var challengeGraphics = self.attachAsset('challengeBox', { anchorX: 0.5, anchorY: 0.5 }); challengeGraphics.alpha = 0.9; self.challengeType = type; self.attempts = 0; self.maxAttempts = 3; self.isActive = true; // Challenge text self.titleText = self.addChild(new Text2('', { size: 40, fill: 0xFFFFFF })); self.titleText.anchor.set(0.5, 0.5); self.titleText.y = -120; self.instructionText = self.addChild(new Text2('', { size: 24, fill: 0xFFFFFF })); self.instructionText.anchor.set(0.5, 0.5); self.instructionText.y = -60; self.resultText = self.addChild(new Text2('', { size: 30, fill: 0xFFFFFF })); self.resultText.anchor.set(0.5, 0.5); self.resultText.y = 100; self.setupChallenge = function () { switch (self.challengeType) { case 'light': self.setupLightChallenge(); break; case 'destiny': self.setupDestinyChallenge(); break; case 'shadow': self.setupShadowChallenge(); break; case 'lollipop': self.setupLollipopChallenge(); break; case 'ocean': self.setupOceanChallenge(); break; } }; self.setupLightChallenge = function () { self.titleText.setText('DĂ©fi de la LumiĂšre'); self.instructionText.setText('Appuie pour allumer les lampes par la force de ta pensĂ©e !'); // Create lamps self.lamps = []; for (var i = 0; i < 3; i++) { var lamp = self.addChild(LK.getAsset('lamp', { anchorX: 0.5, anchorY: 0.5 })); lamp.x = (i - 1) * 80; lamp.y = 20; lamp.lit = false; self.lamps.push(lamp); } }; self.setupDestinyChallenge = function () { self.titleText.setText('DĂ©fi du Destin'); self.currentQuestion = destinyQuestions[Math.floor(Math.random() * destinyQuestions.length)]; self.instructionText.setText(self.currentQuestion.question); self.instructionText.y = -80; // Create answer buttons self.answerButtons = []; for (var i = 0; i < self.currentQuestion.answers.length; i++) { var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], { size: 20, fill: 0xFFFFFF })); button.anchor.set(0.5, 0.5); button.y = -20 + i * 30; button.answerIndex = i; self.answerButtons.push(button); } self.isQuizChallenge = true; }; self.setupShadowChallenge = function () { self.titleText.setText('DĂ©fi de l\'Ombre'); self.instructionText.setText('Ăteins le soleil brillant avec la magie de l\'ombre !\nAppuie pour crĂ©er des ombres !'); }; self.setupLollipopChallenge = function () { self.titleText.setText('DĂ©fi des Sucettes'); self.currentQuestion = lollipopQuestions[Math.floor(Math.random() * lollipopQuestions.length)]; self.instructionText.setText(self.currentQuestion.question); self.instructionText.y = -80; // Create answer buttons self.answerButtons = []; for (var i = 0; i < self.currentQuestion.answers.length; i++) { var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], { size: 20, fill: 0xFFFFFF })); button.anchor.set(0.5, 0.5); button.y = -20 + i * 30; button.answerIndex = i; self.answerButtons.push(button); } self.isQuizChallenge = true; }; self.setupOceanChallenge = function () { self.titleText.setText('DĂ©fi des OcĂ©ans'); self.currentQuestion = oceanQuestions[Math.floor(Math.random() * oceanQuestions.length)]; self.instructionText.setText(self.currentQuestion.question); self.instructionText.y = -80; // Create answer buttons self.answerButtons = []; for (var i = 0; i < self.currentQuestion.answers.length; i++) { var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], { size: 20, fill: 0xFFFFFF })); button.anchor.set(0.5, 0.5); button.y = -20 + i * 30; button.answerIndex = i; self.answerButtons.push(button); } self.isQuizChallenge = true; }; self.down = function (x, y, obj) { if (!self.isActive) return; // Handle quiz challenges if (self.isQuizChallenge && self.answerButtons) { // Check if click is on an answer button for (var i = 0; i < self.answerButtons.length; i++) { var button = self.answerButtons[i]; var buttonBounds = button.getBounds(); var localPos = self.toLocal({ x: x, y: y }); if (localPos.x >= button.x - button.width / 2 && localPos.x <= button.x + button.width / 2 && localPos.y >= button.y - 15 && localPos.y <= button.y + 15) { // Answer selected if (button.answerIndex === self.currentQuestion.correct) { self.onSuccess(); } else { self.onFailure(); } return; } } return; } // Handle action challenges (light, shadow) if (self.challengeType === 'light' || self.challengeType === 'shadow') { self.attempts++; var success = Math.random() < 0.3; if (success) { self.onSuccess(); } else { self.onFailure(); } } }; self.onSuccess = function () { self.resultText.setText('RĂ©ussi ! +5 LIPOINTS'); self.resultText.fill = "#00FF00"; LK.getSound('success').play(); // Award LIPOINTS lipoints[self.challengeType] += 5; updateLipointsDisplay(); checkLevelUp(); LK.setTimeout(function () { self.closeChallenge(); }, 2000); }; self.onFailure = function () { if (self.isQuizChallenge || self.attempts >= self.maxAttempts) { self.resultText.setText('DĂ©fi ĂchouĂ© !'); self.resultText.fill = "#FF0000"; LK.getSound('fail').play(); LK.setTimeout(function () { self.closeChallenge(); }, 2000); } else { self.resultText.setText('RĂ©essaie ! (' + (self.maxAttempts - self.attempts) + ' essais restants)'); self.resultText.fill = "#FFFF00"; } }; self.closeChallenge = function () { self.isActive = false; activeChallenge = null; self.destroy(); isPaused = false; }; return self; }); var Lisa = Container.expand(function () { var self = Container.call(this); var lisaGraphics = self.attachAsset('lisa', { anchorX: 0.5, anchorY: 0.5 }); self.velocityY = 0; self.isJumping = false; self.onGround = false; self.update = function () { // Apply gravity if (!self.onGround) { self.velocityY += 0.8; } self.y += self.velocityY; // Check collision with trees self.onGround = false; for (var i = 0; i < trees.length; i++) { var tree = trees[i]; if (self.intersects(tree) && self.velocityY > 0) { self.y = tree.y - tree.height / 2 - self.height / 2; self.velocityY = 0; self.onGround = true; self.isJumping = false; break; } } // Fall off screen check if (self.y > 2732 + 100) { resetLisaPosition(); } }; self.jump = function () { if (self.onGround && !self.isJumping) { self.velocityY = -18; self.isJumping = true; self.onGround = false; LK.getSound('jump').play(); } }; return self; }); var PowerBubble = Container.expand(function (type) { var self = Container.call(this); var bubbleAsset = type + 'Bubble'; var bubbleGraphics = self.attachAsset(bubbleAsset, { anchorX: 0.5, anchorY: 0.5 }); self.bubbleType = type; self.collected = false; self.update = function () { self.x -= scrollSpeed; // Check collision with Lisa if (!self.collected && self.intersects(lisa)) { self.collected = true; LK.getSound('collect').play(); startChallenge(self.bubbleType); self.destroy(); bubbles.splice(bubbles.indexOf(self), 1); } }; return self; }); var Tree = Container.expand(function () { var self = Container.call(this); var treeGraphics = self.attachAsset('tree', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.x -= scrollSpeed; }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB }); /**** * Game Code ****/ // Game variables var lisa; var trees = []; var bubbles = []; var activeChallenge = null; var isPaused = false; // Scrolling var scrollSpeed = 3; var cameraX = 0; // Quiz questions databases in French var destinyQuestions = [{ question: "Quel sera ton plus grand rĂȘve dans la vie ?", answers: ["Devenir cĂ©lĂšbre", "Aider les autres", "DĂ©couvrir le monde", "CrĂ©er quelque chose de beau"], correct: 1 }, { question: "Quelle couleur reprĂ©sente le mieux ton avenir ?", answers: ["Rouge passion", "Bleu sĂ©rĂ©nitĂ©", "Vert nature", "Jaune soleil"], correct: 2 }, { question: "Quel animal te guidera dans ta destinĂ©e ?", answers: ["Un chat mystĂ©rieux", "Un chien fidĂšle", "Un oiseau libre", "Un dauphin sage"], correct: 3 }, { question: "Dans quel endroit trouveras-tu ton bonheur ?", answers: ["En montagne", "Au bord de la mer", "Dans une forĂȘt", "Dans une grande ville"], correct: 1 }, { question: "Quel pouvoir magique aimerais-tu avoir ?", answers: ["Lire dans les pensĂ©es", "Voler dans le ciel", "Parler aux animaux", "ContrĂŽler le temps"], correct: 2 }, { question: "Quelle est ta plus grande peur Ă surmonter ?", answers: ["Le noir", "Les araignĂ©es", "Ătre seul(e)", "L'Ă©chec"], correct: 3 }, { question: "Quel mĂ©tier feras-tu plus tard ?", answers: ["MĂ©decin", "Artiste", "Enseignant", "Aventurier"], correct: 0 }, { question: "Combien d'enfants auras-tu ?", answers: ["Aucun", "Un ou deux", "Trois ou quatre", "Beaucoup"], correct: 1 }, { question: "Dans combien de pays voyageras-tu ?", answers: ["Moins de 5", "Entre 5 et 10", "Entre 10 et 20", "Plus de 20"], correct: 2 }, { question: "Ă quel Ăąge trouveras-tu l'amour ?", answers: ["Avant 20 ans", "Entre 20 et 30 ans", "Entre 30 et 40 ans", "AprĂšs 40 ans"], correct: 1 }, { question: "Quelle sera ta plus grande rĂ©ussite ?", answers: ["Professionnelle", "Familiale", "Artistique", "Sportive"], correct: 1 }, { question: "Quel trĂ©sor dĂ©couvriras-tu ?", answers: ["De l'or", "Des diamants", "Un livre magique", "Une carte secrĂšte"], correct: 2 }, { question: "Quelle planĂšte visiteras-tu en premier ?", answers: ["Mars", "Venus", "Jupiter", "Saturne"], correct: 0 }, { question: "Quel super-hĂ©ros deviendras-tu ?", answers: ["Captain Courage", "Wonder Wisdom", "Magic Master", "Super Smile"], correct: 1 }, { question: "Quelle invention crĂ©eras-tu ?", answers: ["Une machine Ă bonheur", "Un tĂ©lĂ©porteur", "Une potion magique", "Un robot ami"], correct: 0 }, { question: "Quel monstre amical rencontreras-tu ?", answers: ["Un dragon gentil", "Une licorne dorĂ©e", "Un gĂ©ant souriant", "Une fĂ©e malicieuse"], correct: 1 }, { question: "Quelle Ă©toile Ă©clairera ton chemin ?", answers: ["L'Ă©toile polaire", "Une Ă©toile filante", "L'Ă©toile du berger", "Une constellation magique"], correct: 3 }, { question: "Quel don dĂ©velopperas-tu ?", answers: ["Le chant", "La danse", "La peinture", "La cuisine"], correct: 2 }, { question: "Quelle surprise t'attend demain ?", answers: ["Un cadeau", "Une nouvelle amitiĂ©", "Une dĂ©couverte", "Une aventure"], correct: 1 }, { question: "Quel sera ton animal de compagnie ?", answers: ["Un chat magique", "Un chien volant", "Un lapin parlant", "Un oiseau chanteur"], correct: 0 }, { question: "Dans quel chĂąteau vivras-tu ?", answers: ["Un chĂąteau de glace", "Un chĂąteau de nuages", "Un chĂąteau sous-marin", "Un chĂąteau dans les arbres"], correct: 3 }, { question: "Quel fruit magique goĂ»teras-tu ?", answers: ["Une pomme dorĂ©e", "Une poire argentĂ©e", "Une fraise gĂ©ante", "Un raisin arc-en-ciel"], correct: 0 }, { question: "Quelle danse apprendras-tu ?", answers: ["La danse des Ă©toiles", "La danse des fleurs", "La danse des vagues", "La danse du vent"], correct: 1 }, { question: "Quel livre magique liras-tu ?", answers: ["Le livre des secrets", "Le livre des rĂȘves", "Le livre du temps", "Le livre des souhaits"], correct: 3 }, { question: "Quelle potion prĂ©pareras-tu ?", answers: ["Potion de courage", "Potion de sagesse", "Potion de joie", "Potion d'amitiĂ©"], correct: 2 }, { question: "Quel vĂ©hicule magique conduiras-tu ?", answers: ["Un tapis volant", "Une voiture nuage", "Un bateau-Ă©toile", "Un train-arc-en-ciel"], correct: 0 }, { question: "Quelle couronne porteras-tu ?", answers: ["Couronne de fleurs", "Couronne d'Ă©toiles", "Couronne de cristal", "Couronne de lumiĂšre"], correct: 1 }, { question: "Quel jardin secret dĂ©couvriras-tu ?", answers: ["Jardin de roses", "Jardin de papillons", "Jardin de cristaux", "Jardin de musique"], correct: 2 }, { question: "Quelle magie maĂźtriseras-tu ?", answers: ["Magie des Ă©lĂ©ments", "Magie des Ă©motions", "Magie des saisons", "Magie des rĂȘves"], correct: 3 }, { question: "Quel cadeau recevras-tu ?", answers: ["Une baguette magique", "Un collier enchantĂ©", "Des bottes de sept lieues", "Un miroir parlant"], correct: 0 }]; var lollipopQuestions = [{ question: "Quelle est la saveur de sucette la plus populaire ?", answers: ["Fraise", "Pomme", "Cerise", "Orange"], correct: 0 }, { question: "De quelle couleur est une sucette Ă la menthe ?", answers: ["Rouge", "Jaune", "Verte", "Bleue"], correct: 2 }, { question: "Combien de calories contient une petite sucette ?", answers: ["20-30", "50-60", "80-90", "100-110"], correct: 0 }, { question: "Dans quel pays a Ă©tĂ© inventĂ©e la sucette ?", answers: ["France", "Ătats-Unis", "Angleterre", "Allemagne"], correct: 1 }, { question: "Quel est l'ingrĂ©dient principal d'une sucette ?", answers: ["Chocolat", "Sucre", "Miel", "Sirop"], correct: 1 }, { question: "Comment appelle-t-on une sucette gĂ©ante ?", answers: ["Mega-pop", "Super-sucette", "Lolly gĂ©ante", "Maxi-pop"], correct: 0 }, { question: "Quelle forme ont la plupart des sucettes ?", answers: ["CarrĂ©e", "Triangulaire", "Ronde", "Ovale"], correct: 2 }, { question: "Combien de temps faut-il pour finir une sucette moyenne ?", answers: ["5 minutes", "15 minutes", "30 minutes", "1 heure"], correct: 1 }, { question: "Quelle sucette change de couleur en la lĂ©chant ?", answers: ["Rainbow pop", "Color-pop", "Magic pop", "Change-pop"], correct: 2 }, { question: "Quel animal trouve-t-on sur certaines sucettes ?", answers: ["Chat", "Chien", "Coq", "Tous"], correct: 3 }, { question: "Quelle sucette fait du bruit ?", answers: ["Whistle pop", "Sound pop", "Music pop", "Noise pop"], correct: 0 }, { question: "Dans quel film voit-on des sucettes magiques ?", answers: ["Charlie et la chocolaterie", "Harry Potter", "Shrek", "Frozen"], correct: 0 }, { question: "Quelle est la plus grosse sucette du monde ?", answers: ["1 kg", "5 kg", "10 kg", "37 kg"], correct: 3 }, { question: "Combien de saveurs peut avoir une sucette arc-en-ciel ?", answers: ["3", "5", "7", "10"], correct: 2 }, { question: "Quel goĂ»t bizarre peut avoir une sucette ?", answers: ["Pizza", "Fromage", "Poisson", "Tous"], correct: 3 }, { question: "Quelle sucette est bonne pour la gorge ?", answers: ["Au miel", "Au citron", "Ă l'eucalyptus", "Toutes"], correct: 3 }, { question: "Comment s'appelle le bĂąton de la sucette ?", answers: ["Stick", "Tige", "BĂątonnet", "Tous"], correct: 3 }, { question: "Quelle sucette peut exploser en bouche ?", answers: ["Pop rocks", "Bubble pop", "Crack pop", "Bang pop"], correct: 0 }, { question: "Dans quelle dĂ©cennie les sucettes sont devenues populaires ?", answers: ["1920", "1940", "1960", "1980"], correct: 1 }, { question: "Quelle forme de sucette est la plus rigolote ?", answers: ["Dinosaure", "Voiture", "Fleur", "Toutes"], correct: 3 }, { question: "Combien coĂ»te une sucette classique ?", answers: ["0,50âŹ", "1âŹ", "2âŹ", "5âŹ"], correct: 0 }, { question: "Quelle sucette a un goĂ»t piquant ?", answers: ["Piment", "Poivre", "Gingembre", "Toutes"], correct: 3 }, { question: "Dans quel magasin trouve-t-on le plus de sucettes ?", answers: ["Boulangerie", "Confiserie", "SupermarchĂ©", "Pharmacie"], correct: 1 }, { question: "Quelle sucette brille dans le noir ?", answers: ["Glow pop", "Fluo pop", "Light pop", "Bright pop"], correct: 0 }, { question: "Combien de sucettes mange un enfant par mois ?", answers: ["2-3", "5-6", "10-12", "15-20"], correct: 1 }, { question: "Quelle sucette a plusieurs couches ?", answers: ["Layer pop", "Multi pop", "Gobstopper", "Stack pop"], correct: 2 }, { question: "Quel est le problĂšme avec les sucettes ?", answers: ["Caries", "Mal au ventre", "Taches", "Tous"], correct: 3 }, { question: "Quelle sucette fond le plus vite ?", answers: ["Au chocolat", "Au caramel", "Aux fruits", "Ă la glace"], correct: 3 }, { question: "Combien de sucettes sont vendues par jour dans le monde ?", answers: ["1 million", "10 millions", "100 millions", "1 milliard"], correct: 2 }, { question: "Quelle sucette a Ă©tĂ© inventĂ©e par accident ?", answers: ["Sucette classique", "Chupa Chups", "Dum Dum", "Blow Pop"], correct: 0 }, { question: "Dans quelle saison mange-t-on le plus de sucettes ?", answers: ["Printemps", "ĂtĂ©", "Automne", "Hiver"], correct: 1 }, { question: "Quelle sucette peut servir de sifflet ?", answers: ["Whistle pop", "Sound stick", "Music lolly", "Sing pop"], correct: 0 }, { question: "Combien de temps peut se conserver une sucette ?", answers: ["1 semaine", "1 mois", "6 mois", "2 ans"], correct: 3 }, { question: "Quelle est la sucette la plus cĂ©lĂšbre ?", answers: ["Chupa Chups", "Lollipop", "Dum Dum", "Blow Pop"], correct: 0 }, { question: "Quel Ăąge a la plus vieille sucette retrouvĂ©e ?", answers: ["50 ans", "100 ans", "500 ans", "4000 ans"], correct: 3 }]; var oceanQuestions = [{ question: "Quel est le plus grand ocĂ©an du monde ?", answers: ["Atlantique", "Indien", "Pacifique", "Arctique"], correct: 2 }, { question: "Combien d'ocĂ©ans y a-t-il sur Terre ?", answers: ["3", "4", "5", "6"], correct: 2 }, { question: "Quel animal est le plus gros de l'ocĂ©an ?", answers: ["Requin", "Baleine bleue", "Pieuvre gĂ©ante", "Raie manta"], correct: 1 }, { question: "Ă quelle profondeur peut-on trouver la fosse des Mariannes ?", answers: ["5000m", "8000m", "11000m", "15000m"], correct: 2 }, { question: "Quel pourcentage de la Terre est couvert par les ocĂ©ans ?", answers: ["50%", "60%", "70%", "80%"], correct: 2 }, { question: "Comment s'appelle le mouvement de l'eau dans l'ocĂ©an ?", answers: ["Vague", "Courant", "MarĂ©e", "Tous"], correct: 3 }, { question: "Quel poisson peut voler au-dessus de l'eau ?", answers: ["Poisson-volant", "Thon", "Sardine", "Maquereau"], correct: 0 }, { question: "Quelle est la tempĂ©rature de l'eau au fond de l'ocĂ©an ?", answers: ["0°C", "4°C", "10°C", "20°C"], correct: 1 }, { question: "Combien de sel contient l'eau de mer ?", answers: ["1%", "3.5%", "7%", "10%"], correct: 1 }, { question: "Quel animal peut changer de couleur sous l'eau ?", answers: ["Poisson-clown", "Pieuvre", "Ătoile de mer", "Crabe"], correct: 1 }, { question: "Comment respire un dauphin ?", answers: ["Avec des branchies", "Par la peau", "Avec des poumons", "Par la bouche"], correct: 2 }, { question: "Quelle est la vitesse d'un tsunami ?", answers: ["50 km/h", "200 km/h", "500 km/h", "800 km/h"], correct: 3 }, { question: "Combien d'espĂšces marines sont encore inconnues ?", answers: ["50%", "70%", "80%", "95%"], correct: 2 }, { question: "Quel requin est le plus dangereux ?", answers: ["Requin blanc", "Requin tigre", "Requin marteau", "Tous Ă©gaux"], correct: 0 }, { question: "Ă quelle profondeur la lumiĂšre disparaĂźt-elle ?", answers: ["100m", "200m", "500m", "1000m"], correct: 3 }, { question: "Combien pĂšse une baleine bleue ?", answers: ["50 tonnes", "100 tonnes", "150 tonnes", "200 tonnes"], correct: 2 }, { question: "Quel est l'animal le plus intelligent de l'ocĂ©an ?", answers: ["Dauphin", "Pieuvre", "Baleine", "Tous"], correct: 3 }, { question: "Comment les poissons voient-ils sous l'eau ?", answers: ["En noir et blanc", "En couleurs", "Flou", "TrĂšs net"], correct: 1 }, { question: "Quelle tortue vit le plus longtemps ?", answers: ["Tortue verte", "Tortue imbriquĂ©e", "Tortue luth", "Tortue caouanne"], correct: 0 }, { question: "Combien de temps peut retenir sa respiration une baleine ?", answers: ["10 minutes", "30 minutes", "1 heure", "2 heures"], correct: 3 }, { question: "Quel corail construit des rĂ©cifs ?", answers: ["Corail dur", "Corail mou", "Corail noir", "Tous"], correct: 0 }, { question: "Ă quelle vitesse nage un thon ?", answers: ["20 km/h", "40 km/h", "70 km/h", "100 km/h"], correct: 2 }, { question: "Combien d'eau les ocĂ©ans contiennent-ils ?", answers: ["1 milliard de litres", "1 trillion de litres", "1 quintillion de litres", "Impossible Ă mesurer"], correct: 2 }, { question: "Quel animal produit des perles ?", answers: ["HuĂźtre", "Moule", "Coquille Saint-Jacques", "Toutes"], correct: 3 }, { question: "Comment les baleines communiquent-elles ?", answers: ["Par des cris", "Par des chants", "Par des gestes", "Toutes"], correct: 3 }, { question: "Quel poisson a des dents trĂšs pointues ?", answers: ["Piranha", "Barracuda", "Requin", "Tous"], correct: 3 }, { question: "Ă quelle profondeur vivent les poissons des abysses ?", answers: ["1000m", "2000m", "4000m", "6000m+"], correct: 3 }, { question: "Combien d'Ćufs pond une tortue de mer ?", answers: ["10-20", "50-100", "100-200", "200-300"], correct: 2 }, { question: "Quel mammifĂšre marin a une dĂ©fense ?", answers: ["Morse", "Narval", "Phoque", "Tous"], correct: 1 }, { question: "Comment s'appelle le bĂ©bĂ© de la baleine ?", answers: ["Baleineau", "Petit", "Veau", "Tous"], correct: 0 }, { question: "Quelle algue peut devenir trĂšs grande ?", answers: ["Kelp", "Varech", "Fucus", "Toutes"], correct: 0 }, { question: "Combien de cĆurs a une pieuvre ?", answers: ["1", "2", "3", "4"], correct: 2 }, { question: "Quel poisson peut survivre hors de l'eau ?", answers: ["Poisson-chat", "Anguille", "Mudskipper", "Tous"], correct: 3 }, { question: "Ă quelle tempĂ©rature gĂšle l'eau de mer ?", answers: ["-2°C", "0°C", "2°C", "4°C"], correct: 0 }, { question: "Combien de plastique y a-t-il dans les ocĂ©ans ?", answers: ["1 million de tonnes", "8 millions de tonnes", "50 millions de tonnes", "150 millions de tonnes"], correct: 3 }]; // LIPOINTS system var lipoints = storage.lipoints || { light: 0, destiny: 0, shadow: 0, lollipop: 0, ocean: 0 }; var currentLevel = storage.currentLevel || 1; var totalLipoints = storage.totalLipoints || 0; // UI elements var levelText = new Text2('Niveau: 1', { size: 36, fill: 0xFFFFFF }); levelText.anchor.set(0, 0); LK.gui.topRight.addChild(levelText); var lipointsText = new Text2('', { size: 24, fill: 0xFFFFFF }); lipointsText.anchor.set(1, 0); lipointsText.y = 50; LK.gui.topRight.addChild(lipointsText); // Initialize Lisa lisa = game.addChild(new Lisa()); lisa.x = 300; lisa.y = 2000; // Create initial trees function createTree(x, y) { var tree = game.addChild(new Tree()); tree.x = x; tree.y = y; trees.push(tree); return tree; } // Create starting platform createTree(300, 2200); createTree(600, 2100); createTree(900, 2000); createTree(1200, 2150); // Bubble types var bubbleTypes = ['light', 'destiny', 'shadow', 'lollipop', 'ocean']; function createBubble() { if (bubbles.length < 3) { var randomType = bubbleTypes[Math.floor(Math.random() * bubbleTypes.length)]; var bubble = game.addChild(new PowerBubble(randomType)); bubble.x = 2200 + Math.random() * 400; bubble.y = 1800 + Math.random() * 400; bubbles.push(bubble); } } function resetLisaPosition() { lisa.x = 300; lisa.y = 2000; lisa.velocityY = 0; lisa.onGround = false; } function startChallenge(type) { if (activeChallenge) return; isPaused = true; activeChallenge = game.addChild(new Challenge(type)); activeChallenge.x = 1024; activeChallenge.y = 1366; activeChallenge.setupChallenge(); } function updateLipointsDisplay() { var displayText = 'LIPOINTS:\n'; displayText += 'LumiĂšre: ' + lipoints.light + '\n'; displayText += 'Destin: ' + lipoints.destiny + '\n'; displayText += 'Ombre: ' + lipoints.shadow + '\n'; displayText += 'Sucettes: ' + lipoints.lollipop + '\n'; displayText += 'OcĂ©ans: ' + lipoints.ocean; lipointsText.setText(displayText); // Save to storage storage.lipoints = lipoints; } function checkLevelUp() { totalLipoints = lipoints.light + lipoints.destiny + lipoints.shadow + lipoints.lollipop + lipoints.ocean; var requiredPoints = 10 * Math.pow(2, currentLevel - 1); if (totalLipoints >= requiredPoints && currentLevel < 50) { currentLevel++; levelText.setText('Niveau: ' + currentLevel); storage.currentLevel = currentLevel; storage.totalLipoints = totalLipoints; // Check for game completion if (currentLevel >= 50) { var highestType = getHighestLipointType(); LK.setTimeout(function () { LK.showYouWin(); }, 1000); } } } function getHighestLipointType() { var highest = 0; var highestType = 'light'; for (var type in lipoints) { if (lipoints[type] > highest) { highest = lipoints[type]; highestType = type; } } return highestType; } // Game controls game.down = function (x, y, obj) { if (activeChallenge) return; lisa.jump(); }; // Game update loop var treeSpawnTimer = 0; var bubbleSpawnTimer = 0; game.update = function () { if (isPaused) return; // Update camera following Lisa cameraX = lisa.x - 400; // Spawn trees treeSpawnTimer++; if (treeSpawnTimer > 120) { var lastTree = trees[trees.length - 1]; if (lastTree && lastTree.x < cameraX + 2400) { var newX = lastTree.x + 300 + Math.random() * 200; var newY = 1900 + Math.random() * 400; createTree(newX, newY); } treeSpawnTimer = 0; } // Spawn bubbles bubbleSpawnTimer++; if (bubbleSpawnTimer > 180) { createBubble(); bubbleSpawnTimer = 0; } // Clean up off-screen trees for (var i = trees.length - 1; i >= 0; i--) { if (trees[i].x < cameraX - 300) { trees[i].destroy(); trees.splice(i, 1); } } // Clean up off-screen bubbles for (var i = bubbles.length - 1; i >= 0; i--) { if (bubbles[i].x < cameraX - 300) { bubbles[i].destroy(); bubbles.splice(i, 1); } } }; // Initialize display updateLipointsDisplay(); levelText.setText('Niveau: ' + currentLevel);
===================================================================
--- original.js
+++ change.js
@@ -56,10 +56,10 @@
break;
}
};
self.setupLightChallenge = function () {
- self.titleText.setText('Light Challenge');
- self.instructionText.setText('Tap to light the lamps with willpower!');
+ self.titleText.setText('Défi de la LumiÚre');
+ self.instructionText.setText('Appuie pour allumer les lampes par la force de ta pensée !');
// Create lamps
self.lamps = [];
for (var i = 0; i < 3; i++) {
var lamp = self.addChild(LK.getAsset('lamp', {
@@ -72,46 +72,105 @@
self.lamps.push(lamp);
}
};
self.setupDestinyChallenge = function () {
- self.titleText.setText('Destiny Challenge');
- var questions = ['What guides your path?', 'What is your greatest strength?', 'What do you seek most?'];
- var randomQuestion = questions[Math.floor(Math.random() * questions.length)];
- self.instructionText.setText(randomQuestion + '\nTap to answer with your heart!');
+ self.titleText.setText('Défi du Destin');
+ self.currentQuestion = destinyQuestions[Math.floor(Math.random() * destinyQuestions.length)];
+ self.instructionText.setText(self.currentQuestion.question);
+ self.instructionText.y = -80;
+ // Create answer buttons
+ self.answerButtons = [];
+ for (var i = 0; i < self.currentQuestion.answers.length; i++) {
+ var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], {
+ size: 20,
+ fill: 0xFFFFFF
+ }));
+ button.anchor.set(0.5, 0.5);
+ button.y = -20 + i * 30;
+ button.answerIndex = i;
+ self.answerButtons.push(button);
+ }
+ self.isQuizChallenge = true;
};
self.setupShadowChallenge = function () {
- self.titleText.setText('Shadow Challenge');
- self.instructionText.setText('Dim the bright sun with shadow magic!\nTap to cast shadows!');
+ self.titleText.setText('Défi de l\'Ombre');
+ self.instructionText.setText('Ăteins le soleil brillant avec la magie de l\'ombre !\nAppuie pour crĂ©er des ombres !');
};
self.setupLollipopChallenge = function () {
- self.titleText.setText('Lollipop Challenge');
- var questions = ['What brings you joy?', 'What makes you smile?', 'What is your favorite treat?'];
- var randomQuestion = questions[Math.floor(Math.random() * questions.length)];
- self.instructionText.setText(randomQuestion + '\nTap to share your sweetness!');
+ self.titleText.setText('Défi des Sucettes');
+ self.currentQuestion = lollipopQuestions[Math.floor(Math.random() * lollipopQuestions.length)];
+ self.instructionText.setText(self.currentQuestion.question);
+ self.instructionText.y = -80;
+ // Create answer buttons
+ self.answerButtons = [];
+ for (var i = 0; i < self.currentQuestion.answers.length; i++) {
+ var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], {
+ size: 20,
+ fill: 0xFFFFFF
+ }));
+ button.anchor.set(0.5, 0.5);
+ button.y = -20 + i * 30;
+ button.answerIndex = i;
+ self.answerButtons.push(button);
+ }
+ self.isQuizChallenge = true;
};
self.setupOceanChallenge = function () {
- self.titleText.setText('Ocean Challenge');
- self.instructionText.setText('Feel the flow of ocean magic!\nTap to create waves!');
+ self.titleText.setText('Défi des Océans');
+ self.currentQuestion = oceanQuestions[Math.floor(Math.random() * oceanQuestions.length)];
+ self.instructionText.setText(self.currentQuestion.question);
+ self.instructionText.y = -80;
+ // Create answer buttons
+ self.answerButtons = [];
+ for (var i = 0; i < self.currentQuestion.answers.length; i++) {
+ var button = self.addChild(new Text2(i + 1 + '. ' + self.currentQuestion.answers[i], {
+ size: 20,
+ fill: 0xFFFFFF
+ }));
+ button.anchor.set(0.5, 0.5);
+ button.y = -20 + i * 30;
+ button.answerIndex = i;
+ self.answerButtons.push(button);
+ }
+ self.isQuizChallenge = true;
};
self.down = function (x, y, obj) {
if (!self.isActive) return;
- self.attempts++;
- var success = false;
- // 30% success rate for action challenges
- if (self.challengeType === 'light' || self.challengeType === 'shadow' || self.challengeType === 'ocean') {
- success = Math.random() < 0.3;
- } else {
- // Quiz questions have 50% success rate
- success = Math.random() < 0.5;
+ // Handle quiz challenges
+ if (self.isQuizChallenge && self.answerButtons) {
+ // Check if click is on an answer button
+ for (var i = 0; i < self.answerButtons.length; i++) {
+ var button = self.answerButtons[i];
+ var buttonBounds = button.getBounds();
+ var localPos = self.toLocal({
+ x: x,
+ y: y
+ });
+ if (localPos.x >= button.x - button.width / 2 && localPos.x <= button.x + button.width / 2 && localPos.y >= button.y - 15 && localPos.y <= button.y + 15) {
+ // Answer selected
+ if (button.answerIndex === self.currentQuestion.correct) {
+ self.onSuccess();
+ } else {
+ self.onFailure();
+ }
+ return;
+ }
+ }
+ return;
}
- if (success) {
- self.onSuccess();
- } else {
- self.onFailure();
+ // Handle action challenges (light, shadow)
+ if (self.challengeType === 'light' || self.challengeType === 'shadow') {
+ self.attempts++;
+ var success = Math.random() < 0.3;
+ if (success) {
+ self.onSuccess();
+ } else {
+ self.onFailure();
+ }
}
};
self.onSuccess = function () {
- self.resultText.setText('Success! +5 LIPOINTS');
+ self.resultText.setText('Réussi ! +5 LIPOINTS');
self.resultText.fill = "#00FF00";
LK.getSound('success').play();
// Award LIPOINTS
lipoints[self.challengeType] += 5;
@@ -121,17 +180,17 @@
self.closeChallenge();
}, 2000);
};
self.onFailure = function () {
- if (self.attempts >= self.maxAttempts) {
- self.resultText.setText('Challenge Failed!');
+ if (self.isQuizChallenge || self.attempts >= self.maxAttempts) {
+ self.resultText.setText('DĂ©fi ĂchouĂ© !');
self.resultText.fill = "#FF0000";
LK.getSound('fail').play();
LK.setTimeout(function () {
self.closeChallenge();
}, 2000);
} else {
- self.resultText.setText('Try again! (' + (self.maxAttempts - self.attempts) + ' attempts left)');
+ self.resultText.setText('Réessaie ! (' + (self.maxAttempts - self.attempts) + ' essais restants)');
self.resultText.fill = "#FFFF00";
}
};
self.closeChallenge = function () {
@@ -236,8 +295,412 @@
var isPaused = false;
// Scrolling
var scrollSpeed = 3;
var cameraX = 0;
+// Quiz questions databases in French
+var destinyQuestions = [{
+ question: "Quel sera ton plus grand rĂȘve dans la vie ?",
+ answers: ["Devenir célÚbre", "Aider les autres", "Découvrir le monde", "Créer quelque chose de beau"],
+ correct: 1
+}, {
+ question: "Quelle couleur représente le mieux ton avenir ?",
+ answers: ["Rouge passion", "Bleu sérénité", "Vert nature", "Jaune soleil"],
+ correct: 2
+}, {
+ question: "Quel animal te guidera dans ta destinée ?",
+ answers: ["Un chat mystérieux", "Un chien fidÚle", "Un oiseau libre", "Un dauphin sage"],
+ correct: 3
+}, {
+ question: "Dans quel endroit trouveras-tu ton bonheur ?",
+ answers: ["En montagne", "Au bord de la mer", "Dans une forĂȘt", "Dans une grande ville"],
+ correct: 1
+}, {
+ question: "Quel pouvoir magique aimerais-tu avoir ?",
+ answers: ["Lire dans les pensées", "Voler dans le ciel", "Parler aux animaux", "ContrÎler le temps"],
+ correct: 2
+}, {
+ question: "Quelle est ta plus grande peur Ă surmonter ?",
+ answers: ["Le noir", "Les araignĂ©es", "Ătre seul(e)", "L'Ă©chec"],
+ correct: 3
+}, {
+ question: "Quel métier feras-tu plus tard ?",
+ answers: ["Médecin", "Artiste", "Enseignant", "Aventurier"],
+ correct: 0
+}, {
+ question: "Combien d'enfants auras-tu ?",
+ answers: ["Aucun", "Un ou deux", "Trois ou quatre", "Beaucoup"],
+ correct: 1
+}, {
+ question: "Dans combien de pays voyageras-tu ?",
+ answers: ["Moins de 5", "Entre 5 et 10", "Entre 10 et 20", "Plus de 20"],
+ correct: 2
+}, {
+ question: "Ă quel Ăąge trouveras-tu l'amour ?",
+ answers: ["Avant 20 ans", "Entre 20 et 30 ans", "Entre 30 et 40 ans", "AprĂšs 40 ans"],
+ correct: 1
+}, {
+ question: "Quelle sera ta plus grande réussite ?",
+ answers: ["Professionnelle", "Familiale", "Artistique", "Sportive"],
+ correct: 1
+}, {
+ question: "Quel trésor découvriras-tu ?",
+ answers: ["De l'or", "Des diamants", "Un livre magique", "Une carte secrĂšte"],
+ correct: 2
+}, {
+ question: "Quelle planĂšte visiteras-tu en premier ?",
+ answers: ["Mars", "Venus", "Jupiter", "Saturne"],
+ correct: 0
+}, {
+ question: "Quel super-héros deviendras-tu ?",
+ answers: ["Captain Courage", "Wonder Wisdom", "Magic Master", "Super Smile"],
+ correct: 1
+}, {
+ question: "Quelle invention créeras-tu ?",
+ answers: ["Une machine à bonheur", "Un téléporteur", "Une potion magique", "Un robot ami"],
+ correct: 0
+}, {
+ question: "Quel monstre amical rencontreras-tu ?",
+ answers: ["Un dragon gentil", "Une licorne dorée", "Un géant souriant", "Une fée malicieuse"],
+ correct: 1
+}, {
+ question: "Quelle étoile éclairera ton chemin ?",
+ answers: ["L'étoile polaire", "Une étoile filante", "L'étoile du berger", "Une constellation magique"],
+ correct: 3
+}, {
+ question: "Quel don développeras-tu ?",
+ answers: ["Le chant", "La danse", "La peinture", "La cuisine"],
+ correct: 2
+}, {
+ question: "Quelle surprise t'attend demain ?",
+ answers: ["Un cadeau", "Une nouvelle amitié", "Une découverte", "Une aventure"],
+ correct: 1
+}, {
+ question: "Quel sera ton animal de compagnie ?",
+ answers: ["Un chat magique", "Un chien volant", "Un lapin parlant", "Un oiseau chanteur"],
+ correct: 0
+}, {
+ question: "Dans quel chĂąteau vivras-tu ?",
+ answers: ["Un chĂąteau de glace", "Un chĂąteau de nuages", "Un chĂąteau sous-marin", "Un chĂąteau dans les arbres"],
+ correct: 3
+}, {
+ question: "Quel fruit magique goûteras-tu ?",
+ answers: ["Une pomme dorée", "Une poire argentée", "Une fraise géante", "Un raisin arc-en-ciel"],
+ correct: 0
+}, {
+ question: "Quelle danse apprendras-tu ?",
+ answers: ["La danse des étoiles", "La danse des fleurs", "La danse des vagues", "La danse du vent"],
+ correct: 1
+}, {
+ question: "Quel livre magique liras-tu ?",
+ answers: ["Le livre des secrets", "Le livre des rĂȘves", "Le livre du temps", "Le livre des souhaits"],
+ correct: 3
+}, {
+ question: "Quelle potion prépareras-tu ?",
+ answers: ["Potion de courage", "Potion de sagesse", "Potion de joie", "Potion d'amitié"],
+ correct: 2
+}, {
+ question: "Quel véhicule magique conduiras-tu ?",
+ answers: ["Un tapis volant", "Une voiture nuage", "Un bateau-étoile", "Un train-arc-en-ciel"],
+ correct: 0
+}, {
+ question: "Quelle couronne porteras-tu ?",
+ answers: ["Couronne de fleurs", "Couronne d'étoiles", "Couronne de cristal", "Couronne de lumiÚre"],
+ correct: 1
+}, {
+ question: "Quel jardin secret découvriras-tu ?",
+ answers: ["Jardin de roses", "Jardin de papillons", "Jardin de cristaux", "Jardin de musique"],
+ correct: 2
+}, {
+ question: "Quelle magie maĂźtriseras-tu ?",
+ answers: ["Magie des Ă©lĂ©ments", "Magie des Ă©motions", "Magie des saisons", "Magie des rĂȘves"],
+ correct: 3
+}, {
+ question: "Quel cadeau recevras-tu ?",
+ answers: ["Une baguette magique", "Un collier enchanté", "Des bottes de sept lieues", "Un miroir parlant"],
+ correct: 0
+}];
+var lollipopQuestions = [{
+ question: "Quelle est la saveur de sucette la plus populaire ?",
+ answers: ["Fraise", "Pomme", "Cerise", "Orange"],
+ correct: 0
+}, {
+ question: "De quelle couleur est une sucette Ă la menthe ?",
+ answers: ["Rouge", "Jaune", "Verte", "Bleue"],
+ correct: 2
+}, {
+ question: "Combien de calories contient une petite sucette ?",
+ answers: ["20-30", "50-60", "80-90", "100-110"],
+ correct: 0
+}, {
+ question: "Dans quel pays a été inventée la sucette ?",
+ answers: ["France", "Ătats-Unis", "Angleterre", "Allemagne"],
+ correct: 1
+}, {
+ question: "Quel est l'ingrédient principal d'une sucette ?",
+ answers: ["Chocolat", "Sucre", "Miel", "Sirop"],
+ correct: 1
+}, {
+ question: "Comment appelle-t-on une sucette géante ?",
+ answers: ["Mega-pop", "Super-sucette", "Lolly géante", "Maxi-pop"],
+ correct: 0
+}, {
+ question: "Quelle forme ont la plupart des sucettes ?",
+ answers: ["Carrée", "Triangulaire", "Ronde", "Ovale"],
+ correct: 2
+}, {
+ question: "Combien de temps faut-il pour finir une sucette moyenne ?",
+ answers: ["5 minutes", "15 minutes", "30 minutes", "1 heure"],
+ correct: 1
+}, {
+ question: "Quelle sucette change de couleur en la léchant ?",
+ answers: ["Rainbow pop", "Color-pop", "Magic pop", "Change-pop"],
+ correct: 2
+}, {
+ question: "Quel animal trouve-t-on sur certaines sucettes ?",
+ answers: ["Chat", "Chien", "Coq", "Tous"],
+ correct: 3
+}, {
+ question: "Quelle sucette fait du bruit ?",
+ answers: ["Whistle pop", "Sound pop", "Music pop", "Noise pop"],
+ correct: 0
+}, {
+ question: "Dans quel film voit-on des sucettes magiques ?",
+ answers: ["Charlie et la chocolaterie", "Harry Potter", "Shrek", "Frozen"],
+ correct: 0
+}, {
+ question: "Quelle est la plus grosse sucette du monde ?",
+ answers: ["1 kg", "5 kg", "10 kg", "37 kg"],
+ correct: 3
+}, {
+ question: "Combien de saveurs peut avoir une sucette arc-en-ciel ?",
+ answers: ["3", "5", "7", "10"],
+ correct: 2
+}, {
+ question: "Quel goût bizarre peut avoir une sucette ?",
+ answers: ["Pizza", "Fromage", "Poisson", "Tous"],
+ correct: 3
+}, {
+ question: "Quelle sucette est bonne pour la gorge ?",
+ answers: ["Au miel", "Au citron", "Ă l'eucalyptus", "Toutes"],
+ correct: 3
+}, {
+ question: "Comment s'appelle le bĂąton de la sucette ?",
+ answers: ["Stick", "Tige", "BĂątonnet", "Tous"],
+ correct: 3
+}, {
+ question: "Quelle sucette peut exploser en bouche ?",
+ answers: ["Pop rocks", "Bubble pop", "Crack pop", "Bang pop"],
+ correct: 0
+}, {
+ question: "Dans quelle décennie les sucettes sont devenues populaires ?",
+ answers: ["1920", "1940", "1960", "1980"],
+ correct: 1
+}, {
+ question: "Quelle forme de sucette est la plus rigolote ?",
+ answers: ["Dinosaure", "Voiture", "Fleur", "Toutes"],
+ correct: 3
+}, {
+ question: "Combien coûte une sucette classique ?",
+ answers: ["0,50âŹ", "1âŹ", "2âŹ", "5âŹ"],
+ correct: 0
+}, {
+ question: "Quelle sucette a un goût piquant ?",
+ answers: ["Piment", "Poivre", "Gingembre", "Toutes"],
+ correct: 3
+}, {
+ question: "Dans quel magasin trouve-t-on le plus de sucettes ?",
+ answers: ["Boulangerie", "Confiserie", "Supermarché", "Pharmacie"],
+ correct: 1
+}, {
+ question: "Quelle sucette brille dans le noir ?",
+ answers: ["Glow pop", "Fluo pop", "Light pop", "Bright pop"],
+ correct: 0
+}, {
+ question: "Combien de sucettes mange un enfant par mois ?",
+ answers: ["2-3", "5-6", "10-12", "15-20"],
+ correct: 1
+}, {
+ question: "Quelle sucette a plusieurs couches ?",
+ answers: ["Layer pop", "Multi pop", "Gobstopper", "Stack pop"],
+ correct: 2
+}, {
+ question: "Quel est le problĂšme avec les sucettes ?",
+ answers: ["Caries", "Mal au ventre", "Taches", "Tous"],
+ correct: 3
+}, {
+ question: "Quelle sucette fond le plus vite ?",
+ answers: ["Au chocolat", "Au caramel", "Aux fruits", "Ă la glace"],
+ correct: 3
+}, {
+ question: "Combien de sucettes sont vendues par jour dans le monde ?",
+ answers: ["1 million", "10 millions", "100 millions", "1 milliard"],
+ correct: 2
+}, {
+ question: "Quelle sucette a été inventée par accident ?",
+ answers: ["Sucette classique", "Chupa Chups", "Dum Dum", "Blow Pop"],
+ correct: 0
+}, {
+ question: "Dans quelle saison mange-t-on le plus de sucettes ?",
+ answers: ["Printemps", "ĂtĂ©", "Automne", "Hiver"],
+ correct: 1
+}, {
+ question: "Quelle sucette peut servir de sifflet ?",
+ answers: ["Whistle pop", "Sound stick", "Music lolly", "Sing pop"],
+ correct: 0
+}, {
+ question: "Combien de temps peut se conserver une sucette ?",
+ answers: ["1 semaine", "1 mois", "6 mois", "2 ans"],
+ correct: 3
+}, {
+ question: "Quelle est la sucette la plus célÚbre ?",
+ answers: ["Chupa Chups", "Lollipop", "Dum Dum", "Blow Pop"],
+ correct: 0
+}, {
+ question: "Quel ùge a la plus vieille sucette retrouvée ?",
+ answers: ["50 ans", "100 ans", "500 ans", "4000 ans"],
+ correct: 3
+}];
+var oceanQuestions = [{
+ question: "Quel est le plus grand océan du monde ?",
+ answers: ["Atlantique", "Indien", "Pacifique", "Arctique"],
+ correct: 2
+}, {
+ question: "Combien d'océans y a-t-il sur Terre ?",
+ answers: ["3", "4", "5", "6"],
+ correct: 2
+}, {
+ question: "Quel animal est le plus gros de l'océan ?",
+ answers: ["Requin", "Baleine bleue", "Pieuvre géante", "Raie manta"],
+ correct: 1
+}, {
+ question: "Ă quelle profondeur peut-on trouver la fosse des Mariannes ?",
+ answers: ["5000m", "8000m", "11000m", "15000m"],
+ correct: 2
+}, {
+ question: "Quel pourcentage de la Terre est couvert par les océans ?",
+ answers: ["50%", "60%", "70%", "80%"],
+ correct: 2
+}, {
+ question: "Comment s'appelle le mouvement de l'eau dans l'océan ?",
+ answers: ["Vague", "Courant", "Marée", "Tous"],
+ correct: 3
+}, {
+ question: "Quel poisson peut voler au-dessus de l'eau ?",
+ answers: ["Poisson-volant", "Thon", "Sardine", "Maquereau"],
+ correct: 0
+}, {
+ question: "Quelle est la température de l'eau au fond de l'océan ?",
+ answers: ["0°C", "4°C", "10°C", "20°C"],
+ correct: 1
+}, {
+ question: "Combien de sel contient l'eau de mer ?",
+ answers: ["1%", "3.5%", "7%", "10%"],
+ correct: 1
+}, {
+ question: "Quel animal peut changer de couleur sous l'eau ?",
+ answers: ["Poisson-clown", "Pieuvre", "Ătoile de mer", "Crabe"],
+ correct: 1
+}, {
+ question: "Comment respire un dauphin ?",
+ answers: ["Avec des branchies", "Par la peau", "Avec des poumons", "Par la bouche"],
+ correct: 2
+}, {
+ question: "Quelle est la vitesse d'un tsunami ?",
+ answers: ["50 km/h", "200 km/h", "500 km/h", "800 km/h"],
+ correct: 3
+}, {
+ question: "Combien d'espĂšces marines sont encore inconnues ?",
+ answers: ["50%", "70%", "80%", "95%"],
+ correct: 2
+}, {
+ question: "Quel requin est le plus dangereux ?",
+ answers: ["Requin blanc", "Requin tigre", "Requin marteau", "Tous égaux"],
+ correct: 0
+}, {
+ question: "Ă quelle profondeur la lumiĂšre disparaĂźt-elle ?",
+ answers: ["100m", "200m", "500m", "1000m"],
+ correct: 3
+}, {
+ question: "Combien pĂšse une baleine bleue ?",
+ answers: ["50 tonnes", "100 tonnes", "150 tonnes", "200 tonnes"],
+ correct: 2
+}, {
+ question: "Quel est l'animal le plus intelligent de l'océan ?",
+ answers: ["Dauphin", "Pieuvre", "Baleine", "Tous"],
+ correct: 3
+}, {
+ question: "Comment les poissons voient-ils sous l'eau ?",
+ answers: ["En noir et blanc", "En couleurs", "Flou", "TrĂšs net"],
+ correct: 1
+}, {
+ question: "Quelle tortue vit le plus longtemps ?",
+ answers: ["Tortue verte", "Tortue imbriquée", "Tortue luth", "Tortue caouanne"],
+ correct: 0
+}, {
+ question: "Combien de temps peut retenir sa respiration une baleine ?",
+ answers: ["10 minutes", "30 minutes", "1 heure", "2 heures"],
+ correct: 3
+}, {
+ question: "Quel corail construit des récifs ?",
+ answers: ["Corail dur", "Corail mou", "Corail noir", "Tous"],
+ correct: 0
+}, {
+ question: "Ă quelle vitesse nage un thon ?",
+ answers: ["20 km/h", "40 km/h", "70 km/h", "100 km/h"],
+ correct: 2
+}, {
+ question: "Combien d'eau les océans contiennent-ils ?",
+ answers: ["1 milliard de litres", "1 trillion de litres", "1 quintillion de litres", "Impossible Ă mesurer"],
+ correct: 2
+}, {
+ question: "Quel animal produit des perles ?",
+ answers: ["HuĂźtre", "Moule", "Coquille Saint-Jacques", "Toutes"],
+ correct: 3
+}, {
+ question: "Comment les baleines communiquent-elles ?",
+ answers: ["Par des cris", "Par des chants", "Par des gestes", "Toutes"],
+ correct: 3
+}, {
+ question: "Quel poisson a des dents trĂšs pointues ?",
+ answers: ["Piranha", "Barracuda", "Requin", "Tous"],
+ correct: 3
+}, {
+ question: "Ă quelle profondeur vivent les poissons des abysses ?",
+ answers: ["1000m", "2000m", "4000m", "6000m+"],
+ correct: 3
+}, {
+ question: "Combien d'Ćufs pond une tortue de mer ?",
+ answers: ["10-20", "50-100", "100-200", "200-300"],
+ correct: 2
+}, {
+ question: "Quel mammifÚre marin a une défense ?",
+ answers: ["Morse", "Narval", "Phoque", "Tous"],
+ correct: 1
+}, {
+ question: "Comment s'appelle le bébé de la baleine ?",
+ answers: ["Baleineau", "Petit", "Veau", "Tous"],
+ correct: 0
+}, {
+ question: "Quelle algue peut devenir trĂšs grande ?",
+ answers: ["Kelp", "Varech", "Fucus", "Toutes"],
+ correct: 0
+}, {
+ question: "Combien de cĆurs a une pieuvre ?",
+ answers: ["1", "2", "3", "4"],
+ correct: 2
+}, {
+ question: "Quel poisson peut survivre hors de l'eau ?",
+ answers: ["Poisson-chat", "Anguille", "Mudskipper", "Tous"],
+ correct: 3
+}, {
+ question: "à quelle température gÚle l'eau de mer ?",
+ answers: ["-2°C", "0°C", "2°C", "4°C"],
+ correct: 0
+}, {
+ question: "Combien de plastique y a-t-il dans les océans ?",
+ answers: ["1 million de tonnes", "8 millions de tonnes", "50 millions de tonnes", "150 millions de tonnes"],
+ correct: 3
+}];
// LIPOINTS system
var lipoints = storage.lipoints || {
light: 0,
destiny: 0,
@@ -247,9 +710,9 @@
};
var currentLevel = storage.currentLevel || 1;
var totalLipoints = storage.totalLipoints || 0;
// UI elements
-var levelText = new Text2('Level: 1', {
+var levelText = new Text2('Niveau: 1', {
size: 36,
fill: 0xFFFFFF
});
levelText.anchor.set(0, 0);
@@ -304,13 +767,13 @@
activeChallenge.setupChallenge();
}
function updateLipointsDisplay() {
var displayText = 'LIPOINTS:\n';
- displayText += 'Light: ' + lipoints.light + '\n';
- displayText += 'Destiny: ' + lipoints.destiny + '\n';
- displayText += 'Shadow: ' + lipoints.shadow + '\n';
- displayText += 'Lollipop: ' + lipoints.lollipop + '\n';
- displayText += 'Ocean: ' + lipoints.ocean;
+ displayText += 'LumiĂšre: ' + lipoints.light + '\n';
+ displayText += 'Destin: ' + lipoints.destiny + '\n';
+ displayText += 'Ombre: ' + lipoints.shadow + '\n';
+ displayText += 'Sucettes: ' + lipoints.lollipop + '\n';
+ displayText += 'Océans: ' + lipoints.ocean;
lipointsText.setText(displayText);
// Save to storage
storage.lipoints = lipoints;
}
@@ -318,9 +781,9 @@
totalLipoints = lipoints.light + lipoints.destiny + lipoints.shadow + lipoints.lollipop + lipoints.ocean;
var requiredPoints = 10 * Math.pow(2, currentLevel - 1);
if (totalLipoints >= requiredPoints && currentLevel < 50) {
currentLevel++;
- levelText.setText('Level: ' + currentLevel);
+ levelText.setText('Niveau: ' + currentLevel);
storage.currentLevel = currentLevel;
storage.totalLipoints = totalLipoints;
// Check for game completion
if (currentLevel >= 50) {
@@ -387,5 +850,5 @@
}
};
// Initialize display
updateLipointsDisplay();
-levelText.setText('Level: ' + currentLevel);
\ No newline at end of file
+levelText.setText('Niveau: ' + currentLevel);
\ No newline at end of file
FeÌe. In-Game asset. 2d. High contrast. No shadows
Arbre magique rose. In-Game asset. 2d. High contrast. No shadows
Bulle de lumieÌre. In-Game asset. 2d. High contrast. No shadows
Bulle du destin. In-Game asset. 2d. High contrast. No shadows
Bulle de l'ombre. In-Game asset. 2d. High contrast. No shadows
Bulle de sucette. In-Game asset. 2d. High contrast. No shadows
Bulle de l'oceÌan. In-Game asset. 2d. High contrast. No shadows
Lampe torche. In-Game asset. 2d. High contrast. No shadows
Fond eÌcran sucette. In-Game asset. 2d. High contrast. No shadows
Fond d'eÌcran monde feÌerique. In-Game asset. 2d. High contrast. No shadows
fleÌche. In-Game asset. 2d. High contrast. No shadows
FeÌe stella. In-Game asset. 2d. High contrast. No shadows
FeÌe margot. In-Game asset. 2d. High contrast. No shadows
Chat feÌe. In-Game asset. 2d. High contrast. No shadows
La sorcieÌre Malicia. In-Game asset. 2d. High contrast. No shadows
Petite fille soeurs jumelles. In-Game asset. 2d. High contrast. No shadows
Bulle magique de mysteÌre. In-Game asset. 2d. High contrast. No shadows
Mazz le dragon. In-Game asset. 2d. High contrast. No shadows
Chien avec des ailes de feÌe. In-Game asset. 2d. High contrast. No shadows
Estella la dresseuse de pouvoirs. In-Game asset. 2d. High contrast. No shadows