User prompt
Cevabı Yanlış Bilince "oyun bitti" yerine "Hünerlerini Geliştir" yazsın
User prompt
Please fix the bug: 'LK.enablePause is not a function' in or related to this line: 'LK.enablePause();' Line Number: 238
User prompt
Menüde Start Tuşuna Bastıktan Sonra Oyunu durduramayalım
User prompt
Answer kelimesi ile başlayan cümlenin hemen üstüne"Furkan Çelebi" yazdır
User prompt
saniye veren jokerimiz 15 değil 30 saniye arttırsın saniyemizi
User prompt
Level 4 te değil 10 da bitsin
User prompt
üstünde "CEVAPLA" yazan butonun üstün "JOKER" yaz
User prompt
40 saniye içinde yapılanları geri al
User prompt
üstünde joker yazan butonun üstüne Cevapla yaz
User prompt
Birde Bir joker daha iyi olsun basınca saniyemiz artsın ama tek seferlik
User prompt
arka plana Defter fotoğrafı koy
User prompt
Arka Plana Defter Koy
User prompt
level geçmek için 3 sıoru çözelim
User prompt
JJD - Adventure | Glitch Hop | NCS - Copyright Free Music youtube deki şarkıyı biz başlat tuşuna basınca oyun bitene kadar çal
User prompt
JJD - Adventure | Glitch Hop | NCS - Copyright Free Music adlı şarkı biz yenilene kadar çalsın
User prompt
1 jokerimiz olsun 1. basın cevabı söylesin ve bir kez basma hakkımız olsun
User prompt
10 level olsun
User prompt
10 level olsun 10. level üssü ifadeler olsun misal 5 üssü 2
User prompt
İlk Başada Bir menü Koy
Code edit (1 edits merged)
Please save this source code
User prompt
Math Challenge: 2+2 Quiz
Initial prompt
2artı 2 kaç
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var AnswerButton = Container.expand(function (answer, isCorrect) { var self = Container.call(this); var buttonGraphics = self.attachAsset('answerButton', { anchorX: 0.5, anchorY: 0.5 }); var answerText = new Text2(answer.toString(), { size: 60, fill: 0xFFFFFF }); answerText.anchor.set(0.5, 0.5); self.addChild(answerText); self.answer = answer; self.isCorrect = isCorrect; self.isClicked = false; self.down = function (x, y, obj) { if (self.isClicked) { return; } self.isClicked = true; if (self.isCorrect) { self.removeChild(buttonGraphics); var correctGraphics = self.attachAsset('correctButton', { anchorX: 0.5, anchorY: 0.5 }); LK.getSound('correct').play(); LK.setScore(LK.getScore() + 1); scoreTxt.setText(LK.getScore()); LK.setTimeout(function () { nextQuestion(); }, 1000); } else { self.removeChild(buttonGraphics); var wrongGraphics = self.attachAsset('wrongButton', { anchorX: 0.5, anchorY: 0.5 }); LK.getSound('wrong').play(); LK.setTimeout(function () { showGameOver(); }, 1000); } }; return self; }); var JokerButton = Container.expand(function () { var self = Container.call(this); var buttonGraphics = self.attachAsset('jokerButton', { anchorX: 0.5, anchorY: 0.5 }); var buttonText = new Text2('JOKER', { size: 30, fill: 0xFFFFFF }); buttonText.anchor.set(0.5, 0.5); self.addChild(buttonText); self.down = function (x, y, obj) { if (jokerUsed || gameState !== 'playing') { return; } jokerUsed = true; LK.effects.flashObject(self, 0xFFFFFF, 300); // Show correct answer by highlighting correct button for (var i = 0; i < answerButtons.length; i++) { if (answerButtons[i].isCorrect) { LK.effects.flashObject(answerButtons[i], 0x27ae60, 1500); break; } } // Hide joker button after use self.alpha = 0.3; buttonText.setText('USED'); }; return self; }); var MenuButton = Container.expand(function (text, callback) { var self = Container.call(this); var buttonGraphics = self.attachAsset('menuButton', { anchorX: 0.5, anchorY: 0.5 }); var buttonText = new Text2(text, { size: 50, fill: 0xFFFFFF }); buttonText.anchor.set(0.5, 0.5); self.addChild(buttonText); self.callback = callback; self.down = function (x, y, obj) { LK.effects.flashObject(self, 0xFFFFFF, 200); LK.setTimeout(function () { self.callback(); }, 200); }; return self; }); var TimeJokerButton = Container.expand(function () { var self = Container.call(this); var buttonGraphics = self.attachAsset('timeJokerButton', { anchorX: 0.5, anchorY: 0.5 }); var buttonText = new Text2('JOKER', { size: 28, fill: 0xFFFFFF }); buttonText.anchor.set(0.5, 0.5); self.addChild(buttonText); self.down = function (x, y, obj) { if (timeJokerUsed || gameState !== 'playing') { return; } timeJokerUsed = true; LK.effects.flashObject(self, 0xFFFFFF, 300); // Add 30 seconds to timer timeLeft += 30; timerTxt.setText('Time: ' + timeLeft); // Flash screen to show time bonus LK.effects.flashScreen(0x9b59b6, 500); // Hide joker button after use self.alpha = 0.3; buttonText.setText('USED'); }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x34495e }); /**** * Game Code ****/ var gameState = 'menu'; // 'menu', 'playing', 'gameover' var currentLevel = 1; var questionsAnswered = 0; var maxQuestions = 10; var questionsPerLevel = 3; var timeLeft = 60; var gameTimer = null; var currentQuestion = null; var answerButtons = []; var menuElements = []; var jokerUsed = false; var jokerButton = null; var timeJokerUsed = false; var timeJokerButton = null; // Add notebook background var notebookBackground = LK.getAsset('notebook_background', { anchorX: 0.5, anchorY: 0.5, x: 1024, y: 1366 }); game.addChild(notebookBackground); // UI Elements - initially hidden var questionBox = LK.getAsset('questionBox', { anchorX: 0.5, anchorY: 0.5, x: 1024, y: 800 }); var questionText = new Text2('', { size: 80, fill: 0xFFFFFF }); questionText.anchor.set(0.5, 0.5); questionText.x = 1024; questionText.y = 800; var scoreTxt = new Text2('Score: 0', { size: 60, fill: 0xFFFFFF }); scoreTxt.anchor.set(0, 0); scoreTxt.x = 100; scoreTxt.y = 150; var timerTxt = new Text2('Time: 60', { size: 60, fill: 0xFFFFFF }); timerTxt.anchor.set(1, 0); timerTxt.x = 1948; timerTxt.y = 150; var levelTxt = new Text2('Level: 1', { size: 50, fill: 0xFFFFFF }); levelTxt.anchor.set(0.5, 0); levelTxt.x = 1024; levelTxt.y = 150; var furkanText = new Text2('Furkan Çelebi', { size: 40, fill: 0xFFFFFF }); furkanText.anchor.set(0.5, 0); furkanText.x = 1024; furkanText.y = 100; // Create joker button jokerButton = new JokerButton(); jokerButton.x = 924; jokerButton.y = 1050; // Create time joker button timeJokerButton = new TimeJokerButton(); timeJokerButton.x = 1124; timeJokerButton.y = 1050; function showMenu() { gameState = 'menu'; // Re-enable pause functionality in menu LK.enablePause(); // Clear any existing menu elements for (var i = 0; i < menuElements.length; i++) { menuElements[i].destroy(); } menuElements = []; // Hide game elements if (questionBox.parent) questionBox.parent.removeChild(questionBox); if (questionText.parent) questionText.parent.removeChild(questionText); if (scoreTxt.parent) scoreTxt.parent.removeChild(scoreTxt); if (timerTxt.parent) timerTxt.parent.removeChild(timerTxt); if (levelTxt.parent) levelTxt.parent.removeChild(levelTxt); if (jokerButton && jokerButton.parent) jokerButton.parent.removeChild(jokerButton); if (timeJokerButton && timeJokerButton.parent) timeJokerButton.parent.removeChild(timeJokerButton); if (furkanText.parent) furkanText.parent.removeChild(furkanText); // Create menu background var menuBg = game.addChild(LK.getAsset('menuBackground', { anchorX: 0.5, anchorY: 0.5, x: 1024, y: 1366 })); menuElements.push(menuBg); // Create title var titleText = new Text2('Math Challenge', { size: 120, fill: 0xFFFFFF }); titleText.anchor.set(0.5, 0.5); titleText.x = 1024; titleText.y = 800; game.addChild(titleText); menuElements.push(titleText); // Create subtitle var subtitleText = new Text2('Test your arithmetic skills!', { size: 60, fill: 0xBDC3C7 }); subtitleText.anchor.set(0.5, 0.5); subtitleText.x = 1024; subtitleText.y = 920; game.addChild(subtitleText); menuElements.push(subtitleText); // Create start button var startButton = new MenuButton('START GAME', function () { startGameFromMenu(); }); startButton.x = 1024; startButton.y = 1200; game.addChild(startButton); menuElements.push(startButton); // Create instructions var instructionsText = new Text2('Answer math questions correctly to score points!\nProgress through 10 levels: basic arithmetic to exponents!\nLevel 10 features exponent expressions like 5^2!\nYou have 60 seconds to complete all levels.', { size: 35, fill: 0x95A5A6 }); instructionsText.anchor.set(0.5, 0.5); instructionsText.x = 1024; instructionsText.y = 1400; game.addChild(instructionsText); menuElements.push(instructionsText); } function hideMenu() { // Clear menu elements for (var i = 0; i < menuElements.length; i++) { menuElements[i].destroy(); } menuElements = []; // Show game elements game.addChild(questionBox); game.addChild(questionText); game.addChild(scoreTxt); game.addChild(timerTxt); game.addChild(levelTxt); game.addChild(furkanText); game.addChild(jokerButton); game.addChild(timeJokerButton); } function startGameFromMenu() { gameState = 'playing'; hideMenu(); // Reset game state currentLevel = 1; questionsAnswered = 0; timeLeft = 60; jokerUsed = false; LK.setScore(0); scoreTxt.setText('Score: 0'); timerTxt.setText('Time: 60'); levelTxt.setText('Level: 1'); // Reset joker button if (jokerButton) { jokerButton.alpha = 1; jokerButton.children[1].setText('JOKER'); } // Reset time joker button timeJokerUsed = false; if (timeJokerButton) { timeJokerButton.alpha = 1; timeJokerButton.children[1].setText('JOKER'); } // Disable pause functionality during gameplay LK.disablePause(); // Start background music when game begins LK.playMusic('jjd_adventure'); startGame(); } function generateQuestion() { var num1, num2, operator, correctAnswer; var operations = ['+', '-', '*', '/']; if (currentLevel === 1) { // Level 1: Single digit addition num1 = Math.floor(Math.random() * 9) + 1; num2 = Math.floor(Math.random() * 9) + 1; operator = '+'; } else if (currentLevel === 2) { // Level 2: Single digit subtraction num1 = Math.floor(Math.random() * 9) + 1; num2 = Math.floor(Math.random() * 9) + 1; operator = '-'; if (num2 > num1) { var temp = num1; num1 = num2; num2 = temp; } } else if (currentLevel === 3) { // Level 3: Single digit multiplication num1 = Math.floor(Math.random() * 9) + 1; num2 = Math.floor(Math.random() * 9) + 1; operator = '*'; } else if (currentLevel === 4) { // Level 4: Single digit division num2 = Math.floor(Math.random() * 9) + 1; num1 = num2 * (Math.floor(Math.random() * 9) + 1); operator = '/'; } else if (currentLevel === 5) { // Level 5: Two digit addition num1 = Math.floor(Math.random() * 90) + 10; num2 = Math.floor(Math.random() * 90) + 10; operator = '+'; } else if (currentLevel === 6) { // Level 6: Two digit subtraction num1 = Math.floor(Math.random() * 90) + 10; num2 = Math.floor(Math.random() * 90) + 10; operator = '-'; if (num2 > num1) { var temp = num1; num1 = num2; num2 = temp; } } else if (currentLevel === 7) { // Level 7: Two digit multiplication num1 = Math.floor(Math.random() * 20) + 1; num2 = Math.floor(Math.random() * 20) + 1; operator = '*'; } else if (currentLevel === 8) { // Level 8: Mixed operations with larger numbers num1 = Math.floor(Math.random() * 50) + 10; num2 = Math.floor(Math.random() * 20) + 1; operator = operations[Math.floor(Math.random() * 4)]; if (operator === '-' && num2 > num1) { var temp = num1; num1 = num2; num2 = temp; } if (operator === '/' && num1 % num2 !== 0) { num1 = num2 * Math.floor(Math.random() * 8 + 1); } } else if (currentLevel === 9) { // Level 9: Complex mixed operations num1 = Math.floor(Math.random() * 100) + 20; num2 = Math.floor(Math.random() * 30) + 1; operator = operations[Math.floor(Math.random() * 4)]; if (operator === '-' && num2 > num1) { var temp = num1; num1 = num2; num2 = temp; } if (operator === '/' && num1 % num2 !== 0) { num1 = num2 * Math.floor(Math.random() * 10 + 1); } } else if (currentLevel === 10) { // Level 10: Exponent expressions var base = Math.floor(Math.random() * 8) + 2; // Base from 2-9 var exponent = Math.floor(Math.random() * 3) + 2; // Exponent from 2-4 correctAnswer = Math.pow(base, exponent); return { text: base + '^' + exponent + ' = ?', answer: correctAnswer }; } switch (operator) { case '+': correctAnswer = num1 + num2; break; case '-': correctAnswer = num1 - num2; break; case '*': correctAnswer = num1 * num2; break; case '/': correctAnswer = num1 / num2; break; } return { text: num1 + ' ' + operator + ' ' + num2 + ' = ?', answer: correctAnswer }; } function generateWrongAnswers(correctAnswer) { var wrongAnswers = []; var range = Math.max(5, Math.floor(correctAnswer * 0.3)); while (wrongAnswers.length < 3) { var wrong = correctAnswer + Math.floor(Math.random() * range * 2) - range; if (wrong !== correctAnswer && wrongAnswers.indexOf(wrong) === -1 && wrong >= 0) { wrongAnswers.push(wrong); } } return wrongAnswers; } function clearAnswerButtons() { for (var i = 0; i < answerButtons.length; i++) { answerButtons[i].destroy(); } answerButtons = []; } function showQuestion() { clearAnswerButtons(); currentQuestion = generateQuestion(); questionText.setText(currentQuestion.text); var answers = [currentQuestion.answer]; var wrongAnswers = generateWrongAnswers(currentQuestion.answer); answers = answers.concat(wrongAnswers); // Shuffle answers for (var i = answers.length - 1; i > 0; i--) { var j = Math.floor(Math.random() * (i + 1)); var temp = answers[i]; answers[i] = answers[j]; answers[j] = temp; } // Create answer buttons var buttonStartX = 1024 - (4 * 350 + 3 * 50) / 2 + 175; var buttonY = 1200; for (var i = 0; i < 4; i++) { var button = new AnswerButton(answers[i], answers[i] === currentQuestion.answer); button.x = buttonStartX + i * 400; button.y = buttonY; answerButtons.push(button); game.addChild(button); } } function nextQuestion() { questionsAnswered++; if (questionsAnswered % questionsPerLevel === 0 && currentLevel < 10) { currentLevel++; levelTxt.setText('Level: ' + currentLevel); LK.effects.flashScreen(0x27ae60, 500); showQuestion(); } else if (currentLevel === 10 && questionsAnswered % questionsPerLevel === 0) { LK.showYouWin(); return; } else { showQuestion(); } } function showGameOver() { LK.clearInterval(gameTimer); gameState = 'gameover'; // Re-enable pause functionality when game ends LK.enablePause(); // Stop background music when game ends LK.stopMusic(); LK.setTimeout(function () { showMenu(); }, 2000); LK.showGameOver(); } function startGame() { // Start timer gameTimer = LK.setInterval(function () { timeLeft--; timerTxt.setText('Time: ' + timeLeft); if (timeLeft <= 0) { showGameOver(); } }, 1000); // Show first question showQuestion(); } // Show menu first instead of starting game directly showMenu();
===================================================================
--- original.js
+++ change.js
@@ -217,8 +217,10 @@
timeJokerButton.x = 1124;
timeJokerButton.y = 1050;
function showMenu() {
gameState = 'menu';
+ // Re-enable pause functionality in menu
+ LK.enablePause();
// Clear any existing menu elements
for (var i = 0; i < menuElements.length; i++) {
menuElements[i].destroy();
}
@@ -317,8 +319,10 @@
if (timeJokerButton) {
timeJokerButton.alpha = 1;
timeJokerButton.children[1].setText('JOKER');
}
+ // Disable pause functionality during gameplay
+ LK.disablePause();
// Start background music when game begins
LK.playMusic('jjd_adventure');
startGame();
}
@@ -483,8 +487,10 @@
}
function showGameOver() {
LK.clearInterval(gameTimer);
gameState = 'gameover';
+ // Re-enable pause functionality when game ends
+ LK.enablePause();
// Stop background music when game ends
LK.stopMusic();
LK.setTimeout(function () {
showMenu();
Bir Buton . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Bir masa ve üstünde defter . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Üstünde "Joker" Yazan Bir Buton. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Arka Planı sil
Arka Planı Sil