User prompt
Karakterin hitboxunu %6 azalt
User prompt
Karakterin yer çekimi her azaldığında engellerin hızı %7 daha artsın
User prompt
Karakterin engellere çarpma hassasiyetini %20 azalt
User prompt
Karakterin engellere değme hassasiyetini düşür
User prompt
Karakter her engelden atladığında %10 oranında ileri atılsın ve kamera karakteri izlesin
User prompt
Her engeller hızlandırın karakterin yer çekimi %5 oranında azalsın
User prompt
Karakterin yer çekimini %20 azalt
User prompt
Oyuna her başlandığında engeller yavaş gelsin skor arttıkça engeller hızlansın
Remix started
Copy Mario vs Monsters
/****
* Classes
****/
// 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 = 2; // Default speed, will be overridden when spawned
self.update = function () {
self.x -= self.speed;
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;
// Calculate gravity based on score - decreases by 5% for each point
var gravityReduction = LK.getScore() * 0.05;
var currentGravity = 0.56 * (1 - gravityReduction);
// Ensure gravity doesn't become negative or too small
currentGravity = Math.max(currentGravity, 0.1);
self.velocityY += currentGravity;
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;
}
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Sky blue background
});
/****
* Game Code
****/
var background = game.addChild(LK.getAsset('background', {
anchorX: 0,
anchorY: 0
}));
background.x = 0;
background.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;
var baseEnemySpeed = 2; // Base speed for enemies at start
// Create a new Text2 object to display the score
var scoreText = new Text2('0', {
size: 100,
fill: 0xFFFFFF
});
// Add the score text to the game GUI at the top center of the screen
LK.gui.top.addChild(scoreText);
scoreText.x = 2048 / 2;
scoreText.y = 0;
// Handle game updates
game.update = function () {
player.update();
// Spawn enemies
enemySpawnCounter++;
if (enemySpawnCounter >= enemySpawnInterval) {
var enemy = new Enemy();
enemy.x = 2048;
enemy.y = 2732 / 2;
// Set enemy speed based on current score - increases by 0.5 for each point
enemy.speed = baseEnemySpeed + LK.getScore() * 0.5;
enemies.push(enemy);
game.addChild(enemy);
// 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])) {
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
} else if (player.x > enemies[j].x && !enemies[j].passed) {
enemies[j].passed = true;
LK.setScore(LK.getScore() + 1);
scoreText.setText(LK.getScore());
// Boost player forward by 10%
player.x += player.speed * 0.1;
// Make camera follow the player by moving all game elements backwards
var cameraOffset = player.speed * 0.1;
background.x -= cameraOffset;
for (var k = 0; k < enemies.length; k++) {
enemies[k].x -= cameraOffset;
}
}
}
};
// Handle player jump
game.down = function (x, y, obj) {
player.jump();
}; ===================================================================
--- original.js
+++ change.js
@@ -113,8 +113,16 @@
} else if (player.x > enemies[j].x && !enemies[j].passed) {
enemies[j].passed = true;
LK.setScore(LK.getScore() + 1);
scoreText.setText(LK.getScore());
+ // Boost player forward by 10%
+ player.x += player.speed * 0.1;
+ // Make camera follow the player by moving all game elements backwards
+ var cameraOffset = player.speed * 0.1;
+ background.x -= cameraOffset;
+ for (var k = 0; k < enemies.length; k++) {
+ enemies[k].x -= cameraOffset;
+ }
}
}
};
// Handle player jump