User prompt
Increase the size of the enemies a bit
User prompt
Make the player a bit bigger
User prompt
Add a score
User prompt
Spawn new enemies every 8 seconds randomly on the map
User prompt
Make the player faster every 5 seconds as well
User prompt
Increase the speed of the enemies every 5 seconds
User prompt
Add touch function to move the player around
User prompt
Make the player move, using Touch
User prompt
Add touch control
Initial prompt
Manhunt
var Hero = Container.expand(function () {
var self = Container.call(this);
var heroGraphics = self.createAsset('hero', 'Hero character', .5, .5);
self.speed = 5;
self.move = function (x, y) {
self.x += x * self.speed;
self.y += y * self.speed;
};
});
var Enemy = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.createAsset('enemy', 'Enemy character', .5, .5);
self.speed = 3;
self.chase = function (hero) {
var dx = hero.x - self.x;
var dy = hero.y - self.y;
var distance = Math.sqrt(dx * dx + dy * dy);
self.x += dx / distance * self.speed;
self.y += dy / distance * self.speed;
};
});
var Game = Container.expand(function () {
var self = Container.call(this);
var hero = self.addChild(new Hero());
var enemies = [];
var isGameOver = false;
hero.x = 2048 / 2;
hero.y = 2732 / 2;
for (var i = 0; i < 5; i++) {
var enemy = self.addChild(new Enemy());
enemy.x = Math.random() * 2048;
enemy.y = Math.random() * 2732;
enemies.push(enemy);
}
stage.on('down', function (obj) {
var pos = obj.event.getLocalPosition(self);
var dx = pos.x - hero.x;
var dy = pos.y - hero.y;
var distance = Math.sqrt(dx * dx + dy * dy);
hero.move(dx / distance, dy / distance);
});
LK.on('tick', function () {
for (var i = 0; i < enemies.length; i++) {
enemies[i].chase(hero);
if (enemies[i].intersects(hero)) {
isGameOver = true;
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
}
}
});
});