User prompt
oyunu biraz daha güzel yapıcak şeyler ekle ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
bir kısma skor tabelası ekle ilk 10 kişi girebilir eğer skoru yüksekse ismini yazıp skor tabelasında kalabilir ismi ↪💡 Consider importing and using the following plugins: @upit/storage.v1
User prompt
topları biraz daha büyüt,ve topa dokunduğumuzda yavaşça 1 1 artsın hemen çok fazla artıyor mesela bug var aniden bug ile 20 yapabiliyorsun o sorunuda düzelt
User prompt
toplar biraz daha büyük olsunn ve kare şey hala topa dokunamıyor bazen aşağıya düştüğü zaman bu sorunuda düzelt
User prompt
tamam şimdi bir şeyler keleyelim yuvarlak şekilde artı 5 puan 10 puan veren şeyler olucak top oraya dokunduğunda bize puan eklinicek yuvarlak yeşil rengide olucak tam terside kırmızı renfindew top ona ssdokunduğunda otomatik kaybederiz ve eksi puan kaybetme şeyleride ekle kırmızı yuvarlak renginde
User prompt
top çok hızlı aşağıya düştüğü zmanada kareye dokunamıyor bu sorunuda düzelt bütün dokunuş sorunlarını düzelt
User prompt
top karenin içinden hala geçyior bu sorunu düzelt
User prompt
top karenini içinden geçiyor bu sorunu düzelt bide kareyi sadece sağ ve sola oynatmayalım mouse ile haraket ettirebilelim istediğimiz yere
Code edit (1 edits merged)
Please save this source code
User prompt
Bounce Keeper
Initial prompt
bi tane kare parça ekle ve onu mousla haraket ettirebilelim ve aşağı düşen bir yuvarlak top var kare topa deydğinde top yine havaya kalkar ve sektirirrlir ve böyle böyle her sektirişte 1 puan eklenir eğer topa dokunmazszak kaybederiz
/****
* Plugins
****/
var tween = LK.import("@upit/tween.v1");
/****
* Classes
****/
var Ball = Container.expand(function () {
var self = Container.call(this);
var ballGraphics = self.attachAsset('ball', {
anchorX: 0.5,
anchorY: 0.5
});
self.velocityX = 0;
self.velocityY = 0;
self.gravity = 0.6;
self.bounceStrength = -15;
self.x = 1024;
self.y = 200;
self.update = function () {
self.velocityY += self.gravity;
self.x += self.velocityX;
self.y += self.velocityY;
self.velocityX *= 0.98;
if (self.x < 25) {
self.x = 25;
self.velocityX *= -0.8;
}
if (self.x > 2023) {
self.x = 2023;
self.velocityX *= -0.8;
}
};
return self;
});
var BonusLarge = Container.expand(function () {
var self = Container.call(this);
var bonusGraphics = self.attachAsset('bonusLarge', {
anchorX: 0.5,
anchorY: 0.5
});
self.velocityY = 1.5;
self.velocityX = 0;
self.gravity = 0.3;
self.pointValue = 10;
self.lastY = self.y;
self.update = function () {
self.velocityY += self.gravity;
self.y += self.velocityY;
self.x += self.velocityX;
self.lastY = self.y;
};
return self;
});
var BonusSmall = Container.expand(function () {
var self = Container.call(this);
var bonusGraphics = self.attachAsset('bonusSmall', {
anchorX: 0.5,
anchorY: 0.5
});
self.velocityY = 2;
self.velocityX = 0;
self.gravity = 0.4;
self.pointValue = 5;
self.lastY = self.y;
self.update = function () {
self.velocityY += self.gravity;
self.y += self.velocityY;
self.x += self.velocityX;
self.lastY = self.y;
};
return self;
});
var Paddle = Container.expand(function () {
var self = Container.call(this);
var paddleGraphics = self.attachAsset('paddle', {
anchorX: 0.5,
anchorY: 0.5
});
self.x = 1024;
self.y = 2600;
return self;
});
var Penalty = Container.expand(function () {
var self = Container.call(this);
var penaltyGraphics = self.attachAsset('penalty', {
anchorX: 0.5,
anchorY: 0.5
});
self.velocityY = 2.5;
self.velocityX = 0;
self.gravity = 0.5;
self.lastY = self.y;
self.update = function () {
self.velocityY += self.gravity;
self.y += self.velocityY;
self.x += self.velocityX;
self.lastY = self.y;
};
return self;
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x1a1a2e
});
/****
* Game Code
****/
var paddle = game.addChild(new Paddle());
var ball = game.addChild(new Ball());
var scoreTxt = new Text2('0', {
size: 150,
fill: 0xFFFFFF
});
scoreTxt.anchor.set(0.5, 0);
LK.gui.top.addChild(scoreTxt);
var dragNode = null;
var ballLastIntersecting = false;
var ballLastY = ball.y;
var bonusObjects = [];
var penaltyObjects = [];
var spawnCounter = 0;
function handleMove(x, y, obj) {
paddle.x = x;
paddle.y = y;
if (paddle.x < 75) {
paddle.x = 75;
}
if (paddle.x > 1973) {
paddle.x = 1973;
}
if (paddle.y < 20) {
paddle.y = 20;
}
if (paddle.y > 2712) {
paddle.y = 2712;
}
if (ballLastY >= 0 && ball.y > 2732) {
LK.showGameOver();
}
}
game.move = handleMove;
game.down = function (x, y, obj) {
handleMove(x, y, obj);
};
game.update = function () {
var paddleTop = paddle.y - 20;
var paddleBottom = paddle.y + 20;
var paddleLeft = paddle.x - 75;
var paddleRight = paddle.x + 75;
var ballRadius = 40;
var ballCenterX = ball.x;
var ballCenterY = ball.y;
var paddleCenterX = paddle.x;
var ballMovedDownward = ballLastY < ballCenterY;
var ballCrossedPaddleVertically = ballLastY - ballRadius <= paddleTop && ballCenterY + ballRadius >= paddleTop;
var ballWithinPaddleHorizontally = ballCenterX >= paddleLeft && ballCenterX <= paddleRight;
var currentIntersecting = ball.intersects(paddle);
if ((currentIntersecting || ballMovedDownward && ballCrossedPaddleVertically && ballWithinPaddleHorizontally) && ballCenterY - ballRadius < paddleBottom) {
LK.setScore(LK.getScore() + 1);
scoreTxt.setText(LK.getScore());
ball.velocityY = ball.bounceStrength;
ball.y = paddleTop - ballRadius;
var distance = (ballCenterX - paddleCenterX) / 75;
ball.velocityX = distance * 8;
LK.getSound('bounce').play();
}
ballLastIntersecting = currentIntersecting;
if (ballLastY >= 0 && ball.y > 2732) {
LK.showGameOver();
}
spawnCounter++;
if (spawnCounter % 120 === 0) {
var randomType = Math.random();
if (randomType < 0.4) {
var bonusSmall = game.addChild(new BonusSmall());
bonusSmall.x = Math.random() * 1948 + 50;
bonusSmall.y = -40;
bonusSmall.lastY = bonusSmall.y;
bonusObjects.push(bonusSmall);
} else if (randomType < 0.8) {
var bonusLarge = game.addChild(new BonusLarge());
bonusLarge.x = Math.random() * 1948 + 50;
bonusLarge.y = -50;
bonusLarge.lastY = bonusLarge.y;
bonusObjects.push(bonusLarge);
} else {
var penalty = game.addChild(new Penalty());
penalty.x = Math.random() * 1946 + 50;
penalty.y = -45;
penalty.lastY = penalty.y;
penaltyObjects.push(penalty);
}
}
for (var b = bonusObjects.length - 1; b >= 0; b--) {
var bonus = bonusObjects[b];
if (bonus.y > 2732) {
bonus.destroy();
bonusObjects.splice(b, 1);
continue;
}
var bonusLastIntersecting = bonus.lastWasIntersecting === undefined ? false : bonus.lastWasIntersecting;
var currentBonusIntersecting = bonus.intersects(paddle);
if (!bonusLastIntersecting && currentBonusIntersecting) {
LK.setScore(LK.getScore() + bonus.pointValue);
scoreTxt.setText(LK.getScore());
bonus.destroy();
bonusObjects.splice(b, 1);
continue;
}
bonus.lastWasIntersecting = currentBonusIntersecting;
}
for (var p = penaltyObjects.length - 1; p >= 0; p--) {
var penaltyObj = penaltyObjects[p];
if (penaltyObj.y > 2732) {
penaltyObj.destroy();
penaltyObjects.splice(p, 1);
continue;
}
var penaltyLastIntersecting = penaltyObj.lastWasIntersecting === undefined ? false : penaltyObj.lastWasIntersecting;
var currentPenaltyIntersecting = penaltyObj.intersects(ball);
if (!penaltyLastIntersecting && currentPenaltyIntersecting) {
LK.showGameOver();
return;
}
penaltyObj.lastWasIntersecting = currentPenaltyIntersecting;
}
ballLastY = ball.y;
}; ===================================================================
--- original.js
+++ change.js
@@ -139,13 +139,22 @@
}
if (paddle.y > 2712) {
paddle.y = 2712;
}
+ if (ballLastY >= 0 && ball.y > 2732) {
+ LK.showGameOver();
+ }
+}
+game.move = handleMove;
+game.down = function (x, y, obj) {
+ handleMove(x, y, obj);
+};
+game.update = function () {
var paddleTop = paddle.y - 20;
var paddleBottom = paddle.y + 20;
var paddleLeft = paddle.x - 75;
var paddleRight = paddle.x + 75;
- var ballRadius = 25;
+ var ballRadius = 40;
var ballCenterX = ball.x;
var ballCenterY = ball.y;
var paddleCenterX = paddle.x;
var ballMovedDownward = ballLastY < ballCenterY;
@@ -164,18 +173,8 @@
ballLastIntersecting = currentIntersecting;
if (ballLastY >= 0 && ball.y > 2732) {
LK.showGameOver();
}
- ballLastY = ballCenterY;
-}
-game.move = handleMove;
-game.down = function (x, y, obj) {
- handleMove(x, y, obj);
-};
-game.update = function () {
- if (ballLastY >= 0 && ball.y > 2732) {
- LK.showGameOver();
- }
spawnCounter++;
if (spawnCounter % 120 === 0) {
var randomType = Math.random();
if (randomType < 0.4) {