User prompt
multiply the gravity on the stone by 100
User prompt
multiply the gravity on the stone by 10
User prompt
the gravity off the stone set the decrease of the stone speed after launch
User prompt
set the gravity off the stone to 5000
User prompt
set the gravity off the stone to 50
User prompt
multiply the gravity off the stone by 10
var SixthFingerBar = Container.expand(function () { var self = Container.call(this); var sixthFingerBarGraphics = self.createAsset('sixthFingerBar', 'Sixth finger bar display', 0, 0.5); var sixthFingerLabel = new Text2('Sixth Finger Strength', { size: 400, fill: "#ffffff", align: 'center' }); sixthFingerLabel.anchor.set(0.5, 0); sixthFingerLabel.x = 1024; sixthFingerLabel.y = -self.height; self.addChild(sixthFingerLabel); self.width = 375; self.height = 75; self.x = 1024 - self.width / 2; self.y = 2732 - 300; self.visible = false; self.isShowing = false; self.progress = 50; self.show = function () { self.visible = true; self.isShowing = true; self.incrementProgress = LK.setInterval(function () { if (self.progress < 100 && self.direction !== -1) { self.updateProgress(self.progress + 6); } else if (self.progress >= 100) { self.direction = -1; } if (self.progress > 0 && self.direction === -1) { self.updateProgress(self.progress - 6); } else if (self.progress <= 0) { self.direction = 1; } }, 50); }; self.hide = function () { self.visible = false; self.isShowing = false; LK.clearInterval(self.incrementProgress); }; self.updateProgress = function (value) { self.progress = value; sixthFingerBarGraphics.scale.x = self.progress / 100; sixthFingerLabel.setText('Sixth Finger Strength: ' + self.progress + '%'); }; }); var WindBar = Container.expand(function () { var self = Container.call(this); var windBarGraphics = self.createAsset('windBar', 'Wind bar display', 0, 0.5); var windLabel = new Text2('Wind', { size: 400, fill: "#ffffff", align: 'center' }); windLabel.anchor.set(0.5, 0); windLabel.x = 1024; windLabel.y = -self.height; self.addChild(windLabel); self.width = 375; self.height = 75; self.x = 1024 - self.width / 2; self.y = 2732 - 200; self.visible = false; self.isShowing = false; self.strength = 50; self.direction = 1; self.show = function () { self.visible = true; self.isShowing = true; self.updateWind = LK.setInterval(function () { if (self.strength < 100 && self.direction !== -1) { self.strength++; } else if (self.strength >= 100) { self.direction = -1; } if (self.strength > 1 && self.direction === -1) { self.strength--; } else if (self.strength <= 1) { self.direction = 1; } windBarGraphics.scale.x = self.strength / 100; windBarGraphics.scale.x *= self.direction; windLabel.setText('Wind: ' + self.strength + '%'); }, 50); }; self.hide = function () { self.visible = false; self.isShowing = false; LK.clearInterval(self.updateWind); }; self.updateWindDisplay = function () {}; }); var RestartButton = Container.expand(function () { var self = Container.call(this); var buttonGraphics = self.createAsset('restartButton', 'Restart button', 0.5, 0.5); self.x = 2048 / 2; self.y = 2732 - 200; buttonGraphics.on('down', function () { LK.showGameOver(); }); }); var PowerBar = Container.expand(function () { var self = Container.call(this); var powerBarGraphics = self.createAsset('powerBar', 'Power bar display', 0, 0.5); var powerLabel = new Text2('Power', { size: 400, fill: "#ffffff", align: 'center' }); powerLabel.anchor.set(0.5, 0); powerLabel.x = 1024; powerLabel.y = -self.height; self.addChild(powerLabel); self.width = 375; self.height = 75; self.x = 1024 - self.width / 2; self.y = 2732 - 100; self.visible = false; self.isShowing = false; self.progress = 50; self.show = function () { self.visible = true; self.isShowing = true; self.incrementProgress = LK.setInterval(function () { if (self.progress < 100 && self.direction !== -1) { self.updateProgress(self.progress + 3); } else if (self.progress >= 100) { self.direction = -1; } if (self.progress > 0 && self.direction === -1) { self.updateProgress(self.progress - 3); } else if (self.progress <= 0) { self.direction = 1; } }, 50); }; self.hide = function () { self.visible = false; self.isShowing = false; LK.clearInterval(self.incrementProgress); }; self.updateProgress = function (value) { self.progress = value; powerBarGraphics.scale.x = self.progress / 100; powerLabel.setText('Power: ' + self.progress + '%'); }; }); var Hand = Container.expand(function () { var self = Container.call(this); self.move = function (position, stone) { self.x = position.x; if (!stone.isLaunched) { stone.x = self.x; } }; var handGraphics = self.createAsset('hand', 'Moving hand at the bottom', 0.5, 0.5); self.x = 0; self.y = 2732 - handGraphics.height / 2; self.direction = 1; self.speed = 5; }); var Stone = Container.expand(function () { var self = Container.call(this); self.launch = function (hand, powerBarProgress, windBarStrength, sixthFingerBarProgress) { self.x = hand.x; self.y = hand.y; self.direction = -Math.PI / 2; var averagePower = (powerBarProgress + windBarStrength + sixthFingerBarProgress) / 3; self.launchPower = averagePower * 4.8; self.speedX = self.launchPower * Math.cos(self.direction) * 0.01; self.speedY = -self.speedY * 0.7; self.isLaunched = true; self.distanceTraveled = 0; self.bounceChance = 1; LK.setScore(0); }; var stoneGraphics = self.createAsset('stone', 'Stone for ricochet', .5, .5); self.speedX = 0; self.speedY = 0; self.direction = 0; self.isLaunched = false; self.move = function (lake) { self.x += self.speedX; self.y += self.speedY; self.speedX *= 0.95; self.launchPower *= 0.99; if (self.isLaunched) { self.speedY += self.launchPower * 0.5; } if (self.isLaunched) { self.distanceTraveled += self.speed; LK.setScore(Math.floor(self.distanceTraveled)); if (lake.checkRicochet(self) && Math.random() < self.bounceChance) { self.direction = -Math.PI / 2; self.speedX = self.launchPower * Math.cos(self.direction) * 0.01; self.speedY = self.launchPower * Math.sin(self.direction) * 0.01; self.bounceChance = 1; } if (Math.abs(self.speedY) < 0.1) { self.speedX = 0; self.speedY = 0; if (!self.isStopped) { LK.setTimeout(function () { LK.showGameOver(); }, 3000); self.isStopped = true; } } } }; }); var Lake = Container.expand(function () { var self = Container.call(this); var lakeGraphics = self.createAsset('lake', 'Lake for stone ricochet', .5, .5); self.checkRicochet = function (stone) { if (stone.intersects(this)) { return true; } return false; }; }); var Game = Container.expand(function () { var self = Container.call(this); self.windBar = null; self.sixthFingerBar = null; self.powerBar = self.addChild(new PowerBar()); self.powerBar.isShowing = false; self.powerBar.hide(); self.powerBar.show = function () { self.powerBar.visible = true; self.powerBar.isShowing = true; }; self.powerBar.hide = function () { self.powerBar.visible = false; self.powerBar.isShowing = false; }; LK.stageContainer.setBackgroundColor(0x008080); var lake = self.addChild(new Lake()); lake.x = 2048 / 2; lake.y = 2732 / 2; var hand = self.addChild(new Hand()); self.powerBar = self.addChild(new PowerBar()); var stone = self.addChild(new Stone()); stone.x = hand.x; stone.y = hand.y; self.scoreTxt = new Text2('0', { size: 150, fill: "#00ff00" }); LK.gui.topCenter.addChild(self.scoreTxt); LK.gui.topCenter.addChild(self.scoreTxt); var isGameOver = false; var ricochets = 0; var restartButton = self.addChild(new RestartButton()); restartButton.visible = false; LK.on('tick', function () { if (!stone.isLaunched) {} stone.move(lake); if (stone.isLaunched) { var distance = Math.sqrt(Math.pow(stone.x - hand.x, 2) + Math.pow(stone.y - hand.y, 2)); LK.setScore(Math.floor(distance)); self.scoreTxt.setText(LK.getScore().toString()); } }); var clickCount = 0; stage.on('down', function (obj) { clickCount++; if (clickCount === 2) { self.windBar = self.addChild(new WindBar()); self.windBar.show(); } else if (clickCount === 3) { self.sixthFingerBar = self.addChild(new SixthFingerBar()); self.sixthFingerBar.show(); } if (!stone.isLaunched && self.powerBar && self.powerBar.isShowing === false && clickCount === 1) { self.powerBar.show(); } else if (!stone.isLaunched && self.powerBar.isShowing && clickCount === 4) { stone.launch(hand, self.powerBar.progress, self.windBar ? self.windBar.strength : 50, self.sixthFingerBar ? self.sixthFingerBar.progress : 50); self.powerBar.hide(); } }); stage.on('move', function (obj) { var event = obj.event; var pos = event.getLocalPosition(self); hand.move({ x: pos.x }, stone); }); });
===================================================================
--- original.js
+++ change.js
@@ -184,9 +184,9 @@
self.y += self.speedY;
self.speedX *= 0.95;
self.launchPower *= 0.99;
if (self.isLaunched) {
- self.speedY += self.launchPower * 0.05;
+ self.speedY += self.launchPower * 0.5;
}
if (self.isLaunched) {
self.distanceTraveled += self.speed;
LK.setScore(Math.floor(self.distanceTraveled));
A nice lake Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A hand Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A small stone Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A power bar Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A power bar Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A restart button Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.