Code edit (1 edits merged)
Please save this source code
Code edit (3 edits merged)
Please save this source code
User prompt
Please fix the bug: 'Uncaught TypeError: Cannot read properties of undefined (reading 'length')' in or related to this line: 'var itemGraphic = self.attachAsset(id, {' Line Number: 215
Code edit (3 edits merged)
Please save this source code
User prompt
add a class for a shopitem
Code edit (1 edits merged)
Please save this source code
User prompt
add a background graphic object for the shopwindow.
User prompt
make a class for a shopwindow object
Code edit (12 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Cannot read properties of undefined (reading 'move_temp')' in or related to this line: 'ufo.move_temp();' Line Number: 489
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
Code edit (3 edits merged)
Please save this source code
User prompt
Please fix the bug: 'Uncaught TypeError: Cannot read properties of undefined (reading 'STAR')' in or related to this line: 'self.type = enums.STAR;' Line Number: 189
Code edit (3 edits merged)
Please save this source code
User prompt
write a collision detection check between javelin and the starpowerups where it says 'todo:colliion detection here' in the code
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: starpowerups[i].move_not_really_migrated_but_still is not a function' in or related to this line: 't = starpowerups[i].move_not_really_migrated_but_still();' Line Number: 353
Code edit (1 edits merged)
Please save this source code
User prompt
at game start, add 30 starpowerups at random positions, and add them to an array for easy updating.
User prompt
create a starpowerup asset
User prompt
Migrate to the latest version of LK
/**** * Classes ****/ var AsteroidPowerup = Container.expand(function () { var self = Container.call(this); //var starGraphics = self.attachAsset('starpowerup', { var starGraphics = self.attachAsset('asteroidpowerup', { anchorX: 0.5, anchorY: 0.5, rotation: Math.random() * (2 * Math.PI) }); self.type = enums.ROCK; self.x = Math.random() * 2048; self.y = Math.random() * 2732; self.rotSpeed = 0.025 - Math.random() * 0.05; self.speed = Math.random() * 5; self.scaleUp = Math.random() < 0.5 ? true : false; self.scale.x = 0.5 + Math.random() * 0.4; self.scale.y = self.scale.x; self.scaleSpeed = 0; self.reset = function () { self.rotSpeed = 0.025 - Math.random() * 0.05; self.speed = Math.random() * 5; self.scaleUp = Math.random() < 0.5 ? true : false; self.scale.x = 0.5 + Math.random() * 0.4; self.scale.y = self.scale.x; }; }); var Astronaut = Container.expand(function () { var self = Container.call(this); var surfaceGraphics = self.attachAsset('athlete', { anchorX: 0.5, anchorY: 0.5, vely: 0 }); self._move_migrated = function () { self.x += 12; self.rotation += 0.1; }; self.vely = 0; self.x = 1024; self.y = 818; }); // DustParticle class var DustParticle = Container.expand(function () { var self = Container.call(this); // Create a simple square shape for the particle var particleGraphics = self.attachAsset('particle', { anchorX: 0.5, anchorY: 0.5 }); self.width = 25 + Math.random() * 25; self.height = self.width; // Set initial speed and direction self.speedX = Math.random() * 20 - 10; self.speedY = Math.random() * 20 - 10; // Set the particle to move and fade out over time self._update_migrated = function () { self.x += self.speedX; self.y += self.speedY; self.speedX *= 0.95; // Reduce speed for spreading effect self.speedY *= 0.95; // Reduce speed for spreading effect particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance if (particleGraphics.alpha < 0.01) { self.destroy(); } }; }); // GoreParticle class var GoreParticle = Container.expand(function () { var self = Container.call(this); // Create a simple square shape for the particle var particleGraphics = self.attachAsset('particle2', { anchorX: 0.5, anchorY: 0.5 }); self.width = 25 + Math.random() * 25; self.height = self.width; // Set initial speed and direction self.speedX = Math.random() * 20; self.speedY = Math.random() * 20 - 10; // Set the particle to move and fade out over time self._update_migrated = function () { self.x += self.speedX; self.y += self.speedY; self.speedX *= 0.95; // Reduce speed for spreading effect self.speedY *= 0.95; // Reduce speed for spreading effect particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance if (particleGraphics.alpha < 0.01) { self.destroy(); } }; }); // Assets will be automatically generated based on usage in the code. // Javelin class var Javelin = Container.expand(function () { var self = Container.call(this); var javelinGraphics1 = self.attachAsset('javelin', { anchorX: 0.5, anchorY: 0.5, rotation: Math.PI / 4 }); var javelinGraphics2 = self.attachAsset('javelin', { anchorX: 0.5, anchorY: 0.5, rotation: Math.PI / 4, scaleY: -1, scaleX: -1, x: 100 }); self.speedX = 0; self.speedY = 0; self.scale.x = 0.8; self.scale.y = 0.8; self.rotation = -0.30; self.orbitSpeed = 0.045; self.angle = 4.6; self.radius = 570; //670 - 20 * (100 / 20); //console.log('radius ' + self.radius); self._move_migrated = function () { //self.radius = 670 - 20 * (100 / 20); //self.angle = (self.angle || 0) + self.orbitSpeed; self.angle = (self.angle || 0) + speed; self.angle %= Math.PI * 2; self.x = moonSurface.x + self.radius * Math.cos(self.angle); self.y = moonSurface.y + self.radius * Math.sin(self.angle); self.rotation = self.angle + Math.PI / 2 + 0.2; //self.radius -= 0.075; self.radius -= Math.random() * 0.02 + 0.055; if (self.radius < 512) { landed = true; self.rotation += 0.05; createDustExplosion(self.x, self.y, 20); instructionTxt.setText('Nice throw! ' + LK.getScore() + ' meters'); instructionTxt.alpha = 1; } }; self.hitUpdate = function () { self.x += 12; self.rotation += 0.1; }; }); // Moon surface class for visual effect var MoonSurface = Container.expand(function () { var self = Container.call(this); var surfaceGraphics = self.attachAsset('moonSurface', { anchorX: 0.5, anchorY: 0.5 // Anchor at the bottom }); self.x = 1024; // Center horizontally self.y = 2732 / 2; // Position at the center of the screen }); var RockParticle = Container.expand(function () { var self = Container.call(this); // Create a simple square shape for the particle var particleGraphics = self.attachAsset('asteroidpowerup', { anchorX: 0.5, anchorY: 0.5 }); self.width = 25 + Math.random() * 25; self.height = self.width; // Set initial speed and direction self.speedX = Math.random() * 20 - 10; self.speedY = Math.random() * 20 - 10; // Set the particle to move and fade out over time self._update_migrated = function () { self.x += self.speedX; self.y += self.speedY; self.speedX *= 0.95; // Reduce speed for spreading effect self.speedY *= 0.95; // Reduce speed for spreading effect particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance if (particleGraphics.alpha < 0.01) { self.destroy(); } }; }); var StarParticle = Container.expand(function () { var self = Container.call(this); // Create a simple square shape for the particle var particleGraphics = self.attachAsset('starpowerup', { anchorX: 0.5, anchorY: 0.5 }); self.width = 25 + Math.random() * 25; self.height = self.width; // Set initial speed and direction self.speedX = Math.random() * 20 - 10; self.speedY = Math.random() * 20 - 10; // Set the particle to move and fade out over time self._update_migrated = function () { self.x += self.speedX; self.y += self.speedY; self.speedX *= 0.95; // Reduce speed for spreading effect self.speedY *= 0.95; // Reduce speed for spreading effect particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance if (particleGraphics.alpha < 0.01) { self.destroy(); } }; }); var StarPowerup = Container.expand(function () { var self = Container.call(this); var starGraphics = self.attachAsset('starpowerup', { anchorX: 0.5, anchorY: 0.5, rotation: Math.random() * (2 * Math.PI) }); self.type = enums.STAR; self.x = Math.random() * 2048; self.y = Math.random() * 2732; self.rotSpeed = 0.1 - Math.random() * 0.2; self.speed = Math.random() * 5; self.scaleUp = Math.random() < 0.5 ? true : false; self.scale.x = 0.4 + Math.random(); self.scale.y = self.scale.x; self.scaleSpeed = 0.01 + Math.random() * 0.02; self.alpha = 0.5; self.reset = function () { self.rotSpeed = 0.1 - Math.random() * 0.2; self.speed = Math.random() * 5; self.scaleUp = Math.random() < 0.5 ? true : false; self.scale.x = 0.4 + Math.random(); self.scale.y = self.scale.x; self.scaleSpeed = 0.01 + Math.random() * 0.02; }; /* self.move_not_really_migrated_but_still = function () { //self.x += 12; self.rotation += self.rotSpeed; self.x += windSpeedX + self.speed; self.y += windSpeedY + self.speed; };*/ }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 // Init game with black background }); /**** * Game Code ****/ // Initialize enums at the top of the Classes section to ensure it's defined before use // Function to create a dust particle explosion var enums = { STAR: 1, ROCK: 2 }; function createDustExplosion(x, y, count) { for (var i = 0; i < count; i++) { var particle = new DustParticle(); particle.x = x; particle.y = y; game.addChild(particle); particles.push(particle); } } function createImpactExplosion(x, y, count) { for (var i = 0; i < count; i++) { var particle = new GoreParticle(); particle.x = x; particle.y = y; game.addChild(particle); particles.push(particle); } } function createStarExplosion(x, y, count) { for (var i = 0; i < count; i++) { var particle = new StarParticle(); particle.x = x; particle.y = y; game.addChild(particle); particles.push(particle); } } function createRockExplosion(x, y, count) { for (var i = 0; i < count; i++) { var particle = new RockParticle(); particle.x = x; particle.y = y; game.addChild(particle); particles.push(particle); } } // Initialize important variables and arrays var javelins = []; var starpowerups = []; var background = game.attachAsset('background', { anchorX: 0.5, anchorY: 0.5, x: 974, y: 1366, alpha: 0.5 }); var moonSurface = game.addChild(new MoonSurface()); // Add the astronaut to the scene var astronaut = game.addChild(new Astronaut()); // Add the game logo to the scene var gameLogo = game.attachAsset('gameLogo', { anchorX: 0.5, anchorY: 0.5, /*x: 1024, y: 1366*/ x: 2048 - 250, y: 250, scaleX: 0.7, scaleY: 0.7 }); //TODO: Try other positions of the logo. game.addChild(gameLogo); /*var astronaut = game.attachAsset('athlete', { anchorX: 0.5, anchorY: 0.5, x: 1024, y: 818, vely: 0 }); astronaut.move = function () { self.x += speed; self.rotation += 0.1; };*/ var javelin = game.addChild(new Javelin()); javelin.x = astronaut.x - 70; javelin.y = astronaut.y; var started = false; var thrown = false; var particles = []; for (var i = 0; i < 30; i++) { var starPowerup = new StarPowerup(); starpowerups.push(starPowerup); game.addChild(starPowerup); } for (var j = 0; j < 10; j++) { var asteroidPowerup = new AsteroidPowerup(); starpowerups.push(asteroidPowerup); game.addChild(asteroidPowerup); } // Create a method to launch a javelin function launchJavelin() { /*var javelin = new Javelin(); javelin.x = 1024; // Launch from center horizontally javelin.y = 2500; // Launch from near the bottom javelin.speedX = Math.random() * 10 - 5; // Random horizontal speed javelin.speedY = -10 - Math.random() * 5; // Upward speed with a little randomness javelins.push(javelin); game.addChild(javelin);*/ javelins.push(javelin); thrown = true; } // Add a text label at the bottom of the screen: "Tap to throw the javelin" var instructionTxt = new Text2('Tap to throw the javelin', { size: 100, fill: "#ffffff", dropShadow: true, dropShadowColor: '#000000', dropShadowAngle: Math.PI / 6, dropShadowDistance: 5 }); instructionTxt.anchor.set(0.5, 3); // Sets anchor to the center of the bottom edge of the text. LK.gui.bottom.addChild(instructionTxt); // Create a score label at the top center of the screen var scoreTxt = new Text2('0', { size: 100, fill: "#ffffff", dropShadow: true, dropShadowColor: '#000000', dropShadowAngle: Math.PI / 6, dropShadowDistance: 5 }); scoreTxt.anchor.set(0.5, 0); // Sets anchor to the center of the top edge of the text. LK.gui.top.addChild(scoreTxt); // Create an action meter at the bottom of the screen var actionMeter = new Container(); var actionMeterGraphics = actionMeter.attachAsset('actionMeter', { anchorX: 0.5, anchorY: 0.5 }); actionMeter.x = 1024; // Center horizontally actionMeter.y = 2732 - 600; // Position at the bottom of the screen actionMeter.alpha = 0; game.addChild(actionMeter); var actionMeterPointer = new Container(); var actionMeterPointerGraphics = actionMeterPointer.attachAsset('actionMeterPointer', { anchorX: 0.5, anchorY: 0.5, scaleX: 4, scaleY: 4 }); actionMeterPointer.x = 1024; // Center horizontally actionMeterPointer.y = 2732 - 550; actionMeterPointer.speed = 30; actionMeterPointer.alpha = 0; game.addChild(actionMeterPointer); var midSpeed = 0.0225; var minSpeed = 0.02; var maxSpeed = 0.06; //0.045; var speed = 0; var landed = false; var playerHit = false; var landedCounter = 0; var windSpeedX = 2; var windSpeedY = 2; // Touch event to launch a javelin game.on('down', function (x, y, obj) { if (!started) { started = true; //gameLogo.alpha = 0; instructionTxt.alpha = 0; actionMeter.alpha = 1; actionMeterPointer.alpha = 1; } else if (!thrown) { //speed = minSpeed + (actionMeterPointer.x - 450) / 1150 * (maxSpeed - minSpeed); var min = actionMeter.x - actionMeter.width / 2; var max = actionMeter.x + actionMeter.width / 2; speed = (actionMeterPointer.x - min) / (max - min); speed *= midSpeed; speed += minSpeed; //speed = maxSpeed - speed; //console.log('speed ' + speed); launchJavelin(); //instructionTxt.setText('Tap to jump'); //instructionTxt.alpha = 1; } else { //if (astronaut.vely == 0) { if (!landed) { instructionTxt.alpha = 0; } if (astronaut.y >= 818) { astronaut.vely += 10; } } }); var liftBoostActive = false; var liftBoostCounter = 0; var liftBoostResetCounter = 0; //TODO: Mayeb half the starpowerups should travel behind the character and the moon, while the other half travel in front? // Game tick event LK.on('tick', function () { //windSpeedX = 10; //Math.sin(LK.ticks) * 20; //windSpeedX += Math.random() < 0.5 ? 1 : -1; windSpeedY = Math.cos(LK.ticks / 30) * 2; var t; for (var i = starpowerups.length - 1; i >= 0; i--) { t = starpowerups[i]; t.rotation += t.rotSpeed; t.x += windSpeedX + t.speed; t.y += windSpeedY + t.speed / 2; if (t.scaleUp) { /*t.scale.x += 0.1; t.scale.y += 0.1;*/ t.scale.x += t.scaleSpeed; t.scale.y += t.scaleSpeed; if (t.scale.x > 1.4) { t.scaleUp = false; } } else if (!t.scaleUp) { /* t.scale.x -= 0.1; t.scale.y -= 0.1;*/ t.scale.x -= t.scaleSpeed; t.scale.y -= t.scaleSpeed; if (t.scale.x < 0.6) { t.scaleUp = true; } } if (t.x > 2100) { t.x = 0; t.reset(); } if (t.y > 2800) { t.y = 0; t.reset(); } } if (started && !thrown) { actionMeterPointer.x += actionMeterPointer.speed; if (actionMeterPointer.x > 1600 || actionMeterPointer.x < 450) { actionMeterPointer.speed *= -1; } } if (thrown && !landed) { if (astronaut.scale.x == 1 && LK.getScore() > 200) { astronaut.scale.x = -1; instructionTxt.setText("Don't get hit! Tap to jump!"); instructionTxt.alpha = 1; instructionTxt.y = -1200; } for (var i = starpowerups.length - 1; i >= 0; i--) { t = starpowerups[i]; if (javelin.intersects(t)) { if (t.type == enums.STAR) { createStarExplosion(t.x, t.y, 10); //speed += 0.001; //javelin.radius += 1; liftBoostActive = true; liftBoostCounter += 10; liftBoostResetCounter += 10; } else if (t.type == enums.ROCK) { createRockExplosion(t.x, t.y, 10); } // Handle collision effect, e.g., increase score, create explosion, etc. //LK.setScore(LK.getScore() + 50); // Example score increase //t.destroy(); // Remove the starpowerup from the game //starpowerups.splice(i, 1); // Remove the starpowerup from the array t.x = 0; t.reset(); } } if (liftBoostActive) { if (liftBoostCounter > 0) { liftBoostCounter--; javelin.radius += 3; javelin.rotation += 0.1; } else { lifeBoostCounter = 0; if (liftBoostResetCounter > 0) { liftBoostResetCounter--; javelin.radius -= 3; javelin.rotation -= 0.1; } else { liftBoostResetCounter = 0; liftBoostActive = false; } } } for (var i = javelins.length - 1; i >= 0; i--) { // Update the score and scorelabel text every frame when thrown is true. LK.setScore(LK.getScore() + 100 * speed); scoreTxt.setText(LK.getScore()); javelins[i]._move_migrated(); if (LK.getScore() > 300 && javelins[i].intersects(astronaut) && astronaut.y >= 818) { landed = true; createImpactExplosion(astronaut.x, astronaut.y, 20); astronaut.removeChildAt(0); astronaut.attachAsset('athlete-hit', { anchorX: 0.5, anchorY: 0.5, rotation: Math.PI / 2 }); javelins[i]._move_migrated = javelins[i].hitUpdate; playerHit = true; //instructionTxt.setText('Uh oh :(\nTry again'); instructionTxt.alpha = 1; instructionTxt.setText('Uh oh!'); } } actionMeter.alpha -= 0.01; actionMeterPointer.alpha -= 0.01; } if (astronaut.vely > 0) { astronaut.y -= astronaut.vely; astronaut.vely -= 0.2; if (astronaut.vely < 0) { astronaut.vely = 0; } } if (astronaut.y < 818) { astronaut.y += 3; } if (landed) { landedCounter++; if (landedCounter >= 120) { LK.showGameOver(); } } if (playerHit) { javelin._move_migrated(); astronaut._move_migrated(); if (javelin.x > 2500) { LK.showGameOver(); } } for (var i = particles.length - 1; i >= 0; i--) { particles[i]._update_migrated(); } });
===================================================================
--- original.js
+++ change.js
@@ -24,25 +24,14 @@
self.scaleUp = Math.random() < 0.5 ? true : false;
self.scale.x = 0.5 + Math.random() * 0.4;
self.scale.y = self.scale.x;
};
- //self.alpha = 1;
- /*
- self.move_not_really_migrated_but_still = function () {
- //self.x += 12;
- self.rotation += self.rotSpeed;
- self.x += windSpeedX + self.speed;
- self.y += windSpeedY + self.speed;
- };*/
});
var Astronaut = Container.expand(function () {
var self = Container.call(this);
var surfaceGraphics = self.attachAsset('athlete', {
anchorX: 0.5,
anchorY: 0.5,
- /*
- x: 1024,
- y: 818,*/
vely: 0
});
self._move_migrated = function () {
self.x += 12;
@@ -160,8 +149,56 @@
});
self.x = 1024; // Center horizontally
self.y = 2732 / 2; // Position at the center of the screen
});
+var RockParticle = Container.expand(function () {
+ var self = Container.call(this);
+ // Create a simple square shape for the particle
+ var particleGraphics = self.attachAsset('asteroidpowerup', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.width = 25 + Math.random() * 25;
+ self.height = self.width;
+ // Set initial speed and direction
+ self.speedX = Math.random() * 20 - 10;
+ self.speedY = Math.random() * 20 - 10;
+ // Set the particle to move and fade out over time
+ self._update_migrated = function () {
+ self.x += self.speedX;
+ self.y += self.speedY;
+ self.speedX *= 0.95; // Reduce speed for spreading effect
+ self.speedY *= 0.95; // Reduce speed for spreading effect
+ particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance
+ if (particleGraphics.alpha < 0.01) {
+ self.destroy();
+ }
+ };
+});
+var StarParticle = Container.expand(function () {
+ var self = Container.call(this);
+ // Create a simple square shape for the particle
+ var particleGraphics = self.attachAsset('starpowerup', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.width = 25 + Math.random() * 25;
+ self.height = self.width;
+ // Set initial speed and direction
+ self.speedX = Math.random() * 20 - 10;
+ self.speedY = Math.random() * 20 - 10;
+ // Set the particle to move and fade out over time
+ self._update_migrated = function () {
+ self.x += self.speedX;
+ self.y += self.speedY;
+ self.speedX *= 0.95; // Reduce speed for spreading effect
+ self.speedY *= 0.95; // Reduce speed for spreading effect
+ particleGraphics.alpha *= 0.95; // Increase alpha reduction for quicker disappearance
+ if (particleGraphics.alpha < 0.01) {
+ self.destroy();
+ }
+ };
+});
var StarPowerup = Container.expand(function () {
var self = Container.call(this);
var starGraphics = self.attachAsset('starpowerup', {
anchorX: 0.5,
@@ -228,8 +265,26 @@
game.addChild(particle);
particles.push(particle);
}
}
+function createStarExplosion(x, y, count) {
+ for (var i = 0; i < count; i++) {
+ var particle = new StarParticle();
+ particle.x = x;
+ particle.y = y;
+ game.addChild(particle);
+ particles.push(particle);
+ }
+}
+function createRockExplosion(x, y, count) {
+ for (var i = 0; i < count; i++) {
+ var particle = new RockParticle();
+ particle.x = x;
+ particle.y = y;
+ game.addChild(particle);
+ particles.push(particle);
+ }
+}
// Initialize important variables and arrays
var javelins = [];
var starpowerups = [];
var background = game.attachAsset('background', {
@@ -376,8 +431,11 @@
astronaut.vely += 10;
}
}
});
+var liftBoostActive = false;
+var liftBoostCounter = 0;
+var liftBoostResetCounter = 0;
//TODO: Mayeb half the starpowerups should travel behind the character and the moon, while the other half travel in front?
// Game tick event
LK.on('tick', function () {
//windSpeedX = 10; //Math.sin(LK.ticks) * 20;
@@ -432,11 +490,16 @@
for (var i = starpowerups.length - 1; i >= 0; i--) {
t = starpowerups[i];
if (javelin.intersects(t)) {
if (t.type == enums.STAR) {
- createDustExplosion(t.x, t.y, 10); // Example explosion effect
+ createStarExplosion(t.x, t.y, 10);
+ //speed += 0.001;
+ //javelin.radius += 1;
+ liftBoostActive = true;
+ liftBoostCounter += 10;
+ liftBoostResetCounter += 10;
} else if (t.type == enums.ROCK) {
- createDustExplosion(t.x, t.y, 10); // Example explosion effect
+ createRockExplosion(t.x, t.y, 10);
}
// Handle collision effect, e.g., increase score, create explosion, etc.
//LK.setScore(LK.getScore() + 50); // Example score increase
//t.destroy(); // Remove the starpowerup from the game
@@ -444,8 +507,25 @@
t.x = 0;
t.reset();
}
}
+ if (liftBoostActive) {
+ if (liftBoostCounter > 0) {
+ liftBoostCounter--;
+ javelin.radius += 3;
+ javelin.rotation += 0.1;
+ } else {
+ lifeBoostCounter = 0;
+ if (liftBoostResetCounter > 0) {
+ liftBoostResetCounter--;
+ javelin.radius -= 3;
+ javelin.rotation -= 0.1;
+ } else {
+ liftBoostResetCounter = 0;
+ liftBoostActive = false;
+ }
+ }
+ }
for (var i = javelins.length - 1; i >= 0; i--) {
// Update the score and scorelabel text every frame when thrown is true.
LK.setScore(LK.getScore() + 100 * speed);
scoreTxt.setText(LK.getScore());
pixelart. a beautiful moon.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
pixelart a beautiful starry sky seen in empty outer space.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
pixelart. a javelin used for olympic games and athletics. Just the spear itself, horizontally laid out in the image. It should be a slim metal spear, pointy in both ends, and with a grip somewhere off center of the shaft.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
pixelart. a metallic triangular pointer.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
pixelart lettering of the word 'LUNAR' with some blank space around it.
replace inpainted area with transparency.
pixelart. asteroid with craters. subtle shading.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
pixelart. asteroid with craters. subtle shading.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A small light yellow star.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
delete the inpainted areas.
Pixelart. A background window for an in-game shop, with a space theme. The center part should be a large blank area with space for the items and labels for sale in the game shop. The blank space could have the form of a black computer screen inside a spaceship.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Pixelart. An icon of a an arm holding javelin with fire around it.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Turn in-painted area solid blue like the area around it.
Pixelart. A rectangular silvery button with the text 'CLOSE'.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.