/**** 
* Plugins
****/ 
var tween = LK.import("@upit/tween.v1");
/**** 
* Classes
****/ 
var Alien = Container.expand(function () {
	var self = Container.call(this);
	var alienGraphics = self.attachAsset('alien', {
		anchorX: 0.5,
		anchorY: 0.5
	});
	// Movement properties
	self.velocityX = (Math.random() - 0.5) * 4;
	self.velocityY = 0;
	self.gravity = 0.3;
	self.jumpCooldown = 0;
	self.isDragging = false;
	self.groundY = 2500;
	// Walking animation
	self.walkTimer = 0;
	self.originalScaleX = 1;
	self.update = function () {
		if (self.isDragging) return;
		// Apply gravity
		self.velocityY += self.gravity;
		// Update position
		self.x += self.velocityX;
		self.y += self.velocityY;
		// Ground collision
		if (self.y > self.groundY) {
			self.y = self.groundY;
			self.velocityY = 0;
			// Random jump
			if (self.jumpCooldown <= 0 && Math.random() < 0.02) {
				self.velocityY = -8 - Math.random() * 4;
				self.jumpCooldown = 60;
			}
		}
		if (self.jumpCooldown > 0) {
			self.jumpCooldown--;
		}
		// Bounce off screen edges
		if (self.x < 60) {
			self.x = 60;
			self.velocityX = Math.abs(self.velocityX);
		}
		if (self.x > 1988) {
			self.x = 1988;
			self.velocityX = -Math.abs(self.velocityX);
		}
		// Walking animation
		self.walkTimer += 0.2;
		alienGraphics.scaleX = self.originalScaleX + Math.sin(self.walkTimer) * 0.1;
		alienGraphics.scaleY = 1 + Math.cos(self.walkTimer * 1.5) * 0.05;
		// Change direction occasionally
		if (Math.random() < 0.005) {
			self.velocityX = (Math.random() - 0.5) * 4;
		}
	};
	return self;
});
var Basket = Container.expand(function () {
	var self = Container.call(this);
	var basketGraphics = self.attachAsset('basket', {
		anchorX: 0.5,
		anchorY: 1.0
	});
	var rimGraphics = self.attachAsset('basketRim', {
		anchorX: 0.5,
		anchorY: 0.5
	});
	rimGraphics.y = -basketGraphics.height + 15;
	return self;
});
/**** 
* Initialize Game
****/ 
var game = new LK.Game({
	backgroundColor: 0x87ceeb
});
/**** 
* Game Code
****/ 
// Game variables
var aliens = [];
var draggedAlien = null;
var basket;
var scoreTxt;
var spawnTimer = 0;
var maxAliens = 3;
var aliensOnScreen = 0;
// Create basket
basket = game.addChild(new Basket());
basket.x = 1024;
basket.y = 2600;
// Create score display
scoreTxt = new Text2('Score: 0', {
	size: 80,
	fill: 0xFFFFFF
});
scoreTxt.anchor.set(0.5, 0);
LK.gui.top.addChild(scoreTxt);
scoreTxt.y = 150;
// Function to spawn new alien
function spawnAlien() {
	if (aliensOnScreen >= maxAliens) return;
	var alien = new Alien();
	alien.x = 200 + Math.random() * 1600;
	alien.y = 1000 + Math.random() * 800;
	alien.groundY = 2000 + Math.random() * 500;
	aliens.push(alien);
	game.addChild(alien);
	aliensOnScreen++;
	LK.getSound('spawn').play();
}
// Initial aliens
spawnAlien();
spawnAlien();
// Touch handlers
game.down = function (x, y, obj) {
	// Check if touching an alien
	for (var i = 0; i < aliens.length; i++) {
		var alien = aliens[i];
		var bounds = alien.getBounds();
		if (x >= bounds.x && x <= bounds.x + bounds.width && y >= bounds.y && y <= bounds.y + bounds.height) {
			draggedAlien = alien;
			alien.isDragging = true;
			break;
		}
	}
};
game.move = function (x, y, obj) {
	if (draggedAlien) {
		draggedAlien.x = x;
		draggedAlien.y = y;
	}
};
game.up = function (x, y, obj) {
	if (draggedAlien) {
		// Check if alien is dropped in basket
		var basketBounds = basket.getBounds();
		if (draggedAlien.x >= basketBounds.x && draggedAlien.x <= basketBounds.x + basketBounds.width && draggedAlien.y >= basketBounds.y && draggedAlien.y <= basketBounds.y + basketBounds.height) {
			// Alien collected!
			LK.setScore(LK.getScore() + 10);
			scoreTxt.setText('Score: ' + LK.getScore());
			// Flash effect
			LK.effects.flashObject(draggedAlien, 0xffff00, 300);
			// Remove alien
			var alienIndex = aliens.indexOf(draggedAlien);
			if (alienIndex > -1) {
				aliens.splice(alienIndex, 1);
			}
			draggedAlien.destroy();
			aliensOnScreen--;
			LK.getSound('collect').play();
		} else {
			// Alien not in basket, resume normal movement
			draggedAlien.isDragging = false;
		}
		draggedAlien = null;
	}
};
// Main game loop
game.update = function () {
	// Spawn new aliens periodically
	spawnTimer++;
	if (spawnTimer >= 180) {
		// Every 3 seconds
		spawnAlien();
		spawnTimer = 0;
		// Increase difficulty over time
		if (LK.getScore() > 0 && LK.getScore() % 100 === 0) {
			maxAliens = Math.min(maxAliens + 1, 8);
		}
	}
	// Check for game over condition
	if (aliensOnScreen >= 15) {
		LK.showGameOver();
	}
	// Update aliens
	for (var i = 0; i < aliens.length; i++) {
		aliens[i].update();
	}
}; ===================================================================
--- original.js
+++ change.js
@@ -1,6 +1,189 @@
-/****
+/**** 
+* Plugins
+****/ 
+var tween = LK.import("@upit/tween.v1");
+
+/**** 
+* Classes
+****/ 
+var Alien = Container.expand(function () {
+	var self = Container.call(this);
+	var alienGraphics = self.attachAsset('alien', {
+		anchorX: 0.5,
+		anchorY: 0.5
+	});
+	// Movement properties
+	self.velocityX = (Math.random() - 0.5) * 4;
+	self.velocityY = 0;
+	self.gravity = 0.3;
+	self.jumpCooldown = 0;
+	self.isDragging = false;
+	self.groundY = 2500;
+	// Walking animation
+	self.walkTimer = 0;
+	self.originalScaleX = 1;
+	self.update = function () {
+		if (self.isDragging) return;
+		// Apply gravity
+		self.velocityY += self.gravity;
+		// Update position
+		self.x += self.velocityX;
+		self.y += self.velocityY;
+		// Ground collision
+		if (self.y > self.groundY) {
+			self.y = self.groundY;
+			self.velocityY = 0;
+			// Random jump
+			if (self.jumpCooldown <= 0 && Math.random() < 0.02) {
+				self.velocityY = -8 - Math.random() * 4;
+				self.jumpCooldown = 60;
+			}
+		}
+		if (self.jumpCooldown > 0) {
+			self.jumpCooldown--;
+		}
+		// Bounce off screen edges
+		if (self.x < 60) {
+			self.x = 60;
+			self.velocityX = Math.abs(self.velocityX);
+		}
+		if (self.x > 1988) {
+			self.x = 1988;
+			self.velocityX = -Math.abs(self.velocityX);
+		}
+		// Walking animation
+		self.walkTimer += 0.2;
+		alienGraphics.scaleX = self.originalScaleX + Math.sin(self.walkTimer) * 0.1;
+		alienGraphics.scaleY = 1 + Math.cos(self.walkTimer * 1.5) * 0.05;
+		// Change direction occasionally
+		if (Math.random() < 0.005) {
+			self.velocityX = (Math.random() - 0.5) * 4;
+		}
+	};
+	return self;
+});
+var Basket = Container.expand(function () {
+	var self = Container.call(this);
+	var basketGraphics = self.attachAsset('basket', {
+		anchorX: 0.5,
+		anchorY: 1.0
+	});
+	var rimGraphics = self.attachAsset('basketRim', {
+		anchorX: 0.5,
+		anchorY: 0.5
+	});
+	rimGraphics.y = -basketGraphics.height + 15;
+	return self;
+});
+
+/**** 
 * Initialize Game
-****/
+****/ 
 var game = new LK.Game({
-	backgroundColor: 0x000000
-});
\ No newline at end of file
+	backgroundColor: 0x87ceeb
+});
+
+/**** 
+* Game Code
+****/ 
+// Game variables
+var aliens = [];
+var draggedAlien = null;
+var basket;
+var scoreTxt;
+var spawnTimer = 0;
+var maxAliens = 3;
+var aliensOnScreen = 0;
+// Create basket
+basket = game.addChild(new Basket());
+basket.x = 1024;
+basket.y = 2600;
+// Create score display
+scoreTxt = new Text2('Score: 0', {
+	size: 80,
+	fill: 0xFFFFFF
+});
+scoreTxt.anchor.set(0.5, 0);
+LK.gui.top.addChild(scoreTxt);
+scoreTxt.y = 150;
+// Function to spawn new alien
+function spawnAlien() {
+	if (aliensOnScreen >= maxAliens) return;
+	var alien = new Alien();
+	alien.x = 200 + Math.random() * 1600;
+	alien.y = 1000 + Math.random() * 800;
+	alien.groundY = 2000 + Math.random() * 500;
+	aliens.push(alien);
+	game.addChild(alien);
+	aliensOnScreen++;
+	LK.getSound('spawn').play();
+}
+// Initial aliens
+spawnAlien();
+spawnAlien();
+// Touch handlers
+game.down = function (x, y, obj) {
+	// Check if touching an alien
+	for (var i = 0; i < aliens.length; i++) {
+		var alien = aliens[i];
+		var bounds = alien.getBounds();
+		if (x >= bounds.x && x <= bounds.x + bounds.width && y >= bounds.y && y <= bounds.y + bounds.height) {
+			draggedAlien = alien;
+			alien.isDragging = true;
+			break;
+		}
+	}
+};
+game.move = function (x, y, obj) {
+	if (draggedAlien) {
+		draggedAlien.x = x;
+		draggedAlien.y = y;
+	}
+};
+game.up = function (x, y, obj) {
+	if (draggedAlien) {
+		// Check if alien is dropped in basket
+		var basketBounds = basket.getBounds();
+		if (draggedAlien.x >= basketBounds.x && draggedAlien.x <= basketBounds.x + basketBounds.width && draggedAlien.y >= basketBounds.y && draggedAlien.y <= basketBounds.y + basketBounds.height) {
+			// Alien collected!
+			LK.setScore(LK.getScore() + 10);
+			scoreTxt.setText('Score: ' + LK.getScore());
+			// Flash effect
+			LK.effects.flashObject(draggedAlien, 0xffff00, 300);
+			// Remove alien
+			var alienIndex = aliens.indexOf(draggedAlien);
+			if (alienIndex > -1) {
+				aliens.splice(alienIndex, 1);
+			}
+			draggedAlien.destroy();
+			aliensOnScreen--;
+			LK.getSound('collect').play();
+		} else {
+			// Alien not in basket, resume normal movement
+			draggedAlien.isDragging = false;
+		}
+		draggedAlien = null;
+	}
+};
+// Main game loop
+game.update = function () {
+	// Spawn new aliens periodically
+	spawnTimer++;
+	if (spawnTimer >= 180) {
+		// Every 3 seconds
+		spawnAlien();
+		spawnTimer = 0;
+		// Increase difficulty over time
+		if (LK.getScore() > 0 && LK.getScore() % 100 === 0) {
+			maxAliens = Math.min(maxAliens + 1, 8);
+		}
+	}
+	// Check for game over condition
+	if (aliensOnScreen >= 15) {
+		LK.showGameOver();
+	}
+	// Update aliens
+	for (var i = 0; i < aliens.length; i++) {
+		aliens[i].update();
+	}
+};
\ No newline at end of file