Code edit (1 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: game.getChildByName is not a function' in or related to this line: 'game.getChildByName('background').destroy();' Line Number: 84
Code edit (5 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Cannot read properties of undefined (reading 'destroy')' in or related to this line: 'game.background.destroy();' Line Number: 81
Code edit (2 edits merged)
Please save this source code
User prompt
the paricles in the firey explosion should expand and then disappear
Code edit (1 edits merged)
Please save this source code
User prompt
make the particlesystem.start function work to create a firey explosion
Code edit (2 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: particleSystem.start is not a function' in or related to this line: 'particleSystem.start();' Line Number: 75
User prompt
when game is lost, create a particle system filling the whole screen with fiery explosions
Code edit (1 edits merged)
Please save this source code
Code edit (17 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Cannot set properties of undefined (setting 'fill')' in or related to this line: 'instructionsText.set.fill = "#000044";' Line Number: 50
Code edit (1 edits merged)
Please save this source code
User prompt
when game is won, replace the background graphic with the wonbackground.
Code edit (1 edits merged)
Please save this source code
User prompt
make a graphic filling the entire screen to show when game is won
Code edit (12 edits merged)
Please save this source code
User prompt
make an object called winGraphics.
Code edit (3 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: textfield is not defined' in or related to this line: 'console.log('Button pressed:', textfield.text);' Line Number: 32
Code edit (1 edits merged)
Please save this source code
Code edit (21 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: this.textfield.getText is not a function' in or related to this line: 'if (parseInt(this.textfield.getText()) == count) {' Line Number: 33
/**** * Classes ****/ var Button = Container.expand(function () { var self = Container.call(this); self.interactive = true; self.buttonMode = true; // Add a background graphic var background = self.attachAsset('buttonBackground', { anchorX: 0.5, anchorY: 0.5 }); // Add a textfield self.textfield = new Text2('1', { size: 300, fill: '#111111', align: 'center', anchorX: 0.5, anchorY: 0.5 }); self.addChild(self.textfield); self.textfield.x = -80; self.textfield.y = -180; self.val = 0; self.on('down', function () { //console.log('Button pressed:', this.val); if (this.val == count) { console.log('correct'); if (count < 10) { count++; randomNumbers(); } else { // Won. button1.destroy(); button2.destroy(); button3.destroy(); instructionsText.destroy(); //instructionsText.y = 2000; //instructionsText.fill = "0x000033"; //instructionsText.setText("Good job!\nYou counted to 10\nand averted the crisis.\nPeace and Love."); //instructionsText.x += 120; var wonText = new Text2('Good job!\nYou counted to 10\nand averted the crisis.\nPeace and Love!', { size: 100, fill: "#000077", align: 'center', anchorX: 0.5, anchorY: 0.0 }); wonText.x = 520; wonText.y = 100; game.addChild(wonText); var winGraphics = game.addChildAt(new WinGraphics(), 1); var p1Graphics = game.addChildAt(new People1Graphics(), 2); var p2Graphics = game.addChildAt(new People2Graphics(), 3); var p3Graphics = game.addChildAt(new People3Graphics(), 4); var p4Graphics = game.addChildAt(new People4Graphics(), 5); var p5Graphics = game.addChildAt(new People5Graphics(), 6); } } else { console.log('incorrect'); var particleSystem = game.addChild(new ParticleSystem()); particleSystem.start(); button1.destroy(); button2.destroy(); button3.destroy(); instructionsText.destroy(); if (game.background) { game.background.destroy(); } } }); }); var ParticleSystem = Container.expand(function () { var self = Container.call(this); self.start = function () { for (var i = 0; i < 100; i++) { var particle = self.attachAsset('fireParticle', { anchorX: 0.5, anchorY: 0.5, x: Math.random() * 2048, y: Math.random() * 2732 }); particle.alpha = 0.7; particle.scale.x = particle.scale.y = Math.random() * 2; particles.push(particle); button1.destroy(); button2.destroy(); button3.destroy(); instructionsText.destroy(); } }; }); var People1Graphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('people1', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2 }); }); var People2Graphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('people2', { anchorX: 0.5, anchorY: 0.5, x: 700, y: 2732 / 2 + 300 }); }); var People3Graphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('people3', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2 + 150, y: 2732 / 2 + 400 }); }); var People4Graphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('people4', { anchorX: 0.5, anchorY: 0.5, x: 600, y: 2732 / 2 - 200 }); }); var People5Graphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('people5', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2 + 150, y: 2732 / 2 - 250 }); }); var WinGraphics = Container.expand(function () { var self = Container.call(this); var wonBackground = self.attachAsset('wonBackground', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2 }); }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x001100 // Init game with black background }); /**** * Game Code ****/ // Initialize game elements // Initialize a simple circle asset for counting visualization // Initialize a text asset for displaying the count number var particles = []; var background = game.addChild(LK.getAsset('background', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2, alpha: 0.8 })); var instructionsText = new Text2('Tensions run high at the border\nCount to 10', { size: 100, fill: "#ffffff", align: 'center', anchorX: 0.5, anchorY: 0.0 }); instructionsText.x = 400; instructionsText.y = 100; game.addChild(instructionsText); // Initialize count variable var count = 1; // Function to update the count and display it // Add event listener to increment count on touch var button1 = game.addChild(new Button()); button1.x = 2048 / 2 - 500; button1.y = 2732 / 2; var button2 = game.addChild(new Button()); button2.x = 2048 / 2; button2.y = 2732 / 2; var button3 = game.addChild(new Button()); button3.x = 2048 / 2 + 500; button3.y = 2732 / 2; var buttonArr = [button1, button2, button3]; var randomNumbers = function randomNumbers() { for (var i in buttonArr) { var v = Math.ceil(Math.random() * 10); if (v === 10) { buttonArr[i].textfield.x = -180; } else { buttonArr[i].textfield.x = -80; } buttonArr[i].textfield.setText("" + v); buttonArr[i].val = v; } var right = buttonArr[Math.floor(Math.random() * 3)]; right.textfield.setText("" + count); right.val = count; if (count === 10) { right.textfield.x = -180; } else { right.textfield.x = -80; } }; randomNumbers(); // Main game tick function LK.on('tick', function () { // Game logic that needs to be executed every frame can be added here // For this simple counting game, there's no need to update anything per tick if (particles.length > 0) { for (var i = particles.length - 1; i > 0; i--) { var factor = Math.random() * 0.25; particles[i].scale.x += factor; particles[i].scale.y += factor; if (particles[i].scale.x > 10) { particles[i].destroy(); particles.splice(i, 1); } } } });
===================================================================
--- original.js
+++ change.js
@@ -59,8 +59,15 @@
} else {
console.log('incorrect');
var particleSystem = game.addChild(new ParticleSystem());
particleSystem.start();
+ button1.destroy();
+ button2.destroy();
+ button3.destroy();
+ instructionsText.destroy();
+ if (game.background) {
+ game.background.destroy();
+ }
}
});
});
var ParticleSystem = Container.expand(function () {
@@ -75,15 +82,12 @@
});
particle.alpha = 0.7;
particle.scale.x = particle.scale.y = Math.random() * 2;
particles.push(particle);
- var particleLife = 5 + Math.random() * 5;
- LK.setTimeout(function () {
- particle.alpha = 0;
- }, particleLife);
- LK.setTimeout(function () {
- particle.destroy();
- }, particleLife + 1);
+ button1.destroy();
+ button2.destroy();
+ button3.destroy();
+ instructionsText.destroy();
}
};
});
var People1Graphics = Container.expand(function () {
@@ -212,12 +216,12 @@
// Game logic that needs to be executed every frame can be added here
// For this simple counting game, there's no need to update anything per tick
if (particles.length > 0) {
for (var i = particles.length - 1; i > 0; i--) {
- var factor = Math.random() * 0.5;
+ var factor = Math.random() * 0.25;
particles[i].scale.x += factor;
particles[i].scale.y += factor;
- if (particles[i].scale.x > 5) {
+ if (particles[i].scale.x > 10) {
particles[i].destroy();
particles.splice(i, 1);
}
}
A map of a fictional world, divided in the middle by a red dashed line, which is a country border. On each side of the border, a modern army is marched up and pointing weapons at the other side. Style should be detailed illustration.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast.
A blank scrabble tile, direct top down view.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A beautiful meadow in summer, seen in perspective from a low altitude plane.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A smiling family waving.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A smiling family waving.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A smiling family waving.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A smiling family waving.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A fiery explosion. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A rectangular green button. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.