User prompt
Silah karakterime sadeçe 5 saniye kalsın ardından canavarlar 10 olduklarında gene bir yerde silah belirsin ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Karakterinin silahlı yanına koy sıla ile birlikte hareket edeyim birde silahım onlara ateş etsin ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Düşmanlarının ilk başta 5 olsun her 10 saniye 1 düşman daha artsın ama 10 düşmandan daha çok olmasın. Onlar 10 düşman olunca bana bir silah ver ama direk değil onu yerde alayım ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Karakterim büyümesin
User prompt
Böyle sağlanabileceğini bir ev tarzı bir şey yap ben içine girdiğimde canavarlar her kez farklı yerlere gitsinler
User prompt
Birde düşmanlar birbirli ile iç içe geçmesinler böyle birbirlerine ile çarpışsınlar
User prompt
Birde şey ekle karakterinin hızlanması için bir yemek tarzı bir şey ekle ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Her 100 puan topladım da seviyem artsın ilk baştaki seviyem 1. Maksimum seviyem 100 olsun
User prompt
Bana yemek tarzı öldüler yap ve o ödüllerle canım +10 yükselsin ve canavarlar bana ateş ettiklerinden ve bana doküman ateşlerde -5 Can kayıp edeyim. Canım 100 olsun ilk başta
User prompt
Sınırlı yaratıklar beni yakalanmaya çalışmaya denesinler ve bana ateş 🔥 atsınlar
Code edit (1 edits merged)
Please save this source code
User prompt
Cell Conquest
Initial prompt
Agario tarzı oyun yap
/****
* Plugins
****/
var tween = LK.import("@upit/tween.v1");
/****
* Classes
****/
var EnemyCell = Container.expand(function () {
var self = Container.call(this);
var graphics = self.attachAsset('enemyCell', {
anchorX: 0.5,
anchorY: 0.5
});
self.size = 80;
self.speed = 1;
self.targetX = self.x;
self.targetY = self.y;
self.moveTimer = 0;
self.consumed = false;
self.update = function () {
if (self.consumed) return;
self.moveTimer++;
// Change direction every 120 frames (2 seconds)
if (self.moveTimer % 120 === 0) {
self.targetX = Math.random() * (arenaWidth - 200) + 100;
self.targetY = Math.random() * (arenaHeight - 200) + 100;
}
// Move towards target
var dx = self.targetX - self.x;
var dy = self.targetY - self.y;
var distance = Math.sqrt(dx * dx + dy * dy);
if (distance > 5) {
self.x += dx / distance * self.speed;
self.y += dy / distance * self.speed;
}
// Keep within arena bounds
if (self.x < self.size / 2) self.x = self.size / 2;
if (self.x > arenaWidth - self.size / 2) self.x = arenaWidth - self.size / 2;
if (self.y < self.size / 2) self.y = self.size / 2;
if (self.y > arenaHeight - self.size / 2) self.y = arenaHeight - self.size / 2;
};
return self;
});
var FoodParticle = Container.expand(function () {
var self = Container.call(this);
var graphics = self.attachAsset('foodParticle', {
anchorX: 0.5,
anchorY: 0.5
});
self.value = 1;
self.consumed = false;
return self;
});
var PlayerCell = Container.expand(function () {
var self = Container.call(this);
var graphics = self.attachAsset('playerCell', {
anchorX: 0.5,
anchorY: 0.5
});
self.size = 60;
self.maxSpeed = 3;
self.targetX = self.x;
self.targetY = self.y;
self.lastSize = self.size;
self.grow = function (amount) {
self.size += amount;
self.scaleX = self.size / 60;
self.scaleY = self.size / 60;
// Update score based on size
LK.setScore(Math.floor(self.size - 60));
scoreTxt.setText(LK.getScore());
// Check win condition
if (self.size >= 300) {
LK.showYouWin();
}
};
self.getSpeed = function () {
// Speed decreases as size increases
var speedMultiplier = Math.max(0.3, 1 - (self.size - 60) / 200);
return self.maxSpeed * speedMultiplier;
};
self.update = function () {
// Move towards target position
var dx = self.targetX - self.x;
var dy = self.targetY - self.y;
var distance = Math.sqrt(dx * dx + dy * dy);
if (distance > 2) {
var speed = self.getSpeed();
self.x += dx / distance * speed;
self.y += dy / distance * speed;
}
// Keep within arena bounds
var radius = self.size / 2;
if (self.x < radius) self.x = radius;
if (self.x > arenaWidth - radius) self.x = arenaWidth - radius;
if (self.y < radius) self.y = radius;
if (self.y > arenaHeight - radius) self.y = arenaHeight - radius;
};
return self;
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x1a1a1a
});
/****
* Game Code
****/
var arenaWidth = 2048;
var arenaHeight = 2732;
// Create score display
var scoreTxt = new Text2('0', {
size: 80,
fill: 0xFFFFFF
});
scoreTxt.anchor.set(0.5, 0);
LK.gui.top.addChild(scoreTxt);
// Game objects
var player;
var foodParticles = [];
var enemyCells = [];
var maxFoodParticles = 50;
var maxEnemyCells = 5;
// Initialize player
player = game.addChild(new PlayerCell());
player.x = arenaWidth / 2;
player.y = arenaHeight / 2;
// Create initial food particles
function createFoodParticle() {
var food = new FoodParticle();
food.x = Math.random() * (arenaWidth - 100) + 50;
food.y = Math.random() * (arenaHeight - 100) + 50;
foodParticles.push(food);
game.addChild(food);
}
// Create initial enemy cells
function createEnemyCell() {
var enemy = new EnemyCell();
enemy.x = Math.random() * (arenaWidth - 200) + 100;
enemy.y = Math.random() * (arenaHeight - 200) + 100;
// Make sure enemy doesn't spawn too close to player
var dx = enemy.x - player.x;
var dy = enemy.y - player.y;
var distance = Math.sqrt(dx * dx + dy * dy);
if (distance < 200) {
enemy.x = player.x + dx / distance * 200;
enemy.y = player.y + dy / distance * 200;
}
enemyCells.push(enemy);
game.addChild(enemy);
}
// Spawn initial objects
for (var i = 0; i < maxFoodParticles; i++) {
createFoodParticle();
}
for (var i = 0; i < maxEnemyCells; i++) {
createEnemyCell();
}
// Touch controls
function handleMove(x, y, obj) {
player.targetX = x;
player.targetY = y;
}
game.move = handleMove;
game.down = function (x, y, obj) {
handleMove(x, y, obj);
};
// Main game loop
game.update = function () {
// Check collisions with food particles
for (var i = foodParticles.length - 1; i >= 0; i--) {
var food = foodParticles[i];
if (food.consumed) continue;
var dx = player.x - food.x;
var dy = player.y - food.y;
var distance = Math.sqrt(dx * dx + dy * dy);
if (distance < player.size / 2 + 10) {
// Player ate food
food.consumed = true;
player.grow(3);
food.destroy();
foodParticles.splice(i, 1);
LK.getSound('eat').play();
}
}
// Check collisions with enemy cells
for (var i = enemyCells.length - 1; i >= 0; i--) {
var enemy = enemyCells[i];
if (enemy.consumed) continue;
var dx = player.x - enemy.x;
var dy = player.y - enemy.y;
var distance = Math.sqrt(dx * dx + dy * dy);
var collisionDistance = player.size / 2 + enemy.size / 2 - 10;
if (distance < collisionDistance) {
if (player.size > enemy.size + 20) {
// Player eats enemy
enemy.consumed = true;
player.grow(15);
enemy.destroy();
enemyCells.splice(i, 1);
LK.getSound('absorbed').play();
} else if (enemy.size > player.size + 20) {
// Enemy eats player - game over
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
return;
}
}
}
// Spawn new food particles
if (foodParticles.length < maxFoodParticles && LK.ticks % 60 === 0) {
createFoodParticle();
}
// Spawn new enemy cells occasionally
if (enemyCells.length < maxEnemyCells && LK.ticks % 300 === 0) {
createEnemyCell();
}
}; ===================================================================
--- original.js
+++ change.js
@@ -1,6 +1,222 @@
-/****
+/****
+* Plugins
+****/
+var tween = LK.import("@upit/tween.v1");
+
+/****
+* Classes
+****/
+var EnemyCell = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('enemyCell', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.size = 80;
+ self.speed = 1;
+ self.targetX = self.x;
+ self.targetY = self.y;
+ self.moveTimer = 0;
+ self.consumed = false;
+ self.update = function () {
+ if (self.consumed) return;
+ self.moveTimer++;
+ // Change direction every 120 frames (2 seconds)
+ if (self.moveTimer % 120 === 0) {
+ self.targetX = Math.random() * (arenaWidth - 200) + 100;
+ self.targetY = Math.random() * (arenaHeight - 200) + 100;
+ }
+ // Move towards target
+ var dx = self.targetX - self.x;
+ var dy = self.targetY - self.y;
+ var distance = Math.sqrt(dx * dx + dy * dy);
+ if (distance > 5) {
+ self.x += dx / distance * self.speed;
+ self.y += dy / distance * self.speed;
+ }
+ // Keep within arena bounds
+ if (self.x < self.size / 2) self.x = self.size / 2;
+ if (self.x > arenaWidth - self.size / 2) self.x = arenaWidth - self.size / 2;
+ if (self.y < self.size / 2) self.y = self.size / 2;
+ if (self.y > arenaHeight - self.size / 2) self.y = arenaHeight - self.size / 2;
+ };
+ return self;
+});
+var FoodParticle = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('foodParticle', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.value = 1;
+ self.consumed = false;
+ return self;
+});
+var PlayerCell = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('playerCell', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.size = 60;
+ self.maxSpeed = 3;
+ self.targetX = self.x;
+ self.targetY = self.y;
+ self.lastSize = self.size;
+ self.grow = function (amount) {
+ self.size += amount;
+ self.scaleX = self.size / 60;
+ self.scaleY = self.size / 60;
+ // Update score based on size
+ LK.setScore(Math.floor(self.size - 60));
+ scoreTxt.setText(LK.getScore());
+ // Check win condition
+ if (self.size >= 300) {
+ LK.showYouWin();
+ }
+ };
+ self.getSpeed = function () {
+ // Speed decreases as size increases
+ var speedMultiplier = Math.max(0.3, 1 - (self.size - 60) / 200);
+ return self.maxSpeed * speedMultiplier;
+ };
+ self.update = function () {
+ // Move towards target position
+ var dx = self.targetX - self.x;
+ var dy = self.targetY - self.y;
+ var distance = Math.sqrt(dx * dx + dy * dy);
+ if (distance > 2) {
+ var speed = self.getSpeed();
+ self.x += dx / distance * speed;
+ self.y += dy / distance * speed;
+ }
+ // Keep within arena bounds
+ var radius = self.size / 2;
+ if (self.x < radius) self.x = radius;
+ if (self.x > arenaWidth - radius) self.x = arenaWidth - radius;
+ if (self.y < radius) self.y = radius;
+ if (self.y > arenaHeight - radius) self.y = arenaHeight - radius;
+ };
+ return self;
+});
+
+/****
* Initialize Game
-****/
+****/
var game = new LK.Game({
- backgroundColor: 0x000000
-});
\ No newline at end of file
+ backgroundColor: 0x1a1a1a
+});
+
+/****
+* Game Code
+****/
+var arenaWidth = 2048;
+var arenaHeight = 2732;
+// Create score display
+var scoreTxt = new Text2('0', {
+ size: 80,
+ fill: 0xFFFFFF
+});
+scoreTxt.anchor.set(0.5, 0);
+LK.gui.top.addChild(scoreTxt);
+// Game objects
+var player;
+var foodParticles = [];
+var enemyCells = [];
+var maxFoodParticles = 50;
+var maxEnemyCells = 5;
+// Initialize player
+player = game.addChild(new PlayerCell());
+player.x = arenaWidth / 2;
+player.y = arenaHeight / 2;
+// Create initial food particles
+function createFoodParticle() {
+ var food = new FoodParticle();
+ food.x = Math.random() * (arenaWidth - 100) + 50;
+ food.y = Math.random() * (arenaHeight - 100) + 50;
+ foodParticles.push(food);
+ game.addChild(food);
+}
+// Create initial enemy cells
+function createEnemyCell() {
+ var enemy = new EnemyCell();
+ enemy.x = Math.random() * (arenaWidth - 200) + 100;
+ enemy.y = Math.random() * (arenaHeight - 200) + 100;
+ // Make sure enemy doesn't spawn too close to player
+ var dx = enemy.x - player.x;
+ var dy = enemy.y - player.y;
+ var distance = Math.sqrt(dx * dx + dy * dy);
+ if (distance < 200) {
+ enemy.x = player.x + dx / distance * 200;
+ enemy.y = player.y + dy / distance * 200;
+ }
+ enemyCells.push(enemy);
+ game.addChild(enemy);
+}
+// Spawn initial objects
+for (var i = 0; i < maxFoodParticles; i++) {
+ createFoodParticle();
+}
+for (var i = 0; i < maxEnemyCells; i++) {
+ createEnemyCell();
+}
+// Touch controls
+function handleMove(x, y, obj) {
+ player.targetX = x;
+ player.targetY = y;
+}
+game.move = handleMove;
+game.down = function (x, y, obj) {
+ handleMove(x, y, obj);
+};
+// Main game loop
+game.update = function () {
+ // Check collisions with food particles
+ for (var i = foodParticles.length - 1; i >= 0; i--) {
+ var food = foodParticles[i];
+ if (food.consumed) continue;
+ var dx = player.x - food.x;
+ var dy = player.y - food.y;
+ var distance = Math.sqrt(dx * dx + dy * dy);
+ if (distance < player.size / 2 + 10) {
+ // Player ate food
+ food.consumed = true;
+ player.grow(3);
+ food.destroy();
+ foodParticles.splice(i, 1);
+ LK.getSound('eat').play();
+ }
+ }
+ // Check collisions with enemy cells
+ for (var i = enemyCells.length - 1; i >= 0; i--) {
+ var enemy = enemyCells[i];
+ if (enemy.consumed) continue;
+ var dx = player.x - enemy.x;
+ var dy = player.y - enemy.y;
+ var distance = Math.sqrt(dx * dx + dy * dy);
+ var collisionDistance = player.size / 2 + enemy.size / 2 - 10;
+ if (distance < collisionDistance) {
+ if (player.size > enemy.size + 20) {
+ // Player eats enemy
+ enemy.consumed = true;
+ player.grow(15);
+ enemy.destroy();
+ enemyCells.splice(i, 1);
+ LK.getSound('absorbed').play();
+ } else if (enemy.size > player.size + 20) {
+ // Enemy eats player - game over
+ LK.effects.flashScreen(0xff0000, 1000);
+ LK.showGameOver();
+ return;
+ }
+ }
+ }
+ // Spawn new food particles
+ if (foodParticles.length < maxFoodParticles && LK.ticks % 60 === 0) {
+ createFoodParticle();
+ }
+ // Spawn new enemy cells occasionally
+ if (enemyCells.length < maxEnemyCells && LK.ticks % 300 === 0) {
+ createEnemyCell();
+ }
+};
\ No newline at end of file
Sınırlı yaratık. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Kapı ekle
Şimşek. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Alev. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Gulen bir kedi. In-Game asset. 2d. High contrast. No shadows
Balık. In-Game asset. 2d. High contrast. No shadows
Tavuk eti. In-Game asset. 2d. High contrast. No shadows
Pençe silah. In-Game asset. 2d. High contrast. No shadows