User prompt
Arka plana animasyon koy ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Arka planı kahve rengi yap
User prompt
Saniye arttıkça arka plan koyulaşsın ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Arka plan her saniye renk değiştirsin ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Arka plan renk değiştirsin sürekli
User prompt
Arka plan renk değiştirsin
User prompt
Gün batımı koy arka plana
User prompt
Arka plana bir gün batımı kot
User prompt
Oyunu kolaylaştır
User prompt
Oyunu biraz kolaylaştır
User prompt
Örüncek rasgele bir yerde doğmasın
User prompt
Oyunu güzelleştir
User prompt
Animasyon ekle ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Yeni bir şey ekle
User prompt
Yeni bir şey ekle rasgele bir yerde doğup aşsağı doğru gitsin
User prompt
Maze de rasgele bi yerde doğup sonra aşsağı insin
User prompt
Altan gelip yukarı gitcek bir yaratık yap
User prompt
Tavukğa yer çekim kuvveti %90 etki etsin
User prompt
Tavukğa yer çekim kuvveti %30 etki etsin
User prompt
Bagları çöz
User prompt
Tavuk yukarıda kaloyor sorunu çöz
User prompt
Hala yukarıda kalıyor sorunu çöz
User prompt
Obstacle yukarıda bag da kalıyor sorunu çöz
/****
* Classes
****/
// New Creature class representing a different enemy
var Creature = Container.expand(function () {
var self = Container.call(this);
var creatureGraphics = self.attachAsset('creature', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 8;
self.update = function () {
// Move the creature down the screen
self.y += self.speed;
// Add a simple animation to the creature
// Removed rotation animation for performance optimization
};
});
// Enemy class representing the enemies
var Enemy = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.attachAsset('enemy', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 10;
self.update = function () {
// Move the enemy down the screen
self.y += self.speed;
// Add a simple animation to the enemy
// Removed rotation animation for performance optimization
};
});
// Maze class representing the maze box
var Maze = Container.expand(function () {
var self = Container.call(this);
var mazeGraphics = self.attachAsset('maze', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
// Update logic for the maze
};
});
// Monster class representing a monster that spawns above the player
var Monster = Container.expand(function () {
var self = Container.call(this);
var monsterGraphics = self.attachAsset('creature', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 5;
self.update = function () {
// Move the monster down the screen
self.y += self.speed;
};
});
//<Assets used in the game will automatically appear here>
//<Write imports for supported plugins here>
// Ninja class representing the player character
var Ninja = Container.expand(function () {
var self = Container.call(this);
var ninjaGraphics = self.attachAsset('ninja', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 10;
self.update = function () {
// Update logic for the ninja
// Move left if the ninja is not at the left edge of the screen
if (self.x > 0) {
self.x -= self.speed;
// Removed rotation animation for performance optimization
}
// Move right if the ninja is not at the right edge of the screen
if (self.x < 2048) {
self.x += self.speed;
}
// Reset rotation when the ninja is not moving
if (self.speed == 0) {}
};
self.dodge = function () {
// Logic for dodging obstacles
};
self.slice = function () {
// Logic for slicing through enemies
};
});
// Obstacle class representing the obstacles
var Obstacle = Container.expand(function () {
var self = Container.call(this);
var obstacleGraphics = self.attachAsset('obstacle', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
// Move the obstacle down the screen
// Check if we reached the Y position (0) right at this frame now as we were not there before (last update tick)
self.y += self.speed * 1.9; // Apply 90% gravity effect to the obstacle
if (self.lastY <= 0 && self.y > 0) {
// Additional logic if needed when the obstacle moves past the top
self.y = 0; // Ensure the obstacle is not stuck at the top
// Additional logic if needed when the obstacle moves past the top
}
self.lastY = self.y;
};
});
// PowerUp class representing a power-up item
var PowerUp = Container.expand(function () {
var self = Container.call(this);
var powerUpGraphics = self.attachAsset('obstacle', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 5;
self.update = function () {
// Move the power-up down the screen
self.y += self.speed;
};
});
// New UpwardCreature class representing a creature that moves from bottom to top
var UpwardCreature = Container.expand(function () {
var self = Container.call(this);
var creatureGraphics = self.attachAsset('creature', {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = 5;
self.update = function () {
// Move the creature up the screen
self.y -= self.speed;
// Check if the creature has moved off the top of the screen
if (self.y < -100) {
self.destroy();
}
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x8B4513 //Init game with brown background
});
/****
* Game Code
****/
// Set interval to spawn upward moving creatures
var upwardCreatureSpawnInterval = 4000;
var upwardCreatureSpawnTimer = LK.setInterval(spawnUpwardCreature, upwardCreatureSpawnInterval);
// Set interval to spawn power-ups
var powerUpSpawnInterval = 10000;
var powerUpSpawnTimer = LK.setInterval(spawnPowerUp, powerUpSpawnInterval);
// Function to spawn power-ups
function spawnPowerUp() {
var powerUp = new PowerUp();
powerUp.x = Math.random() * 2048;
powerUp.y = -100;
powerUps.push(powerUp);
game.addChild(powerUp);
}
// Initialize array to keep track of power-ups
var powerUps = [];
// Set interval to spawn monsters
var monsterSpawnInterval = 3000;
var monsterSpawnTimer = LK.setInterval(spawnMonster, monsterSpawnInterval);
// Function to spawn monsters
function spawnMonster() {
var monster = new Monster();
monster.x = ninja.x; // Spawn above the ninja
monster.y = -100;
monsters.push(monster);
game.addChild(monster);
}
// Set interval to spawn creatures
var creatureSpawnInterval = 2000;
var creatureSpawnTimer = LK.setInterval(spawnCreature, creatureSpawnInterval);
// Function to spawn creatures
function spawnCreature() {
var creature = new Creature();
creature.x = Math.random() * 2048;
creature.y = -100;
creatures.push(creature);
game.addChild(creature);
}
// Initialize arrays to keep track of enemies, obstacles, creatures, and monsters
var enemies = [];
var obstacles = [];
var creatures = [];
var monsters = [];
// Create the ninja character and add to the game
var ninja = game.addChild(new Ninja());
ninja.x = 2048 / 2;
ninja.y = 2732 - 200;
// Create the maze and add to the game
var maze = game.addChild(new Maze());
maze.x = ninja.x;
maze.y = -100;
// Function to handle game updates
game.update = function () {
// Update ninja
ninja.update();
// Update enemies
for (var i = enemies.length - 1; i >= 0; i--) {
var enemy = enemies[i];
if (enemy.y <= 2732) {
enemy.update();
} else {
enemy.destroy();
enemies.splice(i, 1);
}
}
// Update creatures
for (var c = creatures.length - 1; c >= 0; c--) {
var creature = creatures[c];
if (creature.y <= 2732) {
creature.update();
} else {
creature.destroy();
creatures.splice(c, 1);
}
}
// Update monsters
for (var m = monsters.length - 1; m >= 0; m--) {
var monster = monsters[m];
if (monster.y <= 2732) {
monster.update();
} else {
monster.destroy();
monsters.splice(m, 1);
}
}
// Update obstacles
for (var j = obstacles.length - 1; j >= 0; j--) {
var obstacle = obstacles[j];
if (obstacle.y <= 2732) {
obstacle.update();
} else {
obstacle.destroy();
obstacles.splice(j, 1);
}
}
// Update the score text
scoreText.setText(LK.getScore());
// Check for collisions between ninja and enemies
for (var k = 0; k < enemies.length; k++) {
if (ninja.intersects(enemies[k])) {
// Handle collision with enemy
// Removed screen flash effect for performance optimization
// Display the score when the game is over
var score = LK.getScore();
scoreText.setText("Score: " + score);
LK.showGameOver();
}
}
// Check for collisions between ninja and creatures
for (var m = 0; m < creatures.length; m++) {
if (ninja.intersects(creatures[m])) {
// Handle collision with creature
// Removed screen flash effect for performance optimization
// Display the score when the game is over
var score = LK.getScore();
scoreText.setText("Score: " + score);
LK.showGameOver();
}
}
// Check for collisions between ninja and power-ups
for (var p = 0; p < powerUps.length; p++) {
if (ninja.intersects(powerUps[p])) {
// Handle collision with power-up
ninja.speed += 5; // Increase ninja's speed temporarily
powerUps[p].destroy();
powerUps.splice(p, 1);
}
}
// Check for collisions between ninja and obstacles
for (var l = 0; l < obstacles.length; l++) {
if (ninja.intersects(obstacles[l])) {
// Handle collision with obstacle
ninja.dodge();
}
}
};
// Create a Text2 object to display the score
var scoreText = new Text2('0', {
size: 150,
fill: 0xFFFFFF
});
// Add the score text to the GUI overlay at the top-center of the screen
LK.gui.top.addChild(scoreText);
// Function to spawn enemies
function spawnEnemy() {
var enemy = new Enemy();
enemy.x = Math.random() * 2048;
enemy.y = -100;
enemies.push(enemy);
game.addChild(enemy);
}
// Function to increase score every second
function increaseScore() {
LK.setScore(LK.getScore() + 1);
if (LK.ticks % 60 === 0) {
// Update score text every second
scoreText.setText(LK.getScore());
}
}
var scoreIncreaseTimer = LK.setInterval(increaseScore, 1000);
// Function to spawn obstacles
function spawnObstacle() {
var obstacle = new Obstacle();
obstacle.x = Math.random() * 2048;
obstacle.y = -100;
obstacle.lastY = obstacle.y; // Initialize lastY for tracking changes on Y
obstacles.push(obstacle);
game.addChild(obstacle);
}
// Set intervals to spawn enemies and obstacles
var enemySpawnInterval = 1000;
var obstacleSpawnInterval = 3000;
var enemySpawnTimer = LK.setInterval(spawnEnemy, enemySpawnInterval);
var obstacleSpawnTimer = LK.setInterval(spawnObstacle, obstacleSpawnInterval);
// Increase difficulty every 5 seconds
var difficultyIncreaseTimer = LK.setInterval(function () {
enemySpawnInterval = Math.max(500, enemySpawnInterval - 100);
obstacleSpawnInterval = Math.max(1000, obstacleSpawnInterval - 200);
LK.clearInterval(enemySpawnTimer);
LK.clearInterval(obstacleSpawnTimer);
enemySpawnTimer = LK.setInterval(spawnEnemy, enemySpawnInterval);
obstacleSpawnTimer = LK.setInterval(spawnObstacle, obstacleSpawnInterval);
}, 5000);
// Handle touch events for ninja actions
game.down = function (x, y, obj) {
// Move the ninja to the touched position
ninja.x = x;
};
game.up = function (x, y, obj) {
// Stop the ninja's movement when the touch is released
ninja.speed = 0;
};
// Function to spawn upward moving creatures
function spawnUpwardCreature() {
var upwardCreature = new UpwardCreature();
upwardCreature.x = Math.random() * 2048;
upwardCreature.y = 2732 + 100; // Start below the screen
creatures.push(upwardCreature);
game.addChild(upwardCreature);
} ===================================================================
--- original.js
+++ change.js
@@ -117,8 +117,25 @@
// Move the power-up down the screen
self.y += self.speed;
};
});
+// New UpwardCreature class representing a creature that moves from bottom to top
+var UpwardCreature = Container.expand(function () {
+ var self = Container.call(this);
+ var creatureGraphics = self.attachAsset('creature', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.speed = 5;
+ self.update = function () {
+ // Move the creature up the screen
+ self.y -= self.speed;
+ // Check if the creature has moved off the top of the screen
+ if (self.y < -100) {
+ self.destroy();
+ }
+ };
+});
/****
* Initialize Game
****/
@@ -128,8 +145,11 @@
/****
* Game Code
****/
+// Set interval to spawn upward moving creatures
+var upwardCreatureSpawnInterval = 4000;
+var upwardCreatureSpawnTimer = LK.setInterval(spawnUpwardCreature, upwardCreatureSpawnInterval);
// Set interval to spawn power-ups
var powerUpSpawnInterval = 10000;
var powerUpSpawnTimer = LK.setInterval(spawnPowerUp, powerUpSpawnInterval);
// Function to spawn power-ups
@@ -316,5 +336,13 @@
};
game.up = function (x, y, obj) {
// Stop the ninja's movement when the touch is released
ninja.speed = 0;
-};
\ No newline at end of file
+};
+// Function to spawn upward moving creatures
+function spawnUpwardCreature() {
+ var upwardCreature = new UpwardCreature();
+ upwardCreature.x = Math.random() * 2048;
+ upwardCreature.y = 2732 + 100; // Start below the screen
+ creatures.push(upwardCreature);
+ game.addChild(upwardCreature);
+}
\ No newline at end of file
Ninja. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Zombie pixer. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Canavar örüncek. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Kanatları açık canavar bir tavuk. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows