Code edit (2 edits merged)
Please save this source code
User prompt
after clicking on the screen, the bird object is reduced vertically by 10 pixels and returns to its original size again
Code edit (19 edits merged)
Please save this source code
User prompt
after 20 points we begin to create conditions var obstaclesGraphics = self.attachAsset('obstacle', { anchorX: 0.3, anchor: 0.3, shape: ellipse
Code edit (1 edits merged)
Please save this source code
Code edit (4 edits merged)
Please save this source code
User prompt
intersection of bird objects and obstacles within the radius of the image, not the object
Code edit (1 edits merged)
Please save this source code
User prompt
death when colliding with an obstacle only in the center of the obstacle object
User prompt
change obstacle object from square to circle
User prompt
reduce the distance between a bird colliding with an obstacle by 100
Code edit (1 edits merged)
Please save this source code
User prompt
radius 25 object obstacle for contact with bird
Code edit (5 edits merged)
Please save this source code
User prompt
Add function Displaying points after death from obstacles
User prompt
the death of a bird with a touch of an obstacle in the area width:100, height:100
Code edit (4 edits merged)
Please save this source code
User prompt
after pressing, the bird rotates 90 degrees
Code edit (1 edits merged)
Please save this source code
Code edit (2 edits merged)
Please save this source code
User prompt
Update score every 2 second
Code edit (6 edits merged)
Please save this source code
User prompt
add a background фон below the background небо
User prompt
add background небо
Code edit (1 edits merged)
Please save this source code
/****
* Classes
****/
// Assets will be automatically created based on usage in the code.
// Bird class
var Bird = Container.expand(function () {
var self = Container.call(this);
var birdGraphics = self.attachAsset('bird', {
anchorX: 0.5,
anchorY: 0.5
});
self.speedY = 5;
self.flyUp = false;
self.move = function () {
// Bird falls down
self.y += self.speedY;
// If bird is flying up, decrease its y position
if (self.flyUp) {
self.speedY -= 90;
if (self.speedY <= -10) {
self.flyUp = false;
}
} else {
self.speedY += 10;
if (self.speedY > 10) {
self.speedY = 11;
}
}
};
});
// Obstacle class
var Obstacle = Container.expand(function () {
var self = Container.call(this);
var obstacleGraphics = self.attachAsset('obstacle', {
anchorX: 0.5,
anchorY: 0.5
});
self.speedX = -5;
self.move = function () {
// Obstacle moves from right to left
self.x += self.speedX;
// Rotate obstacle counterclockwise
self.rotation -= 0.05;
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Light blue background to simulate sky
});
/****
* Game Code
****/
// Add background to the game
var background = game.addChild(LK.getAsset('background', {
anchorX: 0.5,
anchorY: 0.5,
x: 2048 / 2,
y: 3000 / 2
}));
var bird = game.addChild(new Bird());
bird.x = 350; // Start in the middle of the screen horizontally
bird.y = 1366; // Start in the middle of the screen vertically
// Add touch event listener to make bird move up and down smoothly
game.on('down', function (obj) {
bird.flyUp = true;
});
var obstacles = [];
var obstacleCreationCounter = 0;
LK.on('tick', function () {
bird.move();
// Create a new obstacle every 60 ticks (approximately 1 second)
obstacleCreationCounter++;
if (obstacleCreationCounter >= 60) {
var newObstacle = game.addChild(new Obstacle());
newObstacle.x = 2048; // Start at the right edge of the screen
newObstacle.y = Math.random() * 2732; // Start at a random height
obstacles.push(newObstacle);
obstacleCreationCounter = 0;
}
// Move each obstacle and check for collisions
for (var i = 0; i < obstacles.length; i++) {
var obstacle = obstacles[i];
obstacle.move();
// Check if bird has collided with the obstacle
if (bird.intersects(obstacle)) {
// Flash screen red for 1 second (1000ms) to show game over.
LK.effects.flashScreen(0xff0000, 1000);
// Show game over. The game will be automatically paused while game over is showing.
LK.showGameOver();
}
}
// Check if bird has fallen off the screen or risen above the screen
if (bird.y > 2732 || bird.y < 0) {
// Flash screen red for 1 second (1000ms) to show game over.
LK.effects.flashScreen(0xff0000, 1000);
// Show game over. The game will be automatically paused while game over is showing.
// Display the final score at the center of the screen
var gameOverScoreTxt = new Text2(score.toString(), {
size: 200,
fill: "#0000FF"
});
gameOverScoreTxt.anchor.set(0.5, 0.5); // Anchor to the center
gameOverScoreTxt.x = 2048 / 2; // Position at the center of the screen horizontally
gameOverScoreTxt.y = 2732 / 4; // Position at the center of the screen vertically
game.addChild(gameOverScoreTxt);
LK.showGameOver();
}
});
// Initialize bird and obstacles
// Yellow bird
// Brown obstacles;
var obstacle = game.addChild(new Obstacle());
obstacle.x = 2048; // Start at the right edge of the screen
obstacle.y = Math.random() * 2732; // Start at a random height;
// Initialize score counter
var score = 0;
var scoreTxt = new Text2(score.toString(), {
size: 100,
fill: "#0000FF"
});
scoreTxt.anchor.set(1, 0); // Anchor to the top right corner
LK.gui.topRight.addChild(scoreTxt);
// Update score every second
LK.setInterval(function () {
score++;
scoreTxt.setText(score.toString());
}, 1000);
голубое небо, горизонт и зеленое поле. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Мультяшный квадратный сюрикен. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
button leaderboards. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.