/****
* Classes
****/
// No need for a tick function as movement and actions are based on touch events;
var Block = Container.expand(function () {
var self = Container.call(this);
var blockGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
// Check for collisions with other blocks
self.checkCollision = function (blocks) {
for (var i = 0; i < blocks.length; i++) {
if (self.intersects(blocks[i])) {
return true;
}
}
return false;
};
});
// Ground class for the ground blocks
var Ground = Container.expand(function () {
var self = Container.call(this);
var groundGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
});
// Assets are automatically managed by the LK engine based on usage in the code.
var UIButton = Container.expand(function () {
var self = Container.call(this);
var buttonGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Light blue background to represent the sky
});
/****
* Game Code
****/
// Initialize the ground blocks
for (var i = 0; i < 2048; i += 100) {
var ground = new Ground();
ground.x = i;
ground.y = 2732 - 50; // Place the ground blocks at the bottom of the screen
game.addChild(ground);
}
// Add a click event to the game to place a block at the clicked position
game.on('down', function (obj) {
var pos = obj.event.getLocalPosition(game);
var block = new Block();
block.x = pos.x;
block.y = pos.y;
// Get all the blocks in the game
var blocks = game.children.filter(function (child) {
return child instanceof Block;
});
// Add the block to the game
game.addChild(block);
// Check for collisions excluding the block itself
if (block.checkCollision(blocks.filter(function (b) {
return b !== block;
}))) {
// If there is a collision, remove the block from the game
game.removeChild(block);
}
});
// No need for a tick function as movement and actions are based on touch events /****
* Classes
****/
// No need for a tick function as movement and actions are based on touch events;
var Block = Container.expand(function () {
var self = Container.call(this);
var blockGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
// Check for collisions with other blocks
self.checkCollision = function (blocks) {
for (var i = 0; i < blocks.length; i++) {
if (self.intersects(blocks[i])) {
return true;
}
}
return false;
};
});
// Ground class for the ground blocks
var Ground = Container.expand(function () {
var self = Container.call(this);
var groundGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
});
// Assets are automatically managed by the LK engine based on usage in the code.
var UIButton = Container.expand(function () {
var self = Container.call(this);
var buttonGraphics = self.attachAsset('block', {
anchorX: 0.5,
anchorY: 0.5
});
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEEB // Light blue background to represent the sky
});
/****
* Game Code
****/
// Initialize the ground blocks
for (var i = 0; i < 2048; i += 100) {
var ground = new Ground();
ground.x = i;
ground.y = 2732 - 50; // Place the ground blocks at the bottom of the screen
game.addChild(ground);
}
// Add a click event to the game to place a block at the clicked position
game.on('down', function (obj) {
var pos = obj.event.getLocalPosition(game);
var block = new Block();
block.x = pos.x;
block.y = pos.y;
// Get all the blocks in the game
var blocks = game.children.filter(function (child) {
return child instanceof Block;
});
// Add the block to the game
game.addChild(block);
// Check for collisions excluding the block itself
if (block.checkCollision(blocks.filter(function (b) {
return b !== block;
}))) {
// If there is a collision, remove the block from the game
game.removeChild(block);
}
});
// No need for a tick function as movement and actions are based on touch events