User prompt
Remove duplicate timer text for tree2 by using a single instance
User prompt
Move timertext2 to tree2 position in page1.
Code edit (1 edits merged)
Please save this source code
User prompt
Make the text of tree2 in tree2 position not outside the screen
User prompt
Set the time beside tree2
User prompt
Show any text of tree2
User prompt
Add time to tree2 1 min as tree1
User prompt
Show timer text of tree2!
User prompt
Show all timer texts in page1!
User prompt
Add time to tree2
User prompt
Make time text for all trees as the green text of tree1
User prompt
Initialize timer variables for tree2
User prompt
Add timertext2 for tree2
User prompt
Add timer 1 min for all trees as tree1
User prompt
Add the time text for the trees when they go invisible to start count down!
User prompt
Create timertext for the trees 2 3 4 5 6 7 8
User prompt
Add timertext2 for tree2 as in tree1 in page1.
User prompt
Make timer texts for the other trees with same system as in tree1 in page1.
User prompt
Make the same system with other trees
User prompt
When the tree1 becomes visible again make it can be clicked and increase score.
User prompt
When text is visible start count down till reach 0 then hide it and show its tree again.
User prompt
Make the timertext1 visible only after 3 clicks on its tree.
User prompt
Show the time decreasing to 0 when the clicked tree is turned to invisible.
User prompt
Hide timer text1 from screen
User prompt
change the font of timer text to any random font.
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var Page0 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'woodarea' with the anchor point set to 0.5, 0.5 var background0 = self.attachAsset('background0', { anchorX: 0.5, anchorY: 0.5, x: 1024, y: 1366, scaleX: 1.5, scaleY: 1.5 }); var woodarea = self.attachAsset('woodarea', { anchorX: 4.5, anchorY: 2.5, x: background0.x, // Sync initial x position with background0 y: background0.y // Sync initial y position with background0 }); self.addChild(woodarea); self.lastX = background0.x; self.lastY = background0.y; // Add drag functionality to the background1 image self.down = function (x, y, obj) { self.dragging = true; self.data = obj.data; self.initialClick = { x: x, y: y }; self.offset = { x: background0.x - x, y: background0.y - y }; }; self.up = function () { self.dragging = false; self.data = null; }; self.move = function (x, y, obj) { if (self.dragging) { // Check if we reached the Y position 1000 right now as we were not there before if (self.lastY <= 1000 && background0.y > 1000) { console.log("Background0 reached Y position 1000"); } // Check if woodarea reached the Y position 1500 right now as it was not there before if (self.lastY <= 1500 && woodarea.y > 1500) { console.log("Woodarea reached Y position 1500"); } // Check if we reached the X position 500 right now as we were not there before if (self.lastX <= 500 && background0.x > 500) { console.log("Background0 reached X position 500"); } // Check if we reached the X position 1500 right now as we were not there before if (self.lastX <= 1500 && background0.x > 1500) { console.log("Background0 reached X position 1500"); } var dx = x - self.initialClick.x; var dy = y - self.initialClick.y; background0.x = x + self.offset.x; background0.y = y + self.offset.y; woodarea.x = background0.x; // Sync woodarea's x position with background0 woodarea.y = background0.y; // Sync woodarea's y position with background0 gate1.x = background0.x; // Sync gate1's x position with background0 gate1.y = background0.y; // Sync gate1's y position with background0 gate2.x = background0.x; // Sync gate2's x position with background0 gate2.y = background0.y; // Sync gate2's y position with background0 gate3.x = background0.x; // Sync gate3's x position with background0 gate3.y = background0.y; // Sync gate3's y position with background0 gate4.x = background0.x; // Sync gate4's x position with background0 gate4.y = background0.y; // Sync gate4's y position with background0 gate5.x = background0.x; // Sync gate5's x position with background0 gate5.y = background0.y; // Sync gate5's y position with background0 gate6.x = background0.x; // Sync gate6's x position with background0 gate6.y = background0.y; // Sync gate6's y position with background0 self.initialClick = { x: x, y: y }; self.lastX = background0.x; self.lastY = background0.y; } }; // Get and automatically addChild to self asset with id 'gate1' with the anchor point set to 0.5, 0.5 var gate1 = self.attachAsset('gate1', { anchorX: 9.5, anchorY: 1.4, x: 1024, y: 1366 }); // Add click event to gate1 to navigate to Page1 gate1.down = function (x, y, obj) { // Navigate to Page1 game.removeChild(page); page = game.addChild(new Page1()); }; // Get and automatically addChild to self asset with id 'gate2' with the anchor point set to 0.5, 0.5 var gate2 = self.attachAsset('gate2', { anchorX: 5.5, anchorY: 0.8, x: 1024, y: 1366 }); // Add click event to gate2 to navigate to Page2 gate2.down = function (x, y, obj) { // Navigate to Page2 game.removeChild(page); page = game.addChild(new Page2()); }; // Get and automatically addChild to self asset with id 'gate3' with the anchor point set to 0.5, 0.5 var gate3 = self.attachAsset('gate3', { anchorX: 2.4, anchorY: -3.5, x: 1024, y: 1366 }); // Add click event to gate3 to navigate to Page3 gate3.down = function (x, y, obj) { // Navigate to Page3 game.removeChild(page); page = game.addChild(new Page3()); }; // Get and automatically addChild to self asset with id 'gate4' with the anchor point set to 0.5, 0.5 var gate4 = self.attachAsset('gate4', { anchorX: 9.8, anchorY: 9.8, x: 1024, y: 1366 }); gate4.x = background0.x; // Sync gate4's x position with background0 gate4.y = background0.y; // Sync gate4's y position with background0 // Add click event to gate4 to navigate to Page4 gate4.down = function (x, y, obj) { // Navigate to Page4 game.removeChild(page); page = game.addChild(new Page4()); }; // Get and automatically addChild to self asset with id 'gate5' with the anchor point set to 0.5, 0.5 var gate5 = self.attachAsset('gate5', { anchorX: 3, anchorY: 7, x: 1024, y: 1366 }); gate5.x = background0.x; // Sync gate5's x position with background0 gate5.y = background0.y; // Sync gate5's y position with background0 // Add click event to gate5 to navigate to Page5 gate5.down = function (x, y, obj) { // Navigate to Page5 game.removeChild(page); page = game.addChild(new Page5()); }; // Get and automatically addChild to self asset with id 'gate6' with the anchor point set to 0.5, 0.5 var gate6 = self.attachAsset('gate6', { anchorX: -6, anchorY: 7.5, x: 1024, y: 1366 }); gate6.x = background0.x; // Sync gate6's x position with background0 gate6.y = background0.y; // Sync gate6's y position with background0 // Add click event to gate6 to navigate to Page1 gate6.down = function (x, y, obj) { // Navigate to Page6 game.removeChild(page); page = game.addChild(new Page6()); }; }); // Create a Page1 class by using the LK expand method to extend Container. var Page1 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background1' with the anchor point set to 0, 0 var background1 = self.attachAsset('background1', { anchorX: 0, anchorY: 0, x: 0, y: 0 }); // Get and automatically addChild to self asset with id 'wall1' with the anchor point set to 0.5, 1.0 var wall1 = self.attachAsset('wall1', { anchorX: 0.5, anchorY: 1.0, x: 1024, // Center horizontally y: 2732 // Position at the bottom }); var tree1 = self.attachAsset('tree1', { anchorX: -1.1, anchorY: 3, x: 1000, // Position tree1 to the right of tree2 y: 1366 // Align vertically with tree2 }); // Add timer text for tree1 var tree1TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree1TimerText.anchor.set(0.5, 0.5); tree1TimerText.x = tree1.x + 500; // horizontal position above tree1 tree1TimerText.y = tree1.y - 700; // vertical Position above tree1 tree1TimerText.visible = true; // Show the timer text on the screen self.addChild(tree1TimerText); var half_tree1 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1385, // Position half_tree1 to the right of tree1 y: 890 // Align vertically with tree1 }); tree1.clickCount = 0; tree1.down = function (x, y, obj) { tree1.clickCount++; if (tree1.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree1.clickCount === 3) { var _updateTree1Timer = function _updateTree1Timer() { var minutes = Math.floor(tree1TimeLeft / 60); var seconds = tree1TimeLeft % 60; tree1TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree1.visible = false; tree1TimerText.visible = true; // Make timerText1 visible after 3 clicks // Start countdown var tree1TimeLeft = 60; // 1 minute in seconds _updateTree1Timer(); var tree1TimerInterval = LK.setInterval(function () { if (tree1TimeLeft > 0) { tree1TimeLeft--; _updateTree1Timer(); } else { LK.clearInterval(tree1TimerInterval); tree1TimerText.visible = false; // Hide timer text tree1.visible = true; // Show tree again tree1.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var tree2 = new Tree('tree2', 700, 1366); self.addChild(tree2); // Add timer text for tree2 timerText2.x = tree2.x; // Align timerText2 horizontally with tree2 timerText2.y = tree2.y; // Align timerText2 vertically with tree2 self.addChild(timerText2); // Add the timer text to the page tree2.clickCount = 0; tree2.down = function (x, y, obj) { tree2.clickCount++; if (tree2.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree2.clickCount === 3) { var _updateTree2Timer = function _updateTree2Timer() { var minutes = Math.floor(tree2TimeLeft / 60); var seconds = tree2TimeLeft % 60; tree2TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree2.visible = false; tree2TimerText.visible = true; // Make timerText2 visible after 3 clicks // Start countdown var tree2TimeLeft = 60; // 1 minute in seconds _updateTree2Timer(); var tree2TimerInterval = LK.setInterval(function () { if (tree2TimeLeft > 0) { tree2TimeLeft--; _updateTree2Timer(); } else { LK.clearInterval(tree2TimerInterval); tree2TimerText.visible = false; // Hide timer text tree2.visible = true; // Show tree again tree2.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var half_tree2 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1085, // Position half_tree2 to the right of tree2 y: 890 // Align vertically with tree2 }); tree2.down = function (x, y, obj) { tree2.incrementClickCount(); if (tree2.getClickCount() <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree2.getClickCount() === 3) { tree2.hide(); } }; var tree2_below = self.attachAsset('tree2', { anchorX: -1.1, anchorY: 3, x: 700, // Align horizontally with tree6 y: 1966 // Position tree2 below tree6 }); var half_tree2_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1085, // Position half_tree2_below to the right of tree2_below y: 1495 // Align vertically with tree2_below }); tree2_below.clickCount = 0; tree2_below.down = function (x, y, obj) { tree2_below.clickCount++; if (tree2_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree2_below.clickCount === 3) { tree2_below.visible = false; } }; // Removed statue2_below2 from tree2_below2 // Removed statue3_below2 from tree3_below2 var tree3_below2 = new Tree('tree3', 380, 2566); self.addChild(tree3_below2); var half_tree3_below2 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 765, // Position half_tree3_below2 to the right of tree3_below2 y: 2095 // Align vertically with tree3_below2 }); tree3_below2.down = function (x, y, obj) { tree3_below2.incrementClickCount(); if (tree3_below2.getClickCount() <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree3_below2.getClickCount() === 3) { tree3_below2.hide(); } }; // Removed statue4_below2 from tree4_below2 var tree4_below2 = new Tree('tree4', 80, 2566); self.addChild(tree4_below2); var half_tree4_below2 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 465, // Position half_tree4_below2 to the right of tree4_below2 y: 2095 // Align vertically with tree4_below2 }); tree4_below2.down = function (x, y, obj) { tree4_below2.incrementClickCount(); if (tree4_below2.getClickCount() <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree4_below2.getClickCount() === 3) { tree4_below2.hide(); } }; // Add statue beside tree2 similar to tree1 var tree3 = self.attachAsset('tree3', { anchorX: -1.1, anchorY: 3, x: 380, y: 1366 }); // Add timer text for tree3 var tree3TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree3TimerText.anchor.set(0.5, 0.5); tree3TimerText.x = tree3.x + 500; // horizontal position above tree3 tree3TimerText.y = tree3.y - 700; // vertical Position above tree3 tree3TimerText.visible = true; // Show the timer text on the screen self.addChild(tree3TimerText); tree3.clickCount = 0; tree3.down = function (x, y, obj) { tree3.clickCount++; if (tree3.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree3.clickCount === 3) { var _updateTree3Timer = function _updateTree3Timer() { var minutes = Math.floor(tree3TimeLeft / 60); var seconds = tree3TimeLeft % 60; tree3TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree3.visible = false; tree3TimerText.visible = true; // Make timerText3 visible after 3 clicks // Start countdown var tree3TimeLeft = 60; // 1 minute in seconds _updateTree3Timer(); var tree3TimerInterval = LK.setInterval(function () { if (tree3TimeLeft > 0) { tree3TimeLeft--; _updateTree3Timer(); } else { LK.clearInterval(tree3TimerInterval); tree3TimerText.visible = false; // Hide timer text tree3.visible = true; // Show tree again tree3.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var half_tree3 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 765, // Position half_tree3 to the right of tree3 y: 890 // Align vertically with tree3 }); tree3.clickCount = 0; tree3.down = function (x, y, obj) { tree3.clickCount++; if (tree3.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree3.clickCount === 3) { tree3.visible = false; } }; tree3.down = function (x, y, obj) { tree3.clickCount++; if (tree3.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree3.clickCount === 3) { tree3.visible = false; } }; // Add woodstatue below tree3 var tree7 = self.attachAsset('tree7', { anchorX: -1.1, anchorY: 3, x: 380, // Align horizontally with tree3 y: 1666 // Position tree7 below tree3 }); // Add timer text for tree7 var tree7TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree7TimerText.anchor.set(0.5, 0.5); tree7TimerText.x = tree7.x + 500; // horizontal position above tree7 tree7TimerText.y = tree7.y - 700; // vertical Position above tree7 tree7TimerText.visible = true; // Show the timer text on the screen self.addChild(tree7TimerText); tree7.clickCount = 0; tree7.down = function (x, y, obj) { tree7.clickCount++; if (tree7.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree7.clickCount === 3) { var _updateTree7Timer = function _updateTree7Timer() { var minutes = Math.floor(tree7TimeLeft / 60); var seconds = tree7TimeLeft % 60; tree7TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree7.visible = false; tree7TimerText.visible = true; // Make timerText7 visible after 3 clicks // Start countdown var tree7TimeLeft = 60; // 1 minute in seconds _updateTree7Timer(); var tree7TimerInterval = LK.setInterval(function () { if (tree7TimeLeft > 0) { tree7TimeLeft--; _updateTree7Timer(); } else { LK.clearInterval(tree7TimerInterval); tree7TimerText.visible = false; // Hide timer text tree7.visible = true; // Show tree again tree7.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var half_tree7 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 765, // Position half_tree7 to the right of tree7 y: 1195 // Align vertically with tree7 }); tree7.clickCount = 0; tree7.down = function (x, y, obj) { tree7.clickCount++; if (tree7.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree7.clickCount === 3) { tree7.visible = false; } }; // Add woodstatue below tree7 var tree3_below = self.attachAsset('tree3', { anchorX: -1.1, anchorY: 3, x: 380, // Align horizontally with tree7 y: 1966 // Position tree3 below tree7 }); var half_tree3_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 765, // Position half_tree3_below to the right of tree3_below y: 1495 // Align vertically with tree3_below }); tree3_below.clickCount = 0; tree3_below.down = function (x, y, obj) { tree3_below.clickCount++; if (tree3_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree3_below.clickCount === 3) { tree3_below.visible = false; } }; // Get and automatically addChild to self asset with id 'tree7' with the anchor point set to 0.5, 0.5 var tree7_below = self.attachAsset('tree7', { anchorX: -1.1, anchorY: 3, x: 380, // Align horizontally with tree3_below y: 2266 // Position tree7 below tree3_below }); var half_tree7_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 765, // Position half_tree7_below to the right of tree7_below y: 1795 // Align vertically with tree7_below }); tree7_below.clickCount = 0; tree7_below.down = function (x, y, obj) { tree7_below.clickCount++; if (tree7_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree7_below.clickCount === 3) { tree7_below.visible = false; } }; // Get and automatically addChild to self asset with id 'tree4' with the anchor point set to 0.5, 0.5 var tree4 = self.attachAsset('tree4', { anchorX: -1.1, anchorY: 3, x: 100, y: 1366 }); // Add timer text for tree4 var tree4TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree4TimerText.anchor.set(0.5, 0.5); tree4TimerText.x = tree4.x + 500; // horizontal position above tree4 tree4TimerText.y = tree4.y - 700; // vertical Position above tree4 tree4TimerText.visible = true; // Show the timer text on the screen self.addChild(tree4TimerText); tree4.clickCount = 0; tree4.down = function (x, y, obj) { tree4.clickCount++; if (tree4.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree4.clickCount === 3) { var _updateTree4Timer = function _updateTree4Timer() { var minutes = Math.floor(tree4TimeLeft / 60); var seconds = tree4TimeLeft % 60; tree4TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree4.visible = false; tree4TimerText.visible = true; // Make timerText4 visible after 3 clicks // Start countdown var tree4TimeLeft = 60; // 1 minute in seconds _updateTree4Timer(); var tree4TimerInterval = LK.setInterval(function () { if (tree4TimeLeft > 0) { tree4TimeLeft--; _updateTree4Timer(); } else { LK.clearInterval(tree4TimerInterval); tree4TimerText.visible = false; // Hide timer text tree4.visible = true; // Show tree again tree4.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; tree4.clickCount = 0; var half_tree4 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 485, // Position half_tree4 to the right of tree4 y: 890 // Align vertically with tree4 }); tree4.down = function (x, y, obj) { tree4.clickCount++; if (tree4.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree4.clickCount === 3) { tree4.visible = false; } }; // Add woodstatue below tree4 var tree5 = self.attachAsset('tree5', { anchorX: -1.1, anchorY: 3, x: 1000, // Align horizontally with tree1 y: 1666 // Position tree5 below tree1 }); // Add timer text for tree5 var tree5TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree5TimerText.anchor.set(0.5, 0.5); tree5TimerText.x = tree5.x + 500; // horizontal position above tree5 tree5TimerText.y = tree5.y - 700; // vertical Position above tree5 tree5TimerText.visible = true; // Show the timer text on the screen self.addChild(tree5TimerText); tree5.clickCount = 0; tree5.down = function (x, y, obj) { tree5.clickCount++; if (tree5.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree5.clickCount === 3) { var _updateTree5Timer = function _updateTree5Timer() { var minutes = Math.floor(tree5TimeLeft / 60); var seconds = tree5TimeLeft % 60; tree5TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree5.visible = false; tree5TimerText.visible = true; // Make timerText5 visible after 3 clicks // Start countdown var tree5TimeLeft = 60; // 1 minute in seconds _updateTree5Timer(); var tree5TimerInterval = LK.setInterval(function () { if (tree5TimeLeft > 0) { tree5TimeLeft--; _updateTree5Timer(); } else { LK.clearInterval(tree5TimerInterval); tree5TimerText.visible = false; // Hide timer text tree5.visible = true; // Show tree again tree5.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var half_tree5 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1385, // Position half_tree5 to the right of tree5 y: 1195 // Align vertically with tree5 }); tree5.clickCount = 0; tree5.down = function (x, y, obj) { tree5.clickCount++; if (tree5.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree5.clickCount === 3) { tree5.visible = false; } }; // Add woodstatue below tree5 var tree1_below = self.attachAsset('tree1', { anchorX: -1.1, anchorY: 3, x: 1000, // Align horizontally with tree5 y: 1966 // Position tree1 below tree5 }); var half_tree1_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1385, // Position half_tree1_below to the right of tree1_below y: 1495 // Align vertically with tree1_below }); tree1_below.clickCount = 0; tree1_below.down = function (x, y, obj) { tree1_below.clickCount++; if (tree1_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree1_below.clickCount === 3) { tree1_below.visible = false; } }; // Get and automatically addChild to self asset with id 'tree5' with the anchor point set to 0.5, 0.5 var tree5_below = self.attachAsset('tree5', { anchorX: -1.1, anchorY: 3, x: 1000, // Align horizontally with tree1_below y: 2266 // Position tree5 below tree1_below }); var half_tree5_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1385, // Position half_tree5_below to the right of tree5_below y: 1795 // Align vertically with tree5_below }); tree5_below.clickCount = 0; tree5_below.down = function (x, y, obj) { tree5_below.clickCount++; if (tree5_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree5_below.clickCount === 3) { tree5_below.visible = false; } }; // Add tree1_below2 to Page1 var tree1_below2 = self.attachAsset('tree1', { anchorX: -1.1, anchorY: 3, x: 1000, // Align horizontally with tree5_below y: 2566 // Position tree1_below2 below tree5_below }); var half_tree1_below2 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1385, // Position half_tree1_below2 to the right of tree1_below2 y: 2095 // Align vertically with tree1_below2 }); tree1_below2.clickCount = 0; tree1_below2.down = function (x, y, obj) { tree1_below2.clickCount++; if (tree1_below2.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree1_below2.clickCount === 3) { tree1_below2.visible = false; } }; // Get and automatically addChild to self asset with id 'tree6' with the anchor point set to 0.5, 0.5 var tree6 = self.attachAsset('tree6', { anchorX: -1.1, anchorY: 3, x: 700, // Position tree6 to the left of tree5 y: 1666 // Align vertically with tree5 }); // Add timer text for tree6 var tree6TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree6TimerText.anchor.set(0.5, 0.5); tree6TimerText.x = tree6.x + 500; // horizontal position above tree6 tree6TimerText.y = tree6.y - 700; // vertical Position above tree6 tree6TimerText.visible = true; // Show the timer text on the screen self.addChild(tree6TimerText); tree6.clickCount = 0; tree6.down = function (x, y, obj) { tree6.clickCount++; if (tree6.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree6.clickCount === 3) { var _updateTree6Timer = function _updateTree6Timer() { var minutes = Math.floor(tree6TimeLeft / 60); var seconds = tree6TimeLeft % 60; tree6TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree6.visible = false; tree6TimerText.visible = true; // Make timerText6 visible after 3 clicks // Start countdown var tree6TimeLeft = 60; // 1 minute in seconds _updateTree6Timer(); var tree6TimerInterval = LK.setInterval(function () { if (tree6TimeLeft > 0) { tree6TimeLeft--; _updateTree6Timer(); } else { LK.clearInterval(tree6TimerInterval); tree6TimerText.visible = false; // Hide timer text tree6.visible = true; // Show tree again tree6.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; tree6.clickCount = 0; var half_tree6 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1085, // Position half_tree6 to the right of tree6 y: 1195 // Align vertically with tree6 }); tree6.down = function (x, y, obj) { tree6.clickCount++; if (tree6.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree6.clickCount === 3) { tree6.visible = false; } }; // Add woodstatue below tree6 // Get and automatically addChild to self asset with id 'tree6' with the anchor point set to 0.5, 0.5 var tree6_below = self.attachAsset('tree6', { anchorX: -1.1, anchorY: 3, x: 700, // Align horizontally with tree2_below y: 2266 // Position tree6 below tree2_below }); var half_tree6_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1085, // Position half_tree6_below to the right of tree6_below y: 1795 // Align vertically with tree6_below }); tree6_below.clickCount = 0; tree6_below.down = function (x, y, obj) { tree6_below.clickCount++; if (tree6_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree6_below.clickCount === 3) { tree6_below.visible = false; } }; // Add tree2_below2 to Page1 var tree2_below2 = self.attachAsset('tree2', { anchorX: -1.1, anchorY: 3, x: 700, // Align horizontally with tree6_below y: 2566 // Position tree2_below2 below tree6_below }); var half_tree2_below2 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 1085, // Position half_tree2_below2 to the right of tree2_below2 y: 2095 // Align vertically with tree2_below2 }); tree2_below2.clickCount = 0; tree2_below2.down = function (x, y, obj) { tree2_below2.clickCount++; if (tree2_below2.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree2_below2.clickCount === 3) { tree2_below2.visible = false; } }; // Get and automatically addChild to self asset with id 'tree8' with the anchor point set to 0.5, 0.5 var tree8 = self.attachAsset('tree8', { anchorX: -1.1, anchorY: 3, x: 80, // Position tree8 to the left of tree7 y: 1666 // Align vertically with tree7 }); // Add timer text for tree8 var tree8TimerText = new Text2('1:00', { size: 80, fill: 0x33ff00 }); tree8TimerText.anchor.set(0.5, 0.5); tree8TimerText.x = tree8.x + 500; // horizontal position above tree8 tree8TimerText.y = tree8.y - 700; // vertical Position above tree8 tree8TimerText.visible = true; // Show the timer text on the screen self.addChild(tree8TimerText); tree8.clickCount = 0; tree8.down = function (x, y, obj) { tree8.clickCount++; if (tree8.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree8.clickCount === 3) { var _updateTree8Timer = function _updateTree8Timer() { var minutes = Math.floor(tree8TimeLeft / 60); var seconds = tree8TimeLeft % 60; tree8TimerText.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); }; tree8.visible = false; tree8TimerText.visible = true; // Make timerText8 visible after 3 clicks // Start countdown var tree8TimeLeft = 60; // 1 minute in seconds _updateTree8Timer(); var tree8TimerInterval = LK.setInterval(function () { if (tree8TimeLeft > 0) { tree8TimeLeft--; _updateTree8Timer(); } else { LK.clearInterval(tree8TimerInterval); tree8TimerText.visible = false; // Hide timer text tree8.visible = true; // Show tree again tree8.clickCount = 0; // Reset click count to allow new interactions } }, 1000); } }; var half_tree8 = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 465, // Position half_tree8 to the right of tree8 y: 1195 // Align vertically with tree8 }); tree8.clickCount = 0; tree8.down = function (x, y, obj) { tree8.clickCount++; if (tree8.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree8.clickCount === 3) { tree8.visible = false; } }; // Add woodstatue below tree8 // Get and automatically addChild to self asset with id 'tree4' with the anchor point set to 0.5, 0.5 var tree4_below = self.attachAsset('tree4', { anchorX: -1.1, anchorY: 3, x: 80, // Align horizontally with tree8 y: 1966 // Position tree4 below tree8 }); var half_tree4_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 465, // Position half_tree4_below to the right of tree4_below y: 1495 // Align vertically with tree4_below }); tree4_below.clickCount = 0; tree4_below.down = function (x, y, obj) { tree4_below.clickCount++; if (tree4_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree4_below.clickCount === 3) { tree4_below.visible = false; } }; // Get and automatically addChild to self asset with id 'tree8' with the anchor point set to 0.5, 0.5 var tree8_below = self.attachAsset('tree8', { anchorX: -1.1, anchorY: 3, x: 80, // Align horizontally with tree4_below y: 2266 // Position tree8 below tree4_below }); var half_tree8_below = self.attachAsset('half_tree', { anchorX: -1.1, anchorY: 3, x: 465, // Position half_tree8_below to the right of tree8_below y: 1795 // Align vertically with tree8_below }); tree8_below.clickCount = 0; tree8_below.down = function (x, y, obj) { tree8_below.clickCount++; if (tree8_below.clickCount <= 3) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); } if (tree8_below.clickCount === 3) { tree8_below.visible = false; } }; // Get and automatically addChild to self asset with id 'tree1' with the anchor point set to 0.5, 0.5 // Get and automatically addChild to self asset with id 'tree2' with the anchor point set to 0.5, 0.5 // Get and automatically addChild to self asset with id 'tree3' with the anchor point set to 0.5, 0.5 // Get and automatically addChild to self asset with id 'tree4' with the anchor point set to 0.5, 0.5 // Add wood asset to Page1 var wood = self.attachAsset('wood', { anchorX: 0.5, anchorY: 0.5, x: 1902, // Position wood in the middle of the screen y: 2510 // Position wood below the trees }); // Add text for wood score beside wood asset var woodScoreText = new Text2('0', { size: 70, fill: 0x471e00 }); woodScoreText.anchor.set(1, 0.5); woodScoreText.x = wood.x - 90; // Position text to the left of the wood woodScoreText.y = wood.y; self.addChild(woodScoreText); // Hide the statue beside the wood // statue.visible = false; // Commented out as statue is not defined var silver = self.attachAsset('silver', { anchorX: 0.5, anchorY: 0.5, x: 1902, // Align horizontally with wood y: 2660 // Position silver directly below the wood }); // Add text for silver score beside silver asset var silverScoreText = new Text2('0', { size: 70, fill: 0xc0c0c0 }); silver.clickCount = 0; silver.down = function (x, y, obj) { silver.clickCount += 5; silverScoreText.setText(silver.clickCount); }; silverScoreText.anchor.set(1, 0.5); silverScoreText.x = silver.x - 90; // Position text to the left of the silver silverScoreText.y = silver.y; self.addChild(silverScoreText); var stone = self.attachAsset('stone', { anchorX: 0.5, anchorY: 0.5, x: 1220, // Position stone in the middle of the screen y: 2510 // Position stone below the wood }); // Add text for stone score beside stone asset var stoneScoreText = new Text2('0', { size: 70, fill: 0x00ff00 }); stone.clickCount = 0; stone.down = function (x, y, obj) { stone.clickCount += 5; stoneScoreText.setText(stone.clickCount); }; stoneScoreText.anchor.set(1, 0.5); stoneScoreText.x = stone.x - 90; // Position text to the left of the stone stoneScoreText.y = stone.y; self.addChild(stoneScoreText); var gold = self.attachAsset('gold', { anchorX: 0.5, anchorY: 0.5, x: 1220, // Align horizontally with stone y: 2660 // Position gold below the stone }); // Add text for gold score beside gold asset var goldScoreText = new Text2('0', { size: 70, fill: 0xffd700 }); gold.clickCount = 0; gold.down = function (x, y, obj) { gold.clickCount += 5; goldScoreText.setText(gold.clickCount); }; goldScoreText.anchor.set(1, 0.5); goldScoreText.x = gold.x - 90; // Position text to the left of the gold goldScoreText.y = gold.y; self.addChild(goldScoreText); var bronze = self.attachAsset('bronze', { anchorX: 0.5, anchorY: 0.5, x: 595, // Position bronze in the middle of the screen y: 2510 // Position bronze above the stone }); // Add text for bronze score beside bronze asset var bronzeScoreText = new Text2('0', { size: 70, fill: 0xcd7f32 }); bronze.clickCount = 0; bronze.down = function (x, y, obj) { bronze.clickCount += 5; bronzeScoreText.setText(bronze.clickCount); }; bronzeScoreText.anchor.set(1, 0.5); bronzeScoreText.x = bronze.x - 90; // Position text to the left of the bronze bronzeScoreText.y = bronze.y; self.addChild(bronzeScoreText); var crystal = self.attachAsset('crystal', { anchorX: 0.5, anchorY: 0.5, x: 595, // Align horizontally with bronze y: 2660 // Position crystal below the bronze }); // Add text for crystal score beside crystal asset var crystalScoreText = new Text2('0', { size: 70, fill: 0x00ffff }); crystal.clickCount = 0; crystal.down = function (x, y, obj) { crystal.clickCount += 5; crystalScoreText.setText(crystal.clickCount); }; crystalScoreText.anchor.set(1, 0.5); crystalScoreText.x = crystal.x - 90; // Position text to the left of the crystal crystalScoreText.y = crystal.y; self.addChild(crystalScoreText); }); var Page2 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background2' with the anchor point set to 0, 0 var background2 = self.attachAsset('background2', { anchorX: 0.0, anchorY: 0.0, x: 0, y: 0 }); }); var Page3 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background3' with the anchor point set to 0, 0 var background3 = self.attachAsset('background3', { anchorX: 0.0, anchorY: 0.0, x: 0, y: 0 }); }); var Page4 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background4' with the anchor point set to 0, 0 var background4 = self.attachAsset('background4', { anchorX: 0.0, anchorY: 0.0, x: 0, y: 0 }); }); // Create a Page5 class by using the LK expand method to extend Container. var Page5 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background5' with the anchor point set to 0, 0 var background5 = self.attachAsset('background5', { anchorX: 0.0, anchorY: 0.0, x: 0, y: 0 }); }); var Page6 = Container.expand(function () { var self = Container.call(this); // Get and automatically addChild to self asset with id 'background6' with the anchor point set to 0, 0 var background6 = self.attachAsset('background6', { anchorX: 0.0, anchorY: 0.0, x: 0, y: 0 }); }); var Statue = Container.expand(function (x, y) { var self = Container.call(this); var statue = self.attachAsset('statue', { anchorX: 0.5, anchorY: 0.5, x: x, y: y }); self.addChild(statue); statue.down = function (x, y, obj) { totalStatueScore += 5; woodScoreText.setText(totalStatueScore); }; return self; }); var Text1 = Container.expand(function () { var self = Container.call(this); var text = new Text2('0', { size: 100, fill: 0xfd0000 }); text.anchor.set(0.5, 0.5); self.addChild(text); self.setText = function (newText) { text.setText(newText); }; return self; }); var Tree = Container.expand(function (assetId, x, y) { var self = Container.call(this); var tree = self.attachAsset(assetId, { anchorX: -1.1, anchorY: 3, x: x, y: y }); tree.clickCount = 0; self.addChild(tree); self.getClickCount = function () { return tree.clickCount; }; self.incrementClickCount = function () { tree.clickCount += 1; }; self.hide = function () { tree.visible = false; }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ var totalStatueScore = 0; // Initialize totalStatueScore to fix ReferenceError var woodScoreText = new Text2('0', { size: 70, fill: 0x471e00 }); woodScoreText.anchor.set(1, 0.5); var page = game.addChild(new Page0()); //{0.b} // Initialize timer variables for tree2 var timerText2 = new Text2('1:00', { size: 80, fill: 0x33ff00, font: 'Times New Roman' }); timerText2.anchor.set(0.5, 0.5); var tree2TimeLeft = 60; // 1 minute in seconds // Function to update the timer text for tree2 function updateTree2Timer() { var minutes = Math.floor(tree2TimeLeft / 60); var seconds = tree2TimeLeft % 60; timerText2.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); } // Set interval to decrease the timer for tree2 every second var tree2TimerInterval = LK.setInterval(function () { if (tree2TimeLeft > 0) { tree2TimeLeft--; updateTree2Timer(); } else { LK.clearInterval(tree2TimerInterval); // Additional actions when timer reaches 0 can be added here } }, 1000); ; //{0.b}; var timerText1 = new Text2('1:00', { size: 80, fill: 0x33ff00, font: 'Times New Roman' }); timerText1.anchor.set(0.5, 0.5); var tree1TimeLeft = 60; // 1 minute in seconds // Function to update the timer text function updateTree1Timer() { var minutes = Math.floor(tree1TimeLeft / 60); var seconds = tree1TimeLeft % 60; timerText1.setText("".concat(minutes, ":").concat(seconds < 10 ? '0' : '').concat(seconds)); } // Set interval to decrease the timer every second var tree1TimerInterval = LK.setInterval(function () { if (tree1TimeLeft > 0) { tree1TimeLeft--; updateTree1Timer(); } else { LK.clearInterval(tree1TimerInterval); // Additional actions when timer reaches 0 can be added here } }, 1000); ; //{0.b}
===================================================================
--- original.js
+++ change.js
@@ -248,18 +248,11 @@
};
var tree2 = new Tree('tree2', 700, 1366);
self.addChild(tree2);
// Add timer text for tree2
- var tree2TimerText = new Text2('1:00', {
- size: 80,
- fill: 0x33ff00
- });
- tree2TimerText.anchor.set(0.5, 0.5);
- tree2TimerText.x = tree2.x; // Align timerText2 horizontally with tree2
- tree2TimerText.y = tree2.y; // Align timerText2 vertically with tree2
- tree2TimerText.visible = true; // Show the timer text on the screen
- self.addChild(tree2TimerText); // Add the timer text to the page
- self.addChild(tree2TimerText);
+ timerText2.x = tree2.x; // Align timerText2 horizontally with tree2
+ timerText2.y = tree2.y; // Align timerText2 vertically with tree2
+ self.addChild(timerText2); // Add the timer text to the page
tree2.clickCount = 0;
tree2.down = function (x, y, obj) {
tree2.clickCount++;
if (tree2.clickCount <= 3) {
2D wreckage of wood, square, HD colors. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
House from the front facing the screen with big sign above it have description "SHOP", Hd colors
coin with colors, have "DA", hd colors. have black circles and black line for the "DA", between the 2 circles do small black lines all around. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Modern App Store icon, square with rounded corners, HD colors for a 2d game titled "The Collector" and with the description "about building houses and trees and decorations on a map to make it look like city, which then generate "DA" coins after a countdown timer expires. Players can collect these coins to increase their score, which they can then use to purchase more houses and trees and decorations from the shop button on the middle left side of the screen". with text on the middle top of the banner "the collector"!