User prompt
eller oto tıklayıcılar kasanın etrafına dizilcek yuvarlak oluşturcak şekilde oluşucaklar ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
oyun tekrar başlayınca herşey 0 geliştirmeler olmicak baştan ↪💡 Consider importing and using the following plugins: @upit/storage.v1
User prompt
test butonu 10000 coins kazandırıcak
User prompt
sayı kasanın üstünde yazsın coinsin altında hemen altında
User prompt
geliştirmeler kenrda olsun
User prompt
oto tıklayıcı her tıkladığında küçük bir animasyon bide deneme yapmam için mtuşuna basınca 10000 puan gelsin ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
kağıt para gibi süzülerek inerler fizikli
Code edit (1 edits merged)
Please save this source code
User prompt
Coin Clicker Evolution
Initial prompt
bir ortada top üstünde 0 yazar topa her tıklanınca üsteki sayı 1 artar ve yukardan para yağar aşşağa doğru her 25 dolarda 1 sev yükseltilebilir yükseltilince 10 saniyede bir bir el işaret parmağı önde daireye tıklar ve 1 sayı kazandırır altta bir ktu yavaşça sağ sola gider içine düşen paralar oyuncunun olur her 50 parda 1 geliştirileebilir seviyeyle daha hızlı sağ sola gider
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); var storage = LK.import("@upit/storage.v1"); /**** * Classes ****/ var AutoClickerFinger = Container.expand(function () { var self = Container.call(this); var fingerGraphics = self.attachAsset('autoClickerFinger', { anchorX: 0.5, anchorY: 1 }); self.clickTimer = 0; self.clickInterval = 600; // 10 seconds at 60fps self.update = function () { self.clickTimer++; if (self.clickTimer >= self.clickInterval) { self.clickTimer = 0; // Trigger auto click if (typeof autoClickBall === 'function') { autoClickBall(); } } }; return self; }); var Basket = Container.expand(function () { var self = Container.call(this); var basketGraphics = self.attachAsset('basket', { anchorX: 0.5, anchorY: 0.5 }); self.direction = 1; self.baseSpeed = 2; self.speedMultiplier = 1; self.update = function () { self.x += self.direction * self.baseSpeed * self.speedMultiplier; if (self.x <= 90 || self.x >= 2048 - 90) { self.direction *= -1; } }; return self; }); var Coin = Container.expand(function () { var self = Container.call(this); var coinGraphics = self.attachAsset('coin', { anchorX: 0.5, anchorY: 0.5 }); self.fallSpeed = 2 + Math.random() * 1.5; self.collected = false; self.swayDirection = Math.random() > 0.5 ? 1 : -1; self.swaySpeed = 0.5 + Math.random() * 1; self.swayAmount = 20 + Math.random() * 30; self.rotationSpeed = (Math.random() - 0.5) * 0.1; self.startX = 0; self.swayTime = 0; self.update = function () { if (!self.collected) { self.y += self.fallSpeed; // Add swaying motion like paper money self.swayTime += self.swaySpeed; var swayOffset = Math.sin(self.swayTime * 0.05) * self.swayAmount; self.x = self.startX + swayOffset; // Add rotation for realistic paper motion coinGraphics.rotation += self.rotationSpeed; // Slight deceleration as it falls (air resistance) if (self.fallSpeed > 1) { self.fallSpeed *= 0.999; } } }; return self; }); var UpgradeButton = Container.expand(function (text, cost) { var self = Container.call(this); var buttonGraphics = self.attachAsset('upgradeButton', { anchorX: 0.5, anchorY: 0.5 }); self.buttonText = new Text2(text + '\n' + cost + ' coins', { size: 24, fill: 0xFFFFFF }); self.buttonText.anchor.set(0.5, 0.5); self.addChild(self.buttonText); self.cost = cost; self.upgradeText = text; self.updateButton = function (newCost) { self.cost = newCost; self.buttonText.setText(self.upgradeText + '\n' + self.cost + ' coins'); }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87ceeb }); /**** * Game Code ****/ // Game variables var clickCount = 0; var coinCount = storage.coinCount || 0; var autoClickerLevel = storage.autoClickerLevel || 0; var basketSpeedLevel = storage.basketSpeedLevel || 0; var coins = []; var autoClickerFingers = []; // Create central ball var centralBall = game.addChild(LK.getAsset('centralBall', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 3 })); // Create counter text on ball var counterText = new Text2('0', { size: 48, fill: 0xFFFFFF }); counterText.anchor.set(0.5, 0.5); centralBall.addChild(counterText); // Create basket var basket = game.addChild(new Basket()); basket.x = 2048 / 2; basket.y = 2732 - 150; basket.speedMultiplier = 1 + basketSpeedLevel * 0.5; // Create coin counter display var coinDisplay = new Text2('Coins: ' + coinCount, { size: 36, fill: 0x000000 }); coinDisplay.anchor.set(0.5, 0); LK.gui.top.addChild(coinDisplay); // Create upgrade buttons var autoClickerButton = game.addChild(new UpgradeButton('Auto-Clicker', 25)); autoClickerButton.x = 2048 / 2 - 160; autoClickerButton.y = 2732 - 300; var basketButton = game.addChild(new UpgradeButton('Faster Basket', 50)); basketButton.x = 2048 / 2 + 160; basketButton.y = 2732 - 300; // Create auto-clicker fingers based on saved level for (var i = 0; i < autoClickerLevel; i++) { var finger = game.addChild(new AutoClickerFinger()); finger.x = centralBall.x + 150 + i * 30; finger.y = centralBall.y; autoClickerFingers.push(finger); } // Update upgrade button costs function updateUpgradeButtons() { var autoClickerCost = 25 + autoClickerLevel * 15; var basketCost = 50 + basketSpeedLevel * 25; autoClickerButton.updateButton(autoClickerCost); basketButton.updateButton(basketCost); } // Auto click function function autoClickBall() { clickCount++; counterText.setText(clickCount.toString()); // Create coin drop createCoinDrop(); // Play sound LK.getSound('ballClick').play(); // Visual feedback tween(centralBall, { scaleX: 1.1, scaleY: 1.1 }, { duration: 100, onFinish: function onFinish() { tween(centralBall, { scaleX: 1, scaleY: 1 }, { duration: 100 }); } }); // Animate all auto-clicker fingers for (var f = 0; f < autoClickerFingers.length; f++) { var finger = autoClickerFingers[f]; tween(finger, { scaleX: 1.2, scaleY: 1.2 }, { duration: 150, onFinish: function onFinish() { tween(finger, { scaleX: 1, scaleY: 1 }, { duration: 150 }); } }); } } // Create falling coin function createCoinDrop() { var coin = new Coin(); coin.x = Math.random() * (2048 - 100) + 50; coin.startX = coin.x; // Store starting position for sway physics coin.y = -50; coins.push(coin); game.addChild(coin); } // Ball click handler centralBall.down = function (x, y, obj) { clickCount++; counterText.setText(clickCount.toString()); // Create coin drop createCoinDrop(); // Play sound LK.getSound('ballClick').play(); // Visual feedback tween(centralBall, { scaleX: 1.1, scaleY: 1.1 }, { duration: 100, onFinish: function onFinish() { tween(centralBall, { scaleX: 1, scaleY: 1 }, { duration: 100 }); } }); }; // Upgrade button handlers autoClickerButton.down = function (x, y, obj) { var cost = 25 + autoClickerLevel * 15; if (coinCount >= cost) { coinCount -= cost; autoClickerLevel++; // Create new auto-clicker finger var finger = game.addChild(new AutoClickerFinger()); finger.x = centralBall.x + 150 + (autoClickerLevel - 1) * 30; finger.y = centralBall.y; autoClickerFingers.push(finger); // Update displays coinDisplay.setText('Coins: ' + coinCount); updateUpgradeButtons(); // Save progress storage.coinCount = coinCount; storage.autoClickerLevel = autoClickerLevel; // Play sound LK.getSound('upgrade').play(); // Visual feedback LK.effects.flashObject(autoClickerButton, 0x00ff00, 300); } }; basketButton.down = function (x, y, obj) { var cost = 50 + basketSpeedLevel * 25; if (coinCount >= cost) { coinCount -= cost; basketSpeedLevel++; basket.speedMultiplier = 1 + basketSpeedLevel * 0.5; // Update displays coinDisplay.setText('Coins: ' + coinCount); updateUpgradeButtons(); // Save progress storage.coinCount = coinCount; storage.basketSpeedLevel = basketSpeedLevel; // Play sound LK.getSound('upgrade').play(); // Visual feedback LK.effects.flashObject(basketButton, 0x00ff00, 300); } }; // Create test button for 10,000 points var testButton = game.addChild(new UpgradeButton('TEST +10K', 0)); testButton.x = 2048 / 2; testButton.y = 2732 - 450; // Test button handler testButton.down = function (x, y, obj) { clickCount += 10000; counterText.setText(clickCount.toString()); // Visual feedback LK.effects.flashObject(testButton, 0xffff00, 500); }; // Initialize upgrade buttons updateUpgradeButtons(); // Main game update loop game.update = function () { // Update coins for (var i = coins.length - 1; i >= 0; i--) { var coin = coins[i]; if (coin.lastY === undefined) coin.lastY = coin.y; // Check if coin fell off screen if (coin.lastY <= 2732 && coin.y > 2732) { coin.destroy(); coins.splice(i, 1); continue; } // Check collision with basket if (!coin.collected && coin.intersects(basket)) { coin.collected = true; coinCount++; coinDisplay.setText('Coins: ' + coinCount); // Save progress storage.coinCount = coinCount; // Play sound LK.getSound('coinCollect').play(); // Remove coin coin.destroy(); coins.splice(i, 1); continue; } coin.lastY = coin.y; } };
===================================================================
--- original.js
+++ change.js
@@ -140,12 +140,12 @@
coinDisplay.anchor.set(0.5, 0);
LK.gui.top.addChild(coinDisplay);
// Create upgrade buttons
var autoClickerButton = game.addChild(new UpgradeButton('Auto-Clicker', 25));
-autoClickerButton.x = 2048 / 4;
+autoClickerButton.x = 2048 / 2 - 160;
autoClickerButton.y = 2732 - 300;
var basketButton = game.addChild(new UpgradeButton('Faster Basket', 50));
-basketButton.x = 2048 * 3 / 4;
+basketButton.x = 2048 / 2 + 160;
basketButton.y = 2732 - 300;
// Create auto-clicker fingers based on saved level
for (var i = 0; i < autoClickerLevel; i++) {
var finger = game.addChild(new AutoClickerFinger());