User prompt
Oyun bitti tebrikler yaz
User prompt
Yazı rendi beyaz ve kalın olsun
User prompt
Yazı fontunu değiştir
User prompt
Score sol üst köşeye taşı
User prompt
✅ Puan metnini ekranın sol üst köşesine taşıyın
User prompt
Score sağ üst köşeye taşı
User prompt
Skorları sağa kaydır
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'Button')' in or related to this line: 'var shootButton = new LK.UI.Button({' Line Number: 261
User prompt
Ateş yapmak için oyuna düğme ekle
User prompt
Canavarların arasındaki mesafeyi arttır
User prompt
2 kere tıkladığında ateş etsin
User prompt
1 kere tıkladığında zıplasın
User prompt
Zümrüt şeklini değiştir
User prompt
Geri al
User prompt
Zıplama süresini uzat
User prompt
Please fix the bug: 'TypeError: LK.effects.explode is not a function' in or related to this line: 'LK.effects.explode(enemies[j], 0xff0000, 1000); // Add explosion effect' Line Number: 214
User prompt
Canavara değince canavara patlama efekti koy
User prompt
Canavara değince canavar patlasın
User prompt
Canavara değmeden ölme
User prompt
Ateş etme özelliği sadece havadayken olsun
User prompt
Havadan gelen canavar ekls
User prompt
Zıplarken ateş etme
User prompt
2 kere tıklandığında sadece zıpla
User prompt
1 kere tıklandığında ateş et
User prompt
Enemy hits i kaldır
/****
* Classes
****/
// Define a class for the player's bullets
var Bullet = Container.expand(function () {
var self = Container.call(this);
var bulletGraphics = self.attachAsset('bullet', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 10;
self.update = function () {
self.x += self.speed;
if (self.x > 2048 + 50) {
self.destroy();
}
};
});
// Define a custom Button class to replace the undefined LK.UI.Button
var Button = Container.expand(function () {
var self = Container.call(this);
var buttonGraphics = self.attachAsset('button', {
anchorX: 0.5,
anchorY: 0.5
});
self.text = '';
self.onClick = function () {};
self.update = function () {
// Add any update logic if necessary
};
self.setText = function (text) {
self.text = text;
};
self.setOnClick = function (callback) {
self.onClick = callback;
};
self.down = function (x, y, obj) {
self.onClick();
};
});
// Define a class for the emeralds
var Emerald = Container.expand(function () {
var self = Container.call(this);
var emeraldGraphics = self.attachAsset('emerald', {
anchorX: 0.5,
anchorY: 0.5,
shape: 'box'
});
self.speed = 5;
self.update = function () {
self.x -= self.speed;
if (self.x < -50) {
self.destroy();
}
};
});
// Define a class for enemies
var Enemy = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.attachAsset('enemy', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 5;
self.update = function () {
self.x -= self.speed;
if (self.x < -50) {
self.destroy();
}
};
});
// Define a class for flying enemies
var FlyingEnemy = Container.expand(function () {
var self = Container.call(this);
var flyingEnemyGraphics = self.attachAsset('enemy', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 3;
self.update = function () {
self.x -= self.speed;
self.y = 200 + Math.sin(self.x / 100) * 100; // Sine wave pattern
if (self.x < -50) {
self.destroy();
}
};
});
//<Assets used in the game will automatically appear here>
// Define a class for the player character
var Player = Container.expand(function () {
var self = Container.call(this);
var playerGraphics = self.attachAsset('player', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 5;
self.jumpHeight = 40;
self.isJumping = false;
self.velocityY = 0;
self.update = function () {
if (self.isJumping) {
self.y += self.velocityY;
self.velocityY += 0.7; // Decreased gravity effect by 30%
if (self.y >= 2732 / 2) {
// Ground level
self.y = 2732 / 2;
self.isJumping = false;
self.velocityY = 0;
}
}
};
self.jump = function () {
if (!self.isJumping) {
self.isJumping = true;
self.velocityY = -self.jumpHeight;
}
};
self.shoot = function () {
if (self.isJumping) {
// Allow shooting only when in the air
// Shoot a bullet
var bullet = new Bullet();
bullet.x = self.x;
bullet.y = self.y;
game.addChild(bullet);
}
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Sky blue background
});
/****
* Game Code
****/
var background1 = game.addChild(LK.getAsset('background', {
anchorX: 0,
anchorY: 0
}));
background1.x = 0;
background1.y = 0;
var background2 = game.addChild(LK.getAsset('background', {
anchorX: 0,
anchorY: 0
}));
background2.x = 2048;
background2.y = 0;
// Initialize player
var player = game.addChild(new Player());
player.x = 2048 / 2;
player.y = 2732 / 2;
// Initialize enemies
var enemies = [];
var enemySpawnInterval = 100;
var enemySpawnCounter = 0;
// Create a new Text2 object to display the score
var scoreText = new Text2('Score: 0', {
size: 100,
fill: 0x000000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" // Custom font
});
// Add the score text to the game GUI at the top-left corner of the screen
LK.gui.topLeft.addChild(scoreText);
scoreText.x = 0;
scoreText.y = 0;
// Initialize emeraldScore
var emeraldScore = 0;
// Initialize emeraldScoreText
var emeraldScoreText = new Text2('Emerald Score: 0', {
size: 100,
fill: 0x000000
});
// Add the score texts to the game GUI at the top-left corner of the screen, vertically aligned
LK.gui.topLeft.addChild(scoreText);
LK.gui.topLeft.addChild(emeraldScoreText);
scoreText.x = 0;
scoreText.y = 0;
emeraldScoreText.x = 0;
emeraldScoreText.y = 120;
// Handle game updates
game.update = function () {
background1.x -= 2;
background2.x -= 2;
if (background1.x <= -2048) {
background1.x = background2.x + 2048;
}
if (background2.x <= -2048) {
background2.x = background1.x + 2048;
}
player.update();
// Spawn enemies and emeralds
enemySpawnCounter++;
if (enemySpawnCounter >= enemySpawnInterval) {
var enemy = new Enemy();
enemy.x = 2048;
enemy.y = 2732 / 2;
enemies.push(enemy);
game.addChild(enemy);
// Spawn a flying enemy every second enemy
if (enemies.length % 2 === 0) {
var flyingEnemy = new FlyingEnemy();
flyingEnemy.x = 2048;
flyingEnemy.y = 200; // Start flying enemy higher
enemies.push(flyingEnemy);
game.addChild(flyingEnemy);
}
// Spawn an emerald along with every third enemy
if (enemies.length % 3 === 0) {
var emerald = new Emerald();
emerald.x = 2048;
emerald.y = 2732 / 2;
game.addChild(emerald);
}
// Randomize the spawn interval for the next enemy
enemySpawnInterval = Math.floor(Math.random() * 150) + 50;
enemySpawnCounter = 0;
}
// Update enemies
for (var j = enemies.length - 1; j >= 0; j--) {
enemies[j].update();
if (player.intersects(enemies[j])) {
if (!player.lastWasIntersecting) {
LK.effects.flashObject(player, 0xff0000, 1000);
LK.showGameOver();
var congratsText = new Text2('Congratulations!', {
size: 150,
fill: 0x00FF00,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
LK.gui.center.addChild(congratsText);
congratsText.anchor.set(0.5, 0.5);
congratsText.x = 2048 / 2;
congratsText.y = 2732 / 2;
enemies[j].destroy(); // Destroy the enemy upon collision
enemies.splice(j, 1); // Remove the enemy from the array
}
player.lastWasIntersecting = true;
} else {
player.lastWasIntersecting = false;
if (player.x > enemies[j].x && !enemies[j].passed) {
enemies[j].passed = true;
LK.setScore(LK.getScore() + 1);
scoreText.setText('Score: ' + LK.getScore());
}
}
// Check for bullet and emerald collisions
for (var i = game.children.length - 1; i >= 0; i--) {
if (game.children[i] instanceof Bullet && game.children[i].intersects(enemies[j])) {
game.children[i].destroy();
enemies[j].destroy();
enemies.splice(j, 1);
break;
} else if (game.children[i] instanceof Emerald && player.intersects(game.children[i])) {
game.children[i].destroy();
LK.setScore(LK.getScore() + 1);
scoreText.setText('Score: ' + LK.getScore());
// Player earns 3 fire rights for every 10 emeralds collected
if (emeraldScore % 10 === 0) {
player.fireRights += 3;
}
// Update emerald score
emeraldScore += 1;
emeraldScoreText.setText('Emerald Score: ' + emeraldScore);
}
}
}
};
// Handle player jump and shooting
var lastTap = 0;
game.down = function (x, y, obj) {
var currentTime = new Date().getTime();
if (currentTime - lastTap < 300) {
player.shoot();
} else {
player.jump();
}
lastTap = currentTime;
};
// Add a button for shooting
var shootButton = new Button();
shootButton.setText('Shoot');
shootButton.x = 1800;
shootButton.y = 2500;
shootButton.setOnClick(function () {
player.shoot();
});
LK.gui.bottomRight.addChild(shootButton);
LK.gui.bottomRight.addChild(shootButton); ===================================================================
--- original.js
+++ change.js
@@ -159,11 +159,10 @@
var enemySpawnCounter = 0;
// Create a new Text2 object to display the score
var scoreText = new Text2('Score: 0', {
size: 100,
- fill: 0xFFFFFF,
- // Change text color to white
- font: "bold 'GillSans-Bold',Impact,'Arial Black',Tahoma" // Make text bold
+ fill: 0x000000,
+ font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" // Custom font
});
// Add the score text to the game GUI at the top-left corner of the screen
LK.gui.topLeft.addChild(scoreText);
scoreText.x = 0;
@@ -226,8 +225,17 @@
if (player.intersects(enemies[j])) {
if (!player.lastWasIntersecting) {
LK.effects.flashObject(player, 0xff0000, 1000);
LK.showGameOver();
+ var congratsText = new Text2('Congratulations!', {
+ size: 150,
+ fill: 0x00FF00,
+ font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
+ });
+ LK.gui.center.addChild(congratsText);
+ congratsText.anchor.set(0.5, 0.5);
+ congratsText.x = 2048 / 2;
+ congratsText.y = 2732 / 2;
enemies[j].destroy(); // Destroy the enemy upon collision
enemies.splice(j, 1); // Remove the enemy from the array
}
player.lastWasIntersecting = true;