Code edit (2 edits merged)
Please save this source code
User prompt
when the asteroid class hits player game over
User prompt
when the new bullet class hits player game over
Code edit (3 edits merged)
Please save this source code
User prompt
make new bullet class destroy when they get out of screen
User prompt
make bullet class destroy when they get out of screen
User prompt
make asteroid class destroy when the bullet class hit them
User prompt
spawn these asteroid along with enemy class randomly
User prompt
spawn these asteroids on the screen
User prompt
create another class named asteroid
User prompt
destory enemy class when they get out of player screen
User prompt
destory enemy class when they get out of player screen
User prompt
destroy new bullet class when enemy class destroyed
Code edit (2 edits merged)
Please save this source code
User prompt
optimize the code
Code edit (1 edits merged)
Please save this source code
User prompt
increase the score 100 points when enemy class destroys and update the scoreboard on the screen
User prompt
update score in 100 points when enemy dies
User prompt
create a scoreboard and increase score when enemy dies
Code edit (1 edits merged)
Please save this source code
User prompt
new bullet class does not affect the enemy
User prompt
make the enemy shoot new bullet class towards the player when appearing on the screen
User prompt
make the enemy shoot new bullet class towards the player
User prompt
make the enemy shoot new bullet class
User prompt
create a new bullet class and assign it to enemy
/**** * Classes ****/ // Bullet class var Bullet = Container.expand(function () { var self = Container.call(this); // Attach bullet asset var bulletGraphics = self.attachAsset('bullet', { anchorX: 0.5, anchorY: 0.5 }); // Set bullet speed self.speed = -5; // Update function called every game tick self.update = function () { self.y += self.speed; // Check for collision with enemy var enemies = game.children.filter(function (child) { return child instanceof Enemy; }); for (var i = 0; i < enemies.length; i++) { var enemy = enemies[i]; if (self.intersects(enemy)) { // Destroy enemy and bullet on collision enemy.destroy(); self.destroy(); // Add a blasting effect var blast = self.attachAsset('blast', { anchorX: 0.5, anchorY: 0.5 }); blast.x = self.x; blast.y = self.y; game.addChild(blast); // Destroy the blast effect after a short delay LK.setTimeout(function () { blast.destroy(); }, 500); break; } } }; }); // Enemy class var Enemy = Container.expand(function () { var self = Container.call(this); // Attach enemy asset var enemyGraphics = self.attachAsset('enemy', { anchorX: 0.5, anchorY: 0.5 }); // Set enemy speed self.speed = 5; // Update function called every game tick self.update = function () { // Move enemy based on speed self.y += self.speed; // Enemy fires a bullet every 60 ticks if (LK.ticks % 60 == 0) { var enemyBullet = game.addChild(new EnemyBullet()); // Set bullet initial position to enemy's position enemyBullet.x = self.x; enemyBullet.y = self.y; // Set bullet speed to move downwards enemyBullet.speed = 5; } }; }); // EnemyBullet class var EnemyBullet = Container.expand(function () { var self = Container.call(this); // Attach bullet asset var bulletGraphics = self.attachAsset('bullet', { anchorX: 0.5, anchorY: 0.5 }); // Set bullet speed self.speed = 5; // Update function called every game tick self.update = function () { self.y += self.speed; }; }); // Player class var Player = Container.expand(function () { var self = Container.call(this); // Attach player asset var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); // Set player speed self.speed = 5; // Update function called every game tick self.update = function () { // Player movement is handled in game.move event }; }); /**** * Initialize Game ****/ //<Assets used in the game will automatically appear here> //<Write imports for supported plugins here> var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ game.update = function () { // Spawn an enemy every 60 ticks if (LK.ticks % 60 == 0) { var enemy = game.addChild(new Enemy()); // Set enemy initial position enemy.x = Math.random() * 2048; enemy.y = 0; } }; var player = game.addChild(new Player()); // Set player initial position player.x = 1024; player.y = 2732 - player.height / 2 - 100; // Add mouse move event to the game game.move = function (x, y, obj) { // Move player only on x axis player.x = x; }; game.down = function (x, y, obj) { // Create a bullet instance var bullet = game.addChild(new Bullet()); // Set bullet initial position to player's position bullet.x = player.x; bullet.y = player.y; };
===================================================================
--- original.js
+++ change.js
@@ -56,9 +56,9 @@
// Move enemy based on speed
self.y += self.speed;
// Enemy fires a bullet every 60 ticks
if (LK.ticks % 60 == 0) {
- var enemyBullet = game.addChild(new Bullet());
+ var enemyBullet = game.addChild(new EnemyBullet());
// Set bullet initial position to enemy's position
enemyBullet.x = self.x;
enemyBullet.y = self.y;
// Set bullet speed to move downwards
Space craft in facing forward. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
spacecraft in 4k
fire blast. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
asteroid. Single Game Texture. In-Game asset. 2d. No shadows
dark nebula galaxy 4k. Single Game Texture. In-Game asset. 2d. Blank background. No shadows