User prompt
Make the obscles pass under the tree
User prompt
Add coconut sound to obstacles
User prompt
Have the sound start when .5 sec before the obstacle shows on the screen
User prompt
Add sound to coconut just when it appears
User prompt
add sound to buttons when they are pushed
User prompt
Please fix the score couner
User prompt
The score is not working it is stuck at 0
User prompt
Please introduce levels. When a player passes 20 obstacles a level is passed. Make every level a little more difficult that the previous one.
User prompt
Create 5 different speeds for the obstracles
User prompt
Randomize which speed the obstacle uses
User prompt
Make the obstacles more unpredictalbe
User prompt
Make the game more difficult
User prompt
Decrease size of player with 50%
User prompt
Decrease size of obstacles by 50%
User prompt
Move player up the y axis 100
User prompt
Make button invisible
User prompt
Move the player up 10%
User prompt
Move the player up 4%
User prompt
Ensure the score is submitted
User prompt
Same way that obstacles drop down make it so that powers comes every once in a while. A power should give you 2 points if hit by the player
User prompt
make powers ups appear more frequently
User prompt
Make the power ups fall slower than the obstacles
User prompt
slow down the velocity of the power up
User prompt
Make the power up worth 6 points
User prompt
Make the power ups speed 50% slower
/****
* Classes
****/
var Obstacle = Container.expand(function () {
var self = Container.call(this);
var obstacleGraphics = LK.getAsset('obstacle', {});
obstacleGraphics.anchor.set(0.5, 0.5);
self.addChild(obstacleGraphics);
this.baseSpeed = 10;
this.speed = this.baseSpeed;
this._update_migrated = function () {
this.speed = this.baseSpeed + Math.floor(LK.ticks / 1000);
if (this.y < palmTree.height) {
this.zIndex = 1;
} else {
this.zIndex = 3;
}
this.y += this.speed;
};
});
var Player = Container.expand(function () {
var self = Container.call(this);
var playerGraphics = LK.getAsset('player', {});
playerGraphics.anchor.set(0.5, 0.5);
self.addChild(playerGraphics);
this.targetX = null;
this.speed = 60;
this.moveToLane = function (targetX) {
this.targetX = targetX;
};
this._update_migrated = function () {
if (this.targetX !== null) {
var direction = this.targetX > this.x ? 1 : -1;
this.x += direction * this.speed;
if (direction > 0 && this.x >= this.targetX || direction < 0 && this.x <= this.targetX) {
this.x = this.targetX;
this.targetX = null;
}
}
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x000000
});
/****
* Game Code
****/
var score = 0;
var scoreText = new Text2(score, {
size: 150,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma",
fill: "#ffffff"
});
scoreText.anchor.set(0.5, 0);
LK.gui.top.addChild(scoreText);
var lanes = [512, 1024, 1536]; // Three lanes for the player to move between
var trackGraphics = [];
lanes.forEach(function (lane) {
var track = LK.getAsset('track', {});
track.anchor.set(0.5, 0);
track.x = lane;
track.y = 0;
trackGraphics.push(track);
game.addChild(track);
});
var player = game.addChild(new Player());
var palmTree = LK.getAsset('palmTree', {
scaleX: 1.5 * 1.5 * 1.5 * 1.5 * 1.5 * 1.4
});
palmTree.anchor.set(0.5, 0);
palmTree.x = 1024;
palmTree.y = 0;
game.addChild(palmTree);
player.y = 2732 - player.height; // Position the player at the bottom of the screen
player.x = lanes[1]; // Start the player in the middle lane
var obstacles = [];
function spawnObstacle(lane) {
var obstacle = new Obstacle();
obstacle.x = lane;
obstacle.y = -obstacle.height;
obstacles.push(obstacle);
game.addChild(obstacle);
}
var lastSpawnedLane = null;
function spawnObstaclePattern() {
var pattern = Math.floor(Math.random() * 2);
switch (pattern) {
case 0:
spawnObstacle(lanes[0]);
LK.setTimeout(function () {
return spawnObstacle(lanes[2]);
}, 1000);
break;
case 1:
spawnObstacle(lanes[1]);
LK.setTimeout(function () {
return spawnObstacle(lanes[0]);
}, 1000);
break;
}
LK.setTimeout(spawnObstaclePattern, 5000);
}
spawnObstaclePattern();
function updateGame() {
player._update_migrated();
obstacles.forEach(function (obstacle) {
obstacle._update_migrated();
if (obstacle.y > player.y && !obstacle.passed) {
score++;
scoreText.setText(score);
obstacle.passed = true;
}
if (player.intersects(obstacle)) {
LK.showGameOver(restartGame);
}
});
}
LK.on('tick', updateGame);
var swipeStartX = null;
game.on('down', function (x, y, obj) {
swipeStartX = game.toLocal(obj.global).x;
});
game.on('up', function (x, y, obj) {
var swipeEndX = game.toLocal(obj.global).x;
var swipeDistance = swipeEndX - swipeStartX;
if (swipeDistance > 100 && player.x < lanes[2]) {
// Swipe right
player.moveToLane(lanes[lanes.indexOf(player.x) + 1]);
} else if (swipeDistance < -100 && player.x > lanes[0]) {
// Swipe left
player.moveToLane(lanes[lanes.indexOf(player.x) - 1]);
}
swipeStartX = null;
});
function restartGame() {
obstacles.forEach(function (obstacle) {
obstacle.destroy();
});
obstacles = [];
player.x = lanes[1];
player.y = 2732 - player.height;
score = 0;
scoreText.setText(score);
}
// Create three buttons at the bottom of the screen
var leftButton = LK.getAsset('button', {
width: 200,
height: 200,
color: 0x00ff00,
shape: 'box'
});
leftButton.x = 200 + 200 * 1.0; // Move the button 20% to the right
leftButton.y = 2732 - 100 - 15 - 100;
leftButton.on('down', function () {
player.moveToLane(lanes[0]);
});
game.addChild(leftButton);
var middleButton = LK.getAsset('button', {
width: 200,
height: 200,
color: 0x00ff00,
shape: 'box'
});
middleButton.x = 1024 - 1024 * 0.1; // Move the button 10% to the left
middleButton.y = 2732 - 100 - 15 - 100;
middleButton.on('down', function () {
player.moveToLane(lanes[1]);
});
game.addChild(middleButton);
var rightButton = LK.getAsset('button', {
width: 200,
height: 200,
color: 0x00ff00,
shape: 'box'
});
rightButton.x = 1848 - 1848 * 0.2; // Move the button 20% to the left
rightButton.y = 2732 - 100 - 15 - 100;
rightButton.on('down', function () {
player.moveToLane(lanes[2]);
});
game.addChild(rightButton);
;
summoning round blue button. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Make an image og a coconut. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Make more variations
Make a banana. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.