User prompt
do it jump lower
User prompt
do it jump lower
User prompt
do it jump more down
User prompt
do it jump more down
User prompt
jump higher but fall fast
User prompt
do the cat fall faster
User prompt
prevent 2 or 3 spikes daffilé
User prompt
le temps de creation d'un spike doit etre entre 1 et 2 secondes
User prompt
le temps de creation d'un spike doit etre entre 0.5 et 3 secondes
User prompt
create an another spike at random time
Code edit (3 edits merged)
Please save this source code
User prompt
make the spikes move faster
User prompt
create to spikes at one time
User prompt
show it
User prompt
create a new asset and name him bg
User prompt
delete background
User prompt
do it
User prompt
add a background
Code edit (1 edits merged)
Please save this source code
User prompt
make the spikes move a little bit slowly
User prompt
make the spikes move a little bit slowly
User prompt
make spikes move faster
User prompt
make the hoop moving faster
User prompt
make the hoop higher
User prompt
add only one to score
/****
* Classes
****/
// Explosion class
var Explosion = Container.expand(function () {
var self = Container.call(this);
var frames = [];
for (var i = 0; i < 5; i++) {
var frame = self.attachAsset('explosionFrame' + i, {
anchorX: 0.5,
anchorY: 0.5
});
frame.visible = false;
frames.push(frame);
}
var currentFrame = 0;
self.animate = function () {
if (currentFrame < frames.length) {
frames[currentFrame].visible = false;
currentFrame++;
if (currentFrame < frames.length) {
frames[currentFrame].visible = true;
}
} else {
self.destroy();
}
};
LK.setInterval(self.animate, 100);
});
// Hoop class
var Hoop = Container.expand(function () {
var self = Container.call(this);
var hoopGraphics = self.attachAsset('hoop', {
anchorX: 0.5,
anchorY: 1.0
});
self.move = function () {
self.x -= 5; // Move hoop to the left
};
});
// Obstacle class
var Obstacle = Container.expand(function () {
var self = Container.call(this);
var obstacleGraphics = self.attachAsset('obstacle', {
anchorX: 0.5,
anchorY: 1.0
});
self.move = function () {
self.x -= 10; // Increase obstacle speed to the left
};
});
// Assets are automatically created based on usage in the code.
// Player class
var Player = Container.expand(function () {
var self = Container.call(this);
var playerGraphics = self.attachAsset('player', {
anchorX: 0.5,
anchorY: 1.0
});
self.velocityY = 0;
self.isJumping = false;
self.jump = function () {
if (!self.isJumping) {
self.velocityY = -30; // Increase the jump height by increasing the initial upward velocity
self.isJumping = true;
}
};
self.update = function () {
self.y += self.velocityY;
self.velocityY += 1; // Gravity effect
if (self.y > game.floorLevel) {
self.y = game.floorLevel;
self.isJumping = false;
}
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Light blue background
});
/****
* Game Code
****/
// Display the current score
// Correctly initialize and display the score at the top center of the screen
var scoreDisplay = new Text2(LK.getScore().toString(), {
size: 100,
fill: "#ffffff",
// White color for better visibility
anchorX: 0.5,
// Sets anchor to the center of the text
anchorY: 0,
// Sets anchor to the top of the text
x: 2048 / 2,
// Center horizontally based on virtual resolution width
y: 50 // Position at the top
});
LK.gui.top.addChild(scoreDisplay);
LK.on('tick', function () {
scoreDisplay.setText(LK.getScore().toString()); // Update the score display every tick with the current score
});
// Initialize player
var player = game.addChild(new Player());
player.x = 300;
player.y = game.floorLevel = 2732 - 200; // Floor level
// Initialize obstacles and hoops arrays
game.obstacles = [];
game.hoops = [];
// Touch event to make the player jump
game.on('down', function () {
player.jump();
});
// Game tick event
LK.on('tick', function () {
player.update();
// Move and check obstacles
for (var i = game.obstacles.length - 1; i >= 0; i--) {
var obstacle = game.obstacles[i];
obstacle.move();
// Check collision with player
if (player.intersects(obstacle)) {
var explosion = new Explosion();
explosion.x = player.x;
explosion.y = player.y;
game.addChild(explosion);
// Removed red flash screen effect
// Set a timeout to simulate the end of the explosion animation before showing game over
LK.setTimeout(function () {
LK.showGameOver();
}, 500); // Assuming the explosion animation takes 500ms to complete
}
// Remove off-screen obstacles
if (obstacle.x < -100) {
obstacle.destroy();
game.obstacles.splice(i, 1);
}
}
// Add new obstacle
if (LK.ticks % 180 == 0) {
// Every 3 seconds, add an obstacle
var newObstacle = new Obstacle();
newObstacle.x = 2048; // Start from the right edge
newObstacle.y = game.floorLevel;
game.addChild(newObstacle);
game.obstacles.push(newObstacle);
}
// Move and check hoops
for (var j = game.hoops.length - 1; j >= 0; j--) {
var hoop = game.hoops[j];
hoop.move();
// Check collision with player and increase score
if (player.intersects(hoop)) {
LK.setScore(LK.getScore() + 1);
hoop.destroy(); // Destroy the hoop to prevent multiple score increments from a single hoop
game.hoops.splice(game.hoops.indexOf(hoop), 1);
}
// Remove off-screen hoops
if (hoop.x < -200) {
// Considering hoop width
hoop.destroy();
game.hoops.splice(j, 1);
}
}
// Add new hoop
if (LK.ticks % 360 == 0) {
// Every 6 seconds, add a hoop
var newHoop = new Hoop();
newHoop.x = 2048; // Start from the right edge
newHoop.y = game.floorLevel - 200; // Position the hoop above the floor
game.addChild(newHoop);
game.hoops.push(newHoop);
}
});
explosion frame. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
explosion frame. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
make the cat happy
make his mouth pink
delete grass
delete what is selected
make clouds similar of color of the sky, i mean dark purple and don't make it too visible