User prompt
сделай так чтобы враг летел также как муха
User prompt
добавь врага, чтобы он выполнял ту же роль что и цели, но только если когда топор коснётся врага, игра закончилась
User prompt
ну ещё
User prompt
ну не настолько а так чтобы смог долететь до уровне счётчика
User prompt
добавь логику, чтобы топор не летел в одну сторону, а имел гравитацию
User prompt
а теперь сделай так, чтобы топор после активации через 3 секунды снова упал вниз, то есть добавить логику чтобы топор не летел в одну сторону, а имел гравитацию
User prompt
Please fix the bug: 'TypeError: setTimeout is not a function' in or related to this line: 'setTimeout(function () {' Line Number: 85
User prompt
Please fix the bug: 'TypeError: setTimeout is not a function' in or related to this line: 'setTimeout(function () {' Line Number: 85
User prompt
а теперь сделай так, чтобы топор после активации через 3 секунды снова упал вниз
User prompt
на активацию это никак не влияет, только после активации
User prompt
а теперь сделай так чтобы топор после активации через 3 секунды снова упала вниз, а если топор упадёт то игра закончится
User prompt
добавь звук топора
User prompt
увеличить скорость топора
User prompt
уволить скорость топора
User prompt
ура, теперь сделай так чтобы топор во время активации ускорился но и имел логику уменьшении скорости
User prompt
ура, теперь сделай так чтобы топор во время активации имел логику ускорятся
User prompt
более менее, теперь ещё на 100
User prompt
более менее, теперь ещё на 200
User prompt
ещё на 100
User prompt
ладно, ещё на 50 раз
User prompt
ещё на 20
User prompt
ёщё на 10
User prompt
ещё на 10
User prompt
ещё на 5 раз
User prompt
ещё вниз
/**** * Classes ****/ var Axe = Container.expand(function () { var self = Container.call(this); var axeGraphics = self.attachAsset('axe', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 40; self.gravity = 0.3; // Adjusted gravity effect self.velocityY = -self.speed; // Initial upward velocity self._move_migrated = function () { self.velocityY += self.gravity; // Apply gravity to velocity self.y += self.velocityY; // Update position with velocity self.rotation += 0.1; }; }); 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.direction = 1; self._move_migrated = function () { // Randomize direction change if (Math.random() < 0.05) { self.direction = Math.random() * 2 * Math.PI; // Random angle } // Update position based on direction self.x += self.speed * Math.cos(self.direction); self.y += self.speed * Math.sin(self.direction); // Keep enemy within bounds if (self.x <= 0 || self.x >= 2048) { self.direction = Math.PI - self.direction; // Reflect horizontally } if (self.y <= 0 || self.y >= 2732) { self.direction = -self.direction; // Reflect vertically } }; }); var Target = Container.expand(function () { var self = Container.call(this); var targetGraphics = self.attachAsset('target', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 5; self.direction = 1; self._move_migrated = function () { self.x += self.speed * self.direction; if (self.x <= 0 || self.x >= 2048) { self.direction *= -1; } }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ var background = game.attachAsset('green_grass_field', {}); background.width = 2048; background.height = 2732; var targets = []; var axes = []; var score = 0; var kills = 0; var targetSpeed = 5; var enemies = []; var scoreTxt = new Text2('0', { size: 150, fill: "#ffffff", font: "Impact", dropShadow: true, dropShadowColor: "#000000" }); scoreTxt.anchor.set(.5, 0); LK.gui.top.addChild(scoreTxt); var spawnTargets = function spawnTargets() { for (var i = 0; i < 3; i++) { var target = game.addChild(new Target()); target.speed = targetSpeed; target.x = Math.random() * 2048; target.y = Math.random() * (2732 - target.height * 2); targets.push(target); } for (var i = 0; i < 1; i++) { var enemy = game.addChild(new Enemy()); enemy.speed = targetSpeed; enemy.x = Math.random() * 2048; enemy.y = Math.random() * (2732 - enemy.height * 2); enemies.push(enemy); } }; LK.on('tick', function () { if (targets.length == 0) { spawnTargets(); } }); var axe; game.on('down', function (x, y, obj) { var pos = game.toLocal(obj.global); axe = game.addChild(new Axe()); LK.getSound('axe').play(); axe.x = pos.x; axe.y = 2732 - axe.height + 295; axes.push(axe); }); LK.on('tick', function () { for (var i = 0; i < targets.length; i++) { targets[i]._move_migrated(); } for (var i = 0; i < axes.length; i++) { axes[i]._move_migrated(); if (axes[i].y < -50) { axes[i].destroy(); axes.splice(i, 1); } if (axes[i].y <= 0) { LK.showGameOver(); } } for (var i = 0; i < enemies.length; i++) { enemies[i]._move_migrated(); for (var j = 0; j < axes.length; j++) { if (axes[j].intersects(enemies[i])) { LK.showGameOver(); return; } } } for (var i = 0; i < axes.length; i++) { for (var j = 0; j < targets.length; j++) { if (axes[i].intersects(targets[j])) { var distance = Math.sqrt(Math.pow(axes[i].x - targets[j].x, 2) + Math.pow(axes[i].y - targets[j].y, 2)); score += Math.max(0, 100 - distance) + 50; scoreTxt.setText(score); axes[i].destroy(); axes.splice(i, 1); targets[j].destroy(); targets.splice(j, 1); kills++; if (kills % 3 == 0) { targetSpeed += 1; } break; } } } });
===================================================================
--- original.js
+++ change.js
@@ -24,12 +24,22 @@
});
self.speed = 5;
self.direction = 1;
self._move_migrated = function () {
- self.x += self.speed * self.direction;
+ // Randomize direction change
+ if (Math.random() < 0.05) {
+ self.direction = Math.random() * 2 * Math.PI; // Random angle
+ }
+ // Update position based on direction
+ self.x += self.speed * Math.cos(self.direction);
+ self.y += self.speed * Math.sin(self.direction);
+ // Keep enemy within bounds
if (self.x <= 0 || self.x >= 2048) {
- self.direction *= -1;
+ self.direction = Math.PI - self.direction; // Reflect horizontally
}
+ if (self.y <= 0 || self.y >= 2732) {
+ self.direction = -self.direction; // Reflect vertically
+ }
};
});
var Target = Container.expand(function () {
var self = Container.call(this);