var Blob = Container.expand(function () {
var self = Container.call(this);
var blobGraphics = self.createAsset('blob', 'Player Blob', .5, .5);
self.speed = 5;
self.move = function () {};
self.expand = function () {};
});
var Foe = Container.expand(function () {
var self = Container.call(this);
var foeGraphics = self.createAsset('foe', 'Enemy Blob', .5, .5);
self.speed = 3;
self.move = function () {};
});
var Game = Container.expand(function () {
var self = Container.call(this);
var blobs = [];
var foes = [];
var isGameOver = false;
var dragNode = null;
var playerBlob = self.addChild(new Blob());
playerBlob.x = 2048 / 2;
playerBlob.y = 2732 / 2;
blobs.push(playerBlob);
for (var i = 0; i < 10; i++) {
var foe = self.addChild(new Foe());
foe.x = Math.random() * 2048;
foe.y = Math.random() * 2732;
foes.push(foe);
}
playerBlob.on('down', function (obj) {
dragNode = playerBlob;
});
stage.on('move', function (obj) {
var event = obj.event;
var pos = event.getLocalPosition(self);
if (dragNode) {
dragNode.x = pos.x;
dragNode.y = pos.y;
}
});
stage.on('up', function (obj) {
dragNode = null;
});
LK.on('tick', function () {
for (var i = 0; i < blobs.length; i++) {
blobs[i].move();
}
for (var i = 0; i < foes.length; i++) {
foes[i].move();
}
for (var i = 0; i < blobs.length; i++) {
for (var j = 0; j < foes.length; j++) {
if (blobs[i].intersects(foes[j])) {
blobs[i].expand();
foes[j].destroy();
foes.splice(j, 1);
}
}
}
if (blobs.length == 0) {
isGameOver = true;
}
if (isGameOver) {
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
}
});
});
var Blob = Container.expand(function () {
var self = Container.call(this);
var blobGraphics = self.createAsset('blob', 'Player Blob', .5, .5);
self.speed = 5;
self.move = function () {};
self.expand = function () {};
});
var Foe = Container.expand(function () {
var self = Container.call(this);
var foeGraphics = self.createAsset('foe', 'Enemy Blob', .5, .5);
self.speed = 3;
self.move = function () {};
});
var Game = Container.expand(function () {
var self = Container.call(this);
var blobs = [];
var foes = [];
var isGameOver = false;
var dragNode = null;
var playerBlob = self.addChild(new Blob());
playerBlob.x = 2048 / 2;
playerBlob.y = 2732 / 2;
blobs.push(playerBlob);
for (var i = 0; i < 10; i++) {
var foe = self.addChild(new Foe());
foe.x = Math.random() * 2048;
foe.y = Math.random() * 2732;
foes.push(foe);
}
playerBlob.on('down', function (obj) {
dragNode = playerBlob;
});
stage.on('move', function (obj) {
var event = obj.event;
var pos = event.getLocalPosition(self);
if (dragNode) {
dragNode.x = pos.x;
dragNode.y = pos.y;
}
});
stage.on('up', function (obj) {
dragNode = null;
});
LK.on('tick', function () {
for (var i = 0; i < blobs.length; i++) {
blobs[i].move();
}
for (var i = 0; i < foes.length; i++) {
foes[i].move();
}
for (var i = 0; i < blobs.length; i++) {
for (var j = 0; j < foes.length; j++) {
if (blobs[i].intersects(foes[j])) {
blobs[i].expand();
foes[j].destroy();
foes.splice(j, 1);
}
}
}
if (blobs.length == 0) {
isGameOver = true;
}
if (isGameOver) {
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
}
});
});