User prompt
Adjust ItemPlace instances to be 400 pixels away from the central one
User prompt
Place them 500 instead of 150 pixels away
User prompt
Generate 2 more instances of ItemPlace to the right and to the left of the original one, place them 150 pixels away from the central one
User prompt
Move ItemPlace 20 pixels higher
User prompt
Move ItemPlace 80 pixels lower
User prompt
Move ItemPlace 60 pixels lower
User prompt
Set ItemPlace to 282 pixels in size
User prompt
Move Grid 5 pixels lower
User prompt
Move Grid 20 pixels lower and to the right
User prompt
Center grid with horizontal center
User prompt
Make the grid and SquareWhite 5% larger
User prompt
Make the grid and SquareWhite 8% larger
User prompt
Make grid 6x6 instead
User prompt
Make ItemPlace 2.5 times larger, move it 200 pixels up
User prompt
Move ItemPlace 500 pixels down
User prompt
Make ItemPlace 3 times larger
User prompt
Create a new object, ItemPlace, and place it around bottom of the screen, above PainterBackground
User prompt
Remove SquareWhite on each one of the corners of the grid
User prompt
Set Score to 0, stop randomizing it
User prompt
Remove the ability to click on SquareWhite to remove it
User prompt
Make grid and the SquareWhite 3% larger
User prompt
Increase the size of the SquareWhite by 2%
User prompt
Make grid and the SquareWhite 5% larger
User prompt
Change grid size to 7x7
Code edit (1 edits merged)
Please save this source code
/**** * Classes ****/ var WhiteRectangle = Container.expand(function () { var self = Container.call(this); var rectangleAsset = self.attachAsset('WhiteRectangle', { anchorX: 0.5, anchorY: 0.5 }); rectangleAsset.scale.set(0.25, 0.7); // Increase the height by 100% // Add a variable to store the target scale for each rectangle self.targetScale = Math.random() * 1.5; // Add an update function to stretch the rectangle self.update = function () { // Continuously stretch the rectangle towards the target scale rectangleAsset.scale.x += (self.targetScale - rectangleAsset.scale.x) * 0.02; // When the target scale is reached, pick a new target if (Math.abs(rectangleAsset.scale.x - self.targetScale) < 0.005) { self.targetScale = Math.random() * 1.5; } }; }); /**** * Initialize Game ****/ // Create an array to hold the random numbers //<Assets used in the game will automatically appear here> var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ var randomNumberTexts = []; for (var i = 0; i < 50; i++) { // Create a new Text2 object to display the random number var randomNumberText = new Text2(Math.floor(Math.random() * 10).toString(), { size: 40, fill: 0x4A73B5, font: "Courier New" }); randomNumberText.anchor.set(0.5, 0.5); randomNumberText.x = 2048 / 50 * i; randomNumberText.y = 2732 / 2 + 930; game.addChild(randomNumberText); randomNumberTexts.push(randomNumberText); } // Add an update function to the game to move the numbers to the left game.update = function () { for (var i = 0; i < randomNumberTexts.length; i++) { randomNumberTexts[i].x -= 5; if (randomNumberTexts[i].x < 0) { randomNumberTexts[i].x = 2048; } } }; // 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, tint: 0x98bee3 }); game.addChildAt(concreteBackground, 0); // 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, fill: 0xFFFFFF, font: "Helvetica" }); var scoreBack = LK.getAsset('ScoreBack', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 20 + 75 - 35 + 20 + 40, width: 2048 / 3 * 0.85 * 0.85 * 1.2 * 1.3 * 1.1, height: 150 * 1.3 * 1.3 * 1.4 * 1.2 * 0.85 * 1.2 * 1.3 * 1.3 * 1.1 * 1.2, alpha: 1 }); game.addChild(scoreBack); // Add PainterBackground at the bottom of the screen, above ConcreteBackground var painterBackground = LK.getAsset('PainterBackground', { anchorX: 0.5, anchorY: 1, x: 2048 / 2, y: 2732 - 15 + 15 + 400 - 100 + 50, width: 2048 * 0.9 * 0.95, height: 800 * 1.3 * 1.5, alpha: 1 }); game.addChild(painterBackground); // Add ItemPlace above PainterBackground var itemPlace = LK.getAsset('ItemPlace', { anchorX: 0.5, anchorY: 1, x: 2048 / 2, y: painterBackground.y - painterBackground.height / 2 + 370, // Position it above PainterBackground width: 282, height: 282, alpha: 1 }); game.addChild(itemPlace); // Add two more instances of ItemPlace var itemPlaceLeft = LK.getAsset('ItemPlace', { anchorX: 0.5, anchorY: 1, x: 2048 / 2 - 400, // 400 pixels to the left y: painterBackground.y - painterBackground.height / 2 + 370, width: 282, height: 282, alpha: 1 }); game.addChild(itemPlaceLeft); var itemPlaceRight = LK.getAsset('ItemPlace', { anchorX: 0.5, anchorY: 1, x: 2048 / 2 + 400, // 400 pixels to the right y: painterBackground.y - painterBackground.height / 2 + 370, width: 282, height: 282, alpha: 1 }); game.addChild(itemPlaceRight); // Generate String Of Numbers var randomNumberTexts = []; for (var i = 0; i < 50; i++) { // Create a new Text2 object to display the random number var randomNumberText = new Text2(Math.floor(Math.random() * 10).toString(), { size: 40, fill: 0x4A73B5, font: "Courier New" }); randomNumberText.anchor.set(0.5, 0.5); randomNumberText.x = 2048 / 50 * i; randomNumberText.y = 2732 / 2 + 930; game.addChild(randomNumberText); randomNumberTexts.push(randomNumberText); } // Add an update function to the game to move the numbers to the left game.update = function () { for (var i = 0; i < randomNumberTexts.length; i++) { randomNumberTexts[i].x -= 5; if (randomNumberTexts[i].x < 0) { randomNumberTexts[i].x = 2048; } } }; // 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); // Add gridBack behind the grid, but above Background var gridBack = LK.getAsset('GridBack', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2 - 5, y: 2732 / 2 - 20, width: 1400 * 1.2 + 5, height: 1400 * 1.1 * 1.1 - 10, alpha: 1 }); game.addChild(gridBack); // Initialize a 7x7 grid of SquareWhite in the middle of the screen var grid = []; var gridSize = 6; var squareSize = 225.28 * 1.08 * 1.08 * 1.05; // Increase the size of the grid by an additional 5% var startX = (2048 - gridSize * squareSize) / 2 + 110 + 20; var startY = (2732 - gridSize * squareSize) / 2 + 90 + 20 + 5; 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.08 * 1.05 * 1.08 * 1.05, // Increase the size by an additional 5% scaleY: 2.112 * 1.08 * 1.05 * 1.08 * 1.05, // Increase the size by an additional 5% alpha: 1 }); // Removed the ability to click on SquareWhite to remove it 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 - 20 - 5, width: 31.5, height: 31.5, tint: 0x34dbeb }); 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 score on top of the screen var scoreTxt = new Text2('0', { size: 160, fill: 0x67BAEB, font: "Courier New" }); // Set score to 0 LK.setScore(0); scoreTxt.setText(LK.getScore()); scoreTxt.anchor.set(0.5, 0); scoreTxt.y += 9; LK.gui.top.addChild(scoreTxt); // Add LevelCounter text 200 pixels under Score var levelCounterTxt = new Text2('Level 1', { size: 65, fill: 0xb6bcd6, font: "Courier New" }); levelCounterTxt.anchor.set(0.5, 0); levelCounterTxt.y = scoreTxt.y + 170; LK.gui.top.addChild(levelCounterTxt); for (var i = 0; i < 6; i++) { var rectangle = game.addChild(new WhiteRectangle()); rectangle.x = 2048 - rectangle.width / 2 + 20 - 15; // Move to the right side of the screen and 20 pixels more to the right, then move 15 pixels to the left rectangle.y = i * (rectangle.height + 10) + 945; // Move 945 pixels lower } ;
===================================================================
--- original.js
+++ change.js
@@ -111,10 +111,10 @@
// Add two more instances of ItemPlace
var itemPlaceLeft = LK.getAsset('ItemPlace', {
anchorX: 0.5,
anchorY: 1,
- x: 2048 / 2 - 500,
- // 500 pixels to the left
+ x: 2048 / 2 - 400,
+ // 400 pixels to the left
y: painterBackground.y - painterBackground.height / 2 + 370,
width: 282,
height: 282,
alpha: 1
@@ -122,10 +122,10 @@
game.addChild(itemPlaceLeft);
var itemPlaceRight = LK.getAsset('ItemPlace', {
anchorX: 0.5,
anchorY: 1,
- x: 2048 / 2 + 500,
- // 500 pixels to the right
+ x: 2048 / 2 + 400,
+ // 400 pixels to the right
y: painterBackground.y - painterBackground.height / 2 + 370,
width: 282,
height: 282,
alpha: 1
square with Neon dark blue borders, simple, futuristic, 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.
Scifi Square with thin, rounded corners. Dark grey. 2d. Single Game Texture. Little blue outline
Smooth white circle, 2d, simple. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Rounded white square. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.