/****
* Classes
****/
// Car class
var Car = Container.expand(function () {
  var self = Container.call(this);
  var carGraphics = self.attachAsset('car', {
    anchorX: 0.5,
    anchorY: 0.5
  });
  self.speed = 0;
  self.direction = 0; // 0: up, 1: right, 2: down, 3: left
  self.update = function () {
    if (self.direction === 0) self.y -= self.speed;
    if (self.direction === 1) self.x += self.speed;
    if (self.direction === 2) self.y += self.speed;
    if (self.direction === 3) self.x -= self.speed;
  };
  self.setDirection = function (dir) {
    self.direction = dir;
  };
  self.setSpeed = function (spd) {
    self.speed = spd;
  };
});
// ParkingSpot class
var ParkingSpot = Container.expand(function () {
  var self = Container.call(this);
  var spotGraphics = self.attachAsset('parkingSpot', {
    anchorX: 0.5,
    anchorY: 0.5
  });
});
/****
* Initialize Game
****/
var game = new LK.Game({
  backgroundColor: 0x000000 // Init game with black background
});
/****
* Game Code
****/
// Initialize game elements
// Assets will be automatically created and loaded by the LK engine based on their usage in the code.
// For this game, we will use the following assets:
// - Car: A box shape representing the player's car.
// - ParkingSpot: A box shape representing the parking spot.
// - Track: A box shape representing the track boundaries.
var car = new Car();
car.x = 1024; // Center horizontally
car.y = 2000; // Start near the bottom
var parkingSpot = new ParkingSpot();
parkingSpot.x = 1024; // Center horizontally
parkingSpot.y = 500; // Position near the top
game.addChild(car);
game.addChild(parkingSpot);
// Handle touch events for car movement
game.down = function (x, y, obj) {
  if (x < 1024) {
    car.setDirection(3); // Move left
  } else {
    car.setDirection(1); // Move right
  }
  car.setSpeed(5);
};
game.up = function (x, y, obj) {
  car.setSpeed(0);
};
// Update game logic
game.update = function () {
  car.update();
  // Check if car is parked
  if (car.intersects(parkingSpot)) {
    LK.effects.flashScreen(0x00FF00, 1000); // Flash green to indicate success
    LK.showGameOver(); // End game
  }
}; /****
* Classes
****/
// Car class
var Car = Container.expand(function () {
  var self = Container.call(this);
  var carGraphics = self.attachAsset('car', {
    anchorX: 0.5,
    anchorY: 0.5
  });
  self.speed = 0;
  self.direction = 0; // 0: up, 1: right, 2: down, 3: left
  self.update = function () {
    if (self.direction === 0) self.y -= self.speed;
    if (self.direction === 1) self.x += self.speed;
    if (self.direction === 2) self.y += self.speed;
    if (self.direction === 3) self.x -= self.speed;
  };
  self.setDirection = function (dir) {
    self.direction = dir;
  };
  self.setSpeed = function (spd) {
    self.speed = spd;
  };
});
// ParkingSpot class
var ParkingSpot = Container.expand(function () {
  var self = Container.call(this);
  var spotGraphics = self.attachAsset('parkingSpot', {
    anchorX: 0.5,
    anchorY: 0.5
  });
});
/****
* Initialize Game
****/
var game = new LK.Game({
  backgroundColor: 0x000000 // Init game with black background
});
/****
* Game Code
****/
// Initialize game elements
// Assets will be automatically created and loaded by the LK engine based on their usage in the code.
// For this game, we will use the following assets:
// - Car: A box shape representing the player's car.
// - ParkingSpot: A box shape representing the parking spot.
// - Track: A box shape representing the track boundaries.
var car = new Car();
car.x = 1024; // Center horizontally
car.y = 2000; // Start near the bottom
var parkingSpot = new ParkingSpot();
parkingSpot.x = 1024; // Center horizontally
parkingSpot.y = 500; // Position near the top
game.addChild(car);
game.addChild(parkingSpot);
// Handle touch events for car movement
game.down = function (x, y, obj) {
  if (x < 1024) {
    car.setDirection(3); // Move left
  } else {
    car.setDirection(1); // Move right
  }
  car.setSpeed(5);
};
game.up = function (x, y, obj) {
  car.setSpeed(0);
};
// Update game logic
game.update = function () {
  car.update();
  // Check if car is parked
  if (car.intersects(parkingSpot)) {
    LK.effects.flashScreen(0x00FF00, 1000); // Flash green to indicate success
    LK.showGameOver(); // End game
  }
};