User prompt
when play clicked hide bunny run button
User prompt
when high scores clicked make the high score text above players high score in a black box
User prompt
when the player clicks high scores make the text in a black box
User prompt
when high score clicked show the players high score ↪💡 Consider importing and using the following plugins: @upit/storage.v1
User prompt
make high score button sprite
User prompt
make the easter bunny and lava bunny in bunny run bigger ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
in shop delete you dont have egg coins text for lava bunny
User prompt
make power up sprite for bunny run
User prompt
in bunny run make the bunny jump higher
User prompt
make a power up in bunny run that turns the easter bunny into lava bunny ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
when bunny run button clicked make a screen where you are the easter bunny and you have to dodge stuff
User prompt
make text in blue box 2 steps under play button that says bunny run in a blue box
User prompt
when player in shop hide lava bunny when player on title screen show lava bunny
User prompt
MAKE THE TIME 2 STEPS AWAY FROM THE CLOCK
User prompt
MAKE THE CLOCK SPRITE 1 STEP AWAY FROM THE TIMER
User prompt
WHEN PLAYER CLICKS PLAY MAKE A CLOCK SPRITE NEXT TO THE TIMER
User prompt
MAKE IT SO THERE IS 53 EGGS TO FIND
User prompt
MAKE THE TIMER I MINUTE
User prompt
WHEN PLAYER CLICKS PLAYER MAKE THE SCORE BUTTON AND TIMER AND EGGS LEFT BUTTON IN A RED BOX
User prompt
WHEN PLAYER CLICKS PLAY MAKE A 5 MINUTE TIMER IF THEY DONT FIND THE EGGS IN TIME THEY LOOSE IF THEY DO THEY WIN
User prompt
MAKE THE YOU DONT HAVE EGG COINS TEXT WHITE
User prompt
HIDE EGG COIN WHEN IN SHOP SHOW EGG COIN WHEN ON TITLE SREEN
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); var storage = LK.import("@upit/storage.v1"); /**** * Classes ****/ var Egg = Container.expand(function (eggType) { var self = Container.call(this); var eggGraphics = self.attachAsset(eggType, { anchorX: 0.5, anchorY: 0.5 }); self.down = function (x, y, obj) { collectEgg(self); }; return self; }); var PlayButton = Container.expand(function () { var self = Container.call(this); var buttonGraphics = self.attachAsset('playButton', { anchorX: 0.5, anchorY: 0.5 }); var buttonText = new Text2('PLAY', { size: 60, fill: 0xFFFFFF }); buttonText.anchor.set(0.5, 0.5); self.addChild(buttonText); self.down = function (x, y, obj) { startGame(); }; return self; }); var XButton = Container.expand(function () { var self = Container.call(this); var buttonBackground = self.attachAsset('xButtonBackground', { anchorX: 0.5, anchorY: 0.5 }); var xText = new Text2('X', { size: 80, fill: 0xFFFFFF }); xText.anchor.set(0.5, 0.5); self.addChild(xText); self.down = function (x, y, obj) { closeShop(); }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x00ff00 }); /**** * Game Code ****/ var gameState = 'title'; // 'title', 'playing', or 'shop' var eggs = []; var totalEggs = 12; var eggTypes = ['egg1', 'egg2', 'egg3', 'egg4', 'egg5']; var playButton; var titleText; var titleBackground; var easterBunny; var lavaBunny; var shop; var scoreText; var remainingText; var shopBackground; var shopTitleText; var xButton; var upgradeButton1; var upgradeButton2; var upgradeText1; var upgradeText2; var eggCoinSprite1; var eggCoinSprite2; var eggCoinText1; var eggCoinText2; var eggCoins; var gameTimer; var gameTimeRemaining; var timerText; // Title screen setup var titleBackground = LK.getAsset('titleBackground', { anchorX: 0.5, anchorY: 0.5 }); titleBackground.x = 2048 / 2; titleBackground.y = 600; game.addChild(titleBackground); titleText = new Text2('Easter Egg Hunt', { size: 120, fill: 0xFFFFFF }); titleText.anchor.set(0.5, 0.5); titleText.x = 2048 / 2; titleText.y = 600; game.addChild(titleText); easterBunny = LK.getAsset('easterBunny', { anchorX: 0.5, anchorY: 0.5 }); easterBunny.x = 2048 / 2; easterBunny.y = 1000; game.addChild(easterBunny); lavaBunny = LK.getAsset('lavaBunny', { anchorX: 0.5, anchorY: 0.5 }); lavaBunny.x = 2048 / 2; lavaBunny.y = 1000; lavaBunny.visible = false; game.addChild(lavaBunny); shop = LK.getAsset('shop', { anchorX: 0.5, anchorY: 0.5 }); shop.x = 2048 - 200; shop.y = 300; shop.down = function (x, y, obj) { if (gameState === 'title') { openShop(); } }; game.addChild(shop); playButton = game.addChild(new PlayButton()); playButton.x = 2048 / 2; playButton.y = 1400; // Red UI box container var uiBox = LK.getAsset('titleBackground', { anchorX: 0.5, anchorY: 0, scaleX: 2.5, scaleY: 0.8 }); uiBox.x = 2048 / 2; uiBox.y = 100; uiBox.visible = false; game.addChild(uiBox); // UI elements scoreText = new Text2('Score: 0', { size: 80, fill: 0xFFFFFF }); scoreText.anchor.set(0, 0); scoreText.x = 120; scoreText.y = 120; scoreText.visible = false; game.addChild(scoreText); remainingText = new Text2('Eggs Left: 0', { size: 80, fill: 0xFFFFFF }); remainingText.anchor.set(1, 0); remainingText.x = 2048 - 120; remainingText.y = 120; remainingText.visible = false; game.addChild(remainingText); timerText = new Text2('Time: 5:00', { size: 80, fill: 0xFFFFFF }); timerText.anchor.set(0.5, 0); timerText.x = 2048 / 2; timerText.y = 120; timerText.visible = false; game.addChild(timerText); // Shop screen setup shopBackground = LK.getAsset('titleBackground', { anchorX: 0.5, anchorY: 0.5, scaleX: 2.5, scaleY: 4 }); shopBackground.x = 2048 / 2; shopBackground.y = 2732 / 2; shopBackground.visible = false; game.addChild(shopBackground); shopTitleText = new Text2('Bunny Upgrades', { size: 100, fill: 0xFFFFFF }); shopTitleText.anchor.set(0.5, 0.5); shopTitleText.x = 2048 / 2; shopTitleText.y = 800; shopTitleText.visible = false; game.addChild(shopTitleText); xButton = game.addChild(new XButton()); xButton.x = 2048 / 2 + 800; xButton.y = 400; xButton.visible = false; upgradeButton1 = LK.getAsset('playButton', { anchorX: 0.5, anchorY: 0.5, scaleX: 1.2 }); upgradeButton1.x = 2048 / 2; upgradeButton1.y = 1200; upgradeButton1.visible = false; upgradeButton1.down = function (x, y, obj) { // Apply lava bunny skin if (eggCoins >= 5) { eggCoins -= 5; storage.eggCoins = eggCoins; easterBunny.visible = false; lavaBunny.visible = true; updateShopUI(); } else { // Show insufficient funds message var insufficientText = new Text2('You dont have egg coins for this', { size: 40, fill: 0xFFFFFF }); insufficientText.anchor.set(0.5, 0.5); insufficientText.x = 2048 / 2; insufficientText.y = 1100; game.addChild(insufficientText); LK.setTimeout(function () { insufficientText.destroy(); }, 2000); } }; game.addChild(upgradeButton1); upgradeText1 = new Text2('Lava Bunny Skin - 5 Egg Coins', { size: 50, fill: 0xFFFFFF }); upgradeText1.anchor.set(0.5, 0.5); upgradeText1.x = 2048 / 2; upgradeText1.y = 1200; upgradeText1.visible = false; game.addChild(upgradeText1); upgradeButton2 = LK.getAsset('playButton', { anchorX: 0.5, anchorY: 0.5, scaleX: 1.2 }); upgradeButton2.x = 2048 / 2; upgradeButton2.y = 1500; upgradeButton2.visible = false; upgradeButton2.down = function (x, y, obj) { // Apply ninja bunny skin if (eggCoins >= 8) { eggCoins -= 8; storage.eggCoins = eggCoins; easterBunny.tint = 0x2c2c54; // Dark blue-gray ninja color updateShopUI(); } else { // Show insufficient funds message var insufficientText = new Text2('You dont have egg coins for this', { size: 40, fill: 0xFFFFFF }); insufficientText.anchor.set(0.5, 0.5); insufficientText.x = 2048 / 2; insufficientText.y = 1400; game.addChild(insufficientText); LK.setTimeout(function () { insufficientText.destroy(); }, 2000); } }; game.addChild(upgradeButton2); upgradeText2 = new Text2('Ninja Bunny Skin - 8 Egg Coins', { size: 50, fill: 0xFFFFFF }); upgradeText2.anchor.set(0.5, 0.5); upgradeText2.x = 2048 / 2; upgradeText2.y = 1500; upgradeText2.visible = false; game.addChild(upgradeText2); // Initialize egg coins from storage eggCoins = storage.eggCoins || 0; // Egg coin sprite and text for lava bunny upgrade eggCoinSprite1 = LK.getAsset('eggCoin', { anchorX: 0.5, anchorY: 0.5 }); eggCoinSprite1.x = 2048 / 2 - 200; eggCoinSprite1.y = 1200; eggCoinSprite1.visible = false; game.addChild(eggCoinSprite1); eggCoinText1 = new Text2('0', { size: 40, fill: 0xFFFFFF }); eggCoinText1.anchor.set(0.5, 0.5); eggCoinText1.x = 2048 / 2 - 130; eggCoinText1.y = 1200; eggCoinText1.visible = false; game.addChild(eggCoinText1); // Egg coin sprite and text for ninja bunny upgrade eggCoinSprite2 = LK.getAsset('eggCoin', { anchorX: 0.5, anchorY: 0.5 }); eggCoinSprite2.x = 2048 / 2 - 200; eggCoinSprite2.y = 1500; eggCoinSprite2.visible = false; game.addChild(eggCoinSprite2); eggCoinText2 = new Text2('0', { size: 40, fill: 0xFFFFFF }); eggCoinText2.anchor.set(0.5, 0.5); eggCoinText2.x = 2048 / 2 - 130; eggCoinText2.y = 1500; eggCoinText2.visible = false; game.addChild(eggCoinText2); function startGame() { gameState = 'playing'; // Hide title screen titleText.visible = false; titleBackground.visible = false; easterBunny.visible = false; lavaBunny.visible = false; playButton.visible = false; shop.visible = false; // Show UI uiBox.visible = true; scoreText.visible = true; remainingText.visible = true; timerText.visible = true; // Initialize 5 minute timer (300 seconds) gameTimeRemaining = 300; updateTimerDisplay(); gameTimer = LK.setInterval(function () { gameTimeRemaining--; updateTimerDisplay(); // Check if time is up if (gameTimeRemaining <= 0) { LK.clearInterval(gameTimer); // Player loses - show game over LK.setTimeout(function () { LK.showGameOver(); }, 100); } }, 1000); // Reset score LK.setScore(0); updateUI(); // Create eggs createEggs(); } function createEggs() { eggs = []; for (var i = 0; i < totalEggs; i++) { var eggType = eggTypes[Math.floor(Math.random() * eggTypes.length)]; var egg = new Egg(eggType); // Random position with margins to keep eggs fully visible egg.x = 150 + Math.random() * (2048 - 300); egg.y = 300 + Math.random() * (2732 - 600); // Ensure eggs don't overlap too much var attempts = 0; var tooClose = true; while (tooClose && attempts < 20) { tooClose = false; for (var j = 0; j < eggs.length; j++) { var distance = Math.sqrt(Math.pow(egg.x - eggs[j].x, 2) + Math.pow(egg.y - eggs[j].y, 2)); if (distance < 120) { tooClose = true; egg.x = 150 + Math.random() * (2048 - 300); egg.y = 300 + Math.random() * (2732 - 600); break; } } attempts++; } eggs.push(egg); game.addChild(egg); // Add a subtle spawn animation egg.alpha = 0; egg.scaleX = 0.5; egg.scaleY = 0.5; tween(egg, { alpha: 1, scaleX: 1, scaleY: 1 }, { duration: 300, easing: tween.easeOut }); } } function collectEgg(egg) { if (gameState !== 'playing') return; // Play collect sound LK.getSound('collect').play(); // Remove egg from array var index = eggs.indexOf(egg); if (index > -1) { eggs.splice(index, 1); } // Update score LK.setScore(LK.getScore() + 10); // Award egg coin eggCoins++; storage.eggCoins = eggCoins; // Animate egg collection tween(egg, { scaleX: 1.5, scaleY: 1.5, alpha: 0 }, { duration: 200, easing: tween.easeIn, onFinish: function onFinish() { egg.destroy(); } }); updateUI(); // Check win condition if (eggs.length === 0) { LK.clearInterval(gameTimer); LK.setTimeout(function () { LK.showYouWin(); }, 500); } } function updateUI() { scoreText.setText('Score: ' + LK.getScore()); remainingText.setText('Eggs Left: ' + eggs.length); } function updateShopUI() { eggCoinText1.setText(eggCoins.toString()); eggCoinText2.setText(eggCoins.toString()); } function updateTimerDisplay() { var minutes = Math.floor(gameTimeRemaining / 60); var seconds = gameTimeRemaining % 60; var timeString = minutes + ':' + (seconds < 10 ? '0' : '') + seconds; timerText.setText('Time: ' + timeString); } function openShop() { gameState = 'shop'; // Hide title screen titleText.visible = false; titleBackground.visible = false; easterBunny.visible = false; lavaBunny.visible = false; playButton.visible = false; shop.visible = false; timerText.visible = false; uiBox.visible = false; // Show shop screen shopBackground.visible = true; shopTitleText.visible = true; xButton.visible = true; upgradeButton1.visible = true; upgradeText1.visible = true; upgradeButton2.visible = true; upgradeText2.visible = true; eggCoinSprite1.visible = false; eggCoinText1.visible = false; eggCoinSprite2.visible = false; eggCoinText2.visible = false; updateShopUI(); } function closeShop() { gameState = 'title'; // Hide shop screen shopBackground.visible = false; shopTitleText.visible = false; xButton.visible = false; upgradeButton1.visible = false; upgradeText1.visible = false; upgradeButton2.visible = false; upgradeText2.visible = false; eggCoinSprite1.visible = false; eggCoinText1.visible = false; eggCoinSprite2.visible = false; eggCoinText2.visible = false; // Show title screen titleText.visible = true; titleBackground.visible = true; if (lavaBunny.visible) { lavaBunny.visible = true; } else { easterBunny.visible = true; } playButton.visible = true; shop.visible = true; if (gameState === 'playing') { timerText.visible = true; uiBox.visible = true; } } game.update = function () { // Game logic handled by events and functions };
===================================================================
--- original.js
+++ change.js
@@ -135,8 +135,19 @@
game.addChild(shop);
playButton = game.addChild(new PlayButton());
playButton.x = 2048 / 2;
playButton.y = 1400;
+// Red UI box container
+var uiBox = LK.getAsset('titleBackground', {
+ anchorX: 0.5,
+ anchorY: 0,
+ scaleX: 2.5,
+ scaleY: 0.8
+});
+uiBox.x = 2048 / 2;
+uiBox.y = 100;
+uiBox.visible = false;
+game.addChild(uiBox);
// UI elements
scoreText = new Text2('Score: 0', {
size: 80,
fill: 0xFFFFFF
@@ -316,8 +327,9 @@
lavaBunny.visible = false;
playButton.visible = false;
shop.visible = false;
// Show UI
+ uiBox.visible = true;
scoreText.visible = true;
remainingText.visible = true;
timerText.visible = true;
// Initialize 5 minute timer (300 seconds)
@@ -439,8 +451,9 @@
lavaBunny.visible = false;
playButton.visible = false;
shop.visible = false;
timerText.visible = false;
+ uiBox.visible = false;
// Show shop screen
shopBackground.visible = true;
shopTitleText.visible = true;
xButton.visible = true;
@@ -479,8 +492,9 @@
playButton.visible = true;
shop.visible = true;
if (gameState === 'playing') {
timerText.visible = true;
+ uiBox.visible = true;
}
}
game.update = function () {
// Game logic handled by events and functions
RED EGG. In-Game asset. 2d. High contrast. No shadows
BLUE EGG. In-Game asset. 2d. High contrast. No shadows
YELLOW EGG. In-Game asset. 2d. High contrast. No shadows
PINK EGG. In-Game asset. 2d. High contrast. No shadows
CYAN EGG. In-Game asset. 2d. High contrast. No shadows
EASTER BUNNY. In-Game asset. 2d. High contrast. No shadows
SHOP. In-Game asset. 2d. High contrast. No shadows
LAVA BUNNY. In-Game asset. 2d. High contrast. No shadows
CLOCK. In-Game asset. 2d. High contrast. No shadows
traffic cone. In-Game asset. 2d. High contrast. No shadows
power up. In-Game asset. 2d. High contrast. No shadows