User prompt
Move brown Board 20 pixels lower
User prompt
Please fix the bug: 'Uncaught TypeError: Cannot read properties of undefined (reading 'y')' in or related to this line: 'numbersText.y = brownBoard.y - brownBoard.height / 2 - numbersText.height;' Line Number: 42
User prompt
move the string of numbers to appear above the BrownBoard
User prompt
Move BrownBoard creation before the creation of string of numbers
User prompt
Extra 60 pixels more
User prompt
Stretch BrownBoard's height to be extra 30 pixels tall
User prompt
Stretch Brown Board to have extra 30 pixels at the bottom
User prompt
Every 1 second, set a string to a new random set of 100 numbers
User prompt
Each 0.5-1.5 seconds re-randomize the entire string
User prompt
When the string of numbers hits the left side of the screen, copy it to the right side of the screen
User prompt
Change Score font color to #10ffff
User prompt
Increase shadow size
User prompt
add shadow to the Score. High blur, black small shadow
User prompt
Change font color to 00b4d8
User prompt
stretch Score to be 30% taller, while keeping its width the same
User prompt
Make ScoreBack 15% smaller in each direction. Keep the asset center the same position
User prompt
Make score font 10% less tall
User prompt
Move ScoreBack to the left by 5 pixels
User prompt
make ScoreBack width 15% smaller
User prompt
Change scoreBack width by 20%
User prompt
Change score font to baby blue
User prompt
Set score to 9999
User prompt
set score to 999
Code edit (1 edits merged)
Please save this source code
User prompt
Set score to 999
/**** * Initialize Game ****/ //<Assets used in the game will automatically appear here> var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ // Create an array to hold the random numbers var randomNumbers = []; // Generate the first random number and add it to the array var firstNumber = Math.floor(Math.random() * 10); randomNumbers.push(firstNumber); // Generate 99 more random numbers and add them to the array for (var i = 0; i < 99; i++) { var randomNumber = Math.floor(Math.random() * 10); randomNumbers.push(randomNumber); } // Create a Text2 object to display the random numbers var numbersText = new Text2(randomNumbers.join(''), { size: 40, // Reduced the font size by 20% fill: "#89CFF0" }); // Position the text at the left side of the screen numbersText.x = 0; numbersText.y = brownBoard.y - brownBoard.height / 2 - numbersText.height; // Add the text to the game game.addChild(numbersText); // Create an update function to move the numbers to the left game.update = function () { // Move the numbers to the left numbersText.x -= 5; // If the first number goes off-screen if (numbersText.x + numbersText.width < 0) { // Remove the first number from the array randomNumbers.shift(); // Reset the position of the text to the right side of the screen numbersText.x = game.width; } }; // Add Concrete as a background to all other items var concreteBackground = LK.getAsset('Concrete', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2, width: 2048, height: 2732, alpha: 1 }); game.addChildAt(concreteBackground, 0); // Add brown board to the game var brownBoardWidth = 400; // Define the width of the BrownBoard asset var brownBoardHeight = 400; // Define the height of the BrownBoard asset var brownBoard = LK.getAsset('BrownBoard', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2 - 30, scaleX: 2048 / brownBoardWidth, scaleY: (6 / 1.5 * 1.1 * 1.1 * 0.95 * brownBoardHeight + 30) / brownBoardHeight, alpha: 1 }); // Add main background to the game var background = LK.getAsset('Background', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2 + 20, y: 2732 / 2, width: 2068 * 1.05, height: 2000, alpha: 1 }); game.addChild(brownBoard); game.addChild(background); // Initialize an 8x8 grid of SquareWhite in the middle of the screen var grid = []; var gridSize = 8; var squareSize = 225.28 * 0.95; // Reduce the size of the grid by 5% var startX = (2048 - gridSize * squareSize) / 2 + 110; var startY = (2732 - gridSize * squareSize) / 2 + 90; for (var i = 0; i < gridSize; i++) { for (var j = 0; j < gridSize; j++) { var square = LK.getAsset('SquareWhite', { anchorX: 0.5, anchorY: 0.5, x: startX + i * squareSize, y: startY + j * squareSize, scaleX: 2.112 * 1.03, scaleY: 2.112 * 1.03 }); square.down = function (x, y, obj) { this.destroy(); }; game.addChild(square); grid.push(square); } } // Create 6 WhiteCircle instances and stack them on top of each other in the middle of the screen for (var i = 0; i < 6; i++) { var whiteCircle = LK.getAsset('WhiteCircle', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2 - 910, y: 2732 / 2 + i * 300 - 730, width: 31.5, height: 31.5, tint: 0xCCCCCC }); game.addChild(whiteCircle); // Add a randomiser to change the brightness of each WhiteCircle every 1-5 seconds (function (whiteCircle) { var _changeBrightness = function changeBrightness() { var randomTime = Math.random() * 5000 + 3000; // Random time between 3-8 seconds whiteCircle.alpha = 0.2; // Change brightness to 20% LK.setTimeout(function () { whiteCircle.alpha = 1; // Revert brightness back LK.setTimeout(_changeBrightness, randomTime); // Schedule next brightness change }, randomTime); }; _changeBrightness(); // Start changing brightness })(whiteCircle); } // Add ScoreBack behind the score and make it around 1/3 screen long // Add score on top of the screen var scoreTxt = new Text2('0', { size: 135, // Reduced the font size by 10% fill: "#ffffff", font: "Helvetica" }); var scoreBack = LK.getAsset('ScoreBack', { anchorX: 0.5, anchorY: 0.5, x: scoreTxt.x + 5, y: 20 + 75 - 35 + 20, width: 2048 / 3 * 0.85 * 0.85, // Reduce the width by 15% again height: 150 * 1.3 * 1.3 * 1.4 * 1.2 * 0.85, // Reduce the height by 15% alpha: 1 }); LK.gui.top.addChild(scoreBack); // Add score on top of the screen var scoreTxt = new Text2('0', { size: 135, // Reduced the font size by 10% fill: "#89CFF0", font: "Helvetica" }); LK.setScore(9999); scoreTxt.setText(LK.getScore()); scoreTxt.anchor.set(0.5, 0); scoreTxt.y += 15; LK.gui.top.addChild(scoreTxt); ;
===================================================================
--- original.js
+++ change.js
@@ -8,31 +8,8 @@
/****
* Game Code
****/
-// Add Concrete as a background to all other items
-var concreteBackground = LK.getAsset('Concrete', {
- anchorX: 0.5,
- anchorY: 0.5,
- x: 2048 / 2,
- y: 2732 / 2,
- width: 2048,
- height: 2732,
- alpha: 1
-});
-game.addChildAt(concreteBackground, 0);
-// Add brown board to the game
-var brownBoardWidth = 400; // Define the width of the BrownBoard asset
-var brownBoardHeight = 400; // Define the height of the BrownBoard asset
-var brownBoard = LK.getAsset('BrownBoard', {
- anchorX: 0.5,
- anchorY: 0.5,
- x: 2048 / 2,
- y: 2732 / 2 - 30,
- scaleX: 2048 / brownBoardWidth,
- scaleY: (6 / 1.5 * 1.1 * 1.1 * 0.95 * brownBoardHeight + 60) / brownBoardHeight,
- alpha: 1
-});
// Create an array to hold the random numbers
var randomNumbers = [];
// Generate the first random number and add it to the array
var firstNumber = Math.floor(Math.random() * 10);
@@ -49,9 +26,9 @@
fill: "#89CFF0"
});
// Position the text at the left side of the screen
numbersText.x = 0;
-numbersText.y = game.height / 2 + 900;
+numbersText.y = brownBoard.y - brownBoard.height / 2 - numbersText.height;
// Add the text to the game
game.addChild(numbersText);
// Create an update function to move the numbers to the left
game.update = function () {
@@ -64,8 +41,31 @@
// Reset the position of the text to the right side of the screen
numbersText.x = game.width;
}
};
+// Add Concrete as a background to all other items
+var concreteBackground = LK.getAsset('Concrete', {
+ anchorX: 0.5,
+ anchorY: 0.5,
+ x: 2048 / 2,
+ y: 2732 / 2,
+ width: 2048,
+ height: 2732,
+ alpha: 1
+});
+game.addChildAt(concreteBackground, 0);
+// Add brown board to the game
+var brownBoardWidth = 400; // Define the width of the BrownBoard asset
+var brownBoardHeight = 400; // Define the height of the BrownBoard asset
+var brownBoard = LK.getAsset('BrownBoard', {
+ anchorX: 0.5,
+ anchorY: 0.5,
+ x: 2048 / 2,
+ y: 2732 / 2 - 30,
+ scaleX: 2048 / brownBoardWidth,
+ scaleY: (6 / 1.5 * 1.1 * 1.1 * 0.95 * brownBoardHeight + 30) / brownBoardHeight,
+ alpha: 1
+});
// Add main background to the game
var background = LK.getAsset('Background', {
anchorX: 0.5,
anchorY: 0.5,
Rounded square with fog inside it. Simplistic. Single Game Texture. In-Game asset. 2d. Blank background. Low contrast. No shadows.
square with Neon dark blue borders, simple, cyberpunk, 2d. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
square with Neon dark blue borders, simple, futuristic, 2d. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Light blue Circle Light 2d. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Sci-fi Vault dark Concrete wall texture 2d. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Arrow "backwards" or "undo". White arrow, no background, 2d,. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Scifi Square with thin, rounded corners. Dark grey. 2d. Single Game Texture. Little blue outline
White triangle with sharp edges. White fill, thin outline, 2d, no shadows, blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.