/**** * Classes ****/ //<Assets used in the game will automatically appear here> //<Write imports for supported plugins here> // Kite class representing each kite in the game var Kite = Container.expand(function () { var self = Container.call(this); var kiteGraphics = self.attachAsset('kite', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 3; self.direction = Math.random() * Math.PI * 2; // Random initial direction // Update function to move the kite self.update = function () { self.x += Math.cos(self.direction) * self.speed; self.y += Math.sin(self.direction) * self.speed; // Keep kites within bounds if (self.x < 0 || self.x > 2048 || self.y < 0 || self.y > 2732) { self.direction += Math.PI; // Reverse direction } }; // Function to change direction when cutting another kite self.changeDirection = function () { self.direction += Math.PI / 2; // Change direction by 90 degrees }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB // Init game with sky blue background }); /**** * Game Code ****/ // Initialize kites array var kites = []; // Create and add kites to the game for (var i = 0; i < 5; i++) { var kite = new Kite(); kite.x = Math.random() * 2048; kite.y = Math.random() * 2732; kites.push(kite); game.addChild(kite); } // Function to handle kite interactions function handleKiteInteractions() { for (var i = 0; i < kites.length; i++) { for (var j = i + 1; j < kites.length; j++) { if (kites[i].intersects(kites[j])) { kites[i].changeDirection(); kites[j].changeDirection(); } } } } // Game update function game.update = function () { for (var i = 0; i < kites.length; i++) { kites[i].update(); } handleKiteInteractions(); }; // Event listener for dragging kites var dragKite = null; game.down = function (x, y, obj) { for (var i = 0; i < kites.length; i++) { if (kites[i].intersects({ x: x, y: y, width: 1, height: 1 })) { dragKite = kites[i]; break; } } }; game.move = function (x, y, obj) { if (dragKite) { dragKite.x = x; dragKite.y = y; } }; game.up = function (x, y, obj) { dragKite = null; };
===================================================================
--- original.js
+++ change.js
@@ -1,89 +1,91 @@
-/****
+/****
* Classes
-****/
+****/
//<Assets used in the game will automatically appear here>
//<Write imports for supported plugins here>
// Kite class representing each kite in the game
var Kite = Container.expand(function () {
- var self = Container.call(this);
- var kiteGraphics = self.attachAsset('kite', {
- anchorX: 0.5,
- anchorY: 0.5
- });
- self.speed = 3;
- self.direction = Math.random() * Math.PI * 2; // Random initial direction
- // Update function to move the kite
- self.update = function () {
- self.x += Math.cos(self.direction) * self.speed;
- self.y += Math.sin(self.direction) * self.speed;
- // Keep kites within bounds
- if (self.x < 0 || self.x > 2048 || self.y < 0 || self.y > 2732) {
- self.direction += Math.PI; // Reverse direction
- }
- };
- // Function to change direction when cutting another kite
- self.changeDirection = function () {
- self.direction += Math.PI / 2; // Change direction by 90 degrees
- };
+ var self = Container.call(this);
+ var kiteGraphics = self.attachAsset('kite', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.speed = 3;
+ self.direction = Math.random() * Math.PI * 2; // Random initial direction
+ // Update function to move the kite
+ self.update = function () {
+ self.x += Math.cos(self.direction) * self.speed;
+ self.y += Math.sin(self.direction) * self.speed;
+ // Keep kites within bounds
+ if (self.x < 0 || self.x > 2048 || self.y < 0 || self.y > 2732) {
+ self.direction += Math.PI; // Reverse direction
+ }
+ };
+ // Function to change direction when cutting another kite
+ self.changeDirection = function () {
+ self.direction += Math.PI / 2; // Change direction by 90 degrees
+ };
});
-/****
+/****
* Initialize Game
-****/
+****/
var game = new LK.Game({
- backgroundColor: 0x87CEEB // Init game with sky blue background
+ backgroundColor: 0x87CEEB // Init game with sky blue background
});
-/****
+/****
* Game Code
-****/
+****/
// Initialize kites array
var kites = [];
// Create and add kites to the game
for (var i = 0; i < 5; i++) {
- var kite = new Kite();
- kite.x = Math.random() * 2048;
- kite.y = Math.random() * 2732;
- kites.push(kite);
- game.addChild(kite);
+ var kite = new Kite();
+ kite.x = Math.random() * 2048;
+ kite.y = Math.random() * 2732;
+ kites.push(kite);
+ game.addChild(kite);
}
// Function to handle kite interactions
function handleKiteInteractions() {
- for (var i = 0; i < kites.length; i++) {
- for (var j = i + 1; j < kites.length; j++) {
- if (kites[i].intersects(kites[j])) {
- kites[i].changeDirection();
- kites[j].changeDirection();
- }
- }
- }
+ for (var i = 0; i < kites.length; i++) {
+ for (var j = i + 1; j < kites.length; j++) {
+ if (kites[i].intersects(kites[j])) {
+ kites[i].changeDirection();
+ kites[j].changeDirection();
+ }
+ }
+ }
}
// Game update function
game.update = function () {
- for (var i = 0; i < kites.length; i++) {
- kites[i].update();
- }
- handleKiteInteractions();
+ for (var i = 0; i < kites.length; i++) {
+ kites[i].update();
+ }
+ handleKiteInteractions();
};
// Event listener for dragging kites
var dragKite = null;
game.down = function (x, y, obj) {
- for (var i = 0; i < kites.length; i++) {
- if (kites[i].containsPoint({
- x: x,
- y: y
- })) {
- dragKite = kites[i];
- break;
- }
- }
+ for (var i = 0; i < kites.length; i++) {
+ if (kites[i].intersects({
+ x: x,
+ y: y,
+ width: 1,
+ height: 1
+ })) {
+ dragKite = kites[i];
+ break;
+ }
+ }
};
game.move = function (x, y, obj) {
- if (dragKite) {
- dragKite.x = x;
- dragKite.y = y;
- }
+ if (dragKite) {
+ dragKite.x = x;
+ dragKite.y = y;
+ }
};
game.up = function (x, y, obj) {
- dragKite = null;
+ dragKite = null;
};
\ No newline at end of file