User prompt
Fix start button not visible
User prompt
Please try these suggestions
User prompt
Line the left edge of the screen with the side asset
User prompt
Please try these suggestions
User prompt
Analyse and rewrite the code for the start button so that it loads correctly
User prompt
Use the button asset for Start buttin
User prompt
Duplicate the side and side2 assets along the edge of screen so that the image continues on both seides
User prompt
Load start button in center of screen
User prompt
Hobbit does not move or mirror until player clicks start button to begin race
User prompt
Player can move hobbit on screen
User prompt
Beginning position for hobbit should be bottom center of screen
User prompt
Please try the above suggestions
User prompt
Side and side2 asset only once the hobbit animation begins. When hobbit animation stops, side assets also stop
User prompt
Remove counter from top of screen
User prompt
Ensure hobbit it visible on screen
User prompt
Replace side asset with side2 on the left side of the screen inlh
User prompt
Position side asset on the left and right sides of screen. And loop the graphic so that it continues up the side
User prompt
Position button asset at center of screen at game load. This is the start button
User prompt
Ensure that the start button is displayed in front of all other assets
User prompt
Display start button and game load. Countdown begins after player clicks start button
User prompt
Please try the above suggestion
User prompt
Please fix the bug: 'Script error.' in or related to this line: 'self.countdown = 3;' Line Number: 172
User prompt
Please fix the bug: 'Script error.' in or related to this line: 'self.countdown = 3;' Line Number: 171
User prompt
Begin hobbit at bottom center of screen. Player can only move the hobbit along the bottom half of the screen
User prompt
Display start button at beginning of game. Nice player has clicked it destroy start button
/**** * Classes ****/ //<Assets used in the game will automatically appear here> // Define the Hobbit class var Hobbit = Container.expand(function () { var self = Container.call(this); self.animationState = 0; self.hobbitGraphics = self.attachAsset('hobbit', { anchorX: 0.5, anchorY: 0.5 }); self.switchAsset = function () { if (self.animationState == 0) { self.hobbitGraphics = self.attachAsset('hobbitMirrored', { anchorX: 0.5, anchorY: 0.5 }); self.animationState = 1; } else { self.hobbitGraphics = self.attachAsset('hobbit', { anchorX: 0.5, anchorY: 0.5 }); self.animationState = 0; } }; self.speed = 5; self.update = function () { // Update logic for the hobbit if (this.jumping) { this.jumpSpeed -= this.gravity; this.y -= this.jumpSpeed; if (this.y > this.ground) { this.y = this.ground; this.jumping = false; } } if (LK.ticks % 30 == 0) { this.switchAsset(); } }; self.jump = function () { if (!this.jumping) { this.jumping = true; this.jumpSpeed = this.jumpPower; } }; }); // Define the StartButton class var StartButton = Container.expand(function () { var self = Container.call(this); var buttonGraphics = self.attachAsset('button', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Update logic for the start button }; }); // Define the Track class var Track = Container.expand(function () { var self = Container.call(this); var trackGraphics = self.attachAsset('track', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Update logic for the track }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ // Initialize the start button var startButton = LK.gui.center.addChild(new StartButton()); startButton.x = 2048 / 2; startButton.y = 2732 / 2; // Initialize game variables var hobbit = game.addChild(new Hobbit()); hobbit.x = 2048 / 2; hobbit.y = 2732 / 2; // Ensure hobbit is on the track var track = game.addChild(new Track()); track.x = 2048 / 2; track.y = 2732 / 2; var scoreTxt = new Text2('0', { size: 150, fill: "#ffffff" }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); var countdownTxt = new Text2('3', { size: 150, fill: "#ffffff" }); countdownTxt.anchor.set(0.5, 0); LK.gui.center.addChild(countdownTxt); var score = 0; var countdown = 3; var dragNode = null; // Handle move events function handleMove(x, y, obj) { if (dragNode) { dragNode.x = x; dragNode.y = y; } } // Mouse or touch move on game object game.move = handleMove; // Allow dragging of the hobbit to start from anywhere game.down = function (x, y, obj) { if (obj.target == startButton) { startButton.destroy(); countdownTxt.setText(countdown); } else if (countdown == 0) { dragNode = hobbit; handleMove(x, y, obj); hobbit.jump(); } }; // Mouse or touch up on game object game.up = function (x, y, obj) { dragNode = null; }; // Update game logic game.update = function () { if (startButton.destroyed && countdown > 0) { if (LK.ticks % 60 == 0) { // every second countdown -= 1; countdownTxt.setText(countdown); if (countdown == 0) { countdownTxt.destroy(); } } } else if (countdown == 0) { // Update score score += 1; scoreTxt.setText(score); } // Check if hobbit is off track if (countdown == 0 && !hobbit.intersects(track)) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); } };
===================================================================
--- original.js
+++ change.js
@@ -5,9 +5,8 @@
// Define the Hobbit class
var Hobbit = Container.expand(function () {
var self = Container.call(this);
self.animationState = 0;
- self.countdown = 3;
self.hobbitGraphics = self.attachAsset('hobbit', {
anchorX: 0.5,
anchorY: 0.5
});
@@ -26,9 +25,8 @@
self.animationState = 0;
}
};
self.speed = 5;
- self.countdown = 3;
self.update = function () {
// Update logic for the hobbit
if (this.jumping) {
this.jumpSpeed -= this.gravity;
@@ -37,9 +35,9 @@
this.y = this.ground;
this.jumping = false;
}
}
- if (countdown == 0 && LK.ticks % 30 == 0) {
+ if (LK.ticks % 30 == 0) {
this.switchAsset();
}
};
self.jump = function () {
@@ -85,19 +83,15 @@
// Initialize the start button
var startButton = LK.gui.center.addChild(new StartButton());
startButton.x = 2048 / 2;
startButton.y = 2732 / 2;
-// Initialize the start button
-var startButton = LK.gui.center.addChild(new StartButton());
-startButton.x = 2048 / 2;
-startButton.y = 2732 / 2;
// Initialize game variables
+var hobbit = game.addChild(new Hobbit());
+hobbit.x = 2048 / 2;
+hobbit.y = 2732 / 2; // Ensure hobbit is on the track
var track = game.addChild(new Track());
track.x = 2048 / 2;
track.y = 2732 / 2;
-var hobbit = game.addChild(new Hobbit());
-hobbit.x = 2048 / 2;
-hobbit.y = 2732 - hobbit.height / 2;
var scoreTxt = new Text2('0', {
size: 150,
fill: "#ffffff"
});
@@ -115,11 +109,9 @@
// Handle move events
function handleMove(x, y, obj) {
if (dragNode) {
dragNode.x = x;
- if (y > 2732 / 2) {
- dragNode.y = y;
- }
+ dragNode.y = y;
}
}
// Mouse or touch move on game object
game.move = handleMove;
@@ -127,9 +119,9 @@
game.down = function (x, y, obj) {
if (obj.target == startButton) {
startButton.destroy();
countdownTxt.setText(countdown);
- } else if (countdown == 0 && startButton.destroyed) {
+ } else if (countdown == 0) {
dragNode = hobbit;
handleMove(x, y, obj);
hobbit.jump();
}
@@ -139,25 +131,24 @@
dragNode = null;
};
// Update game logic
game.update = function () {
- if (startButton.destroyed && hobbit.countdown > 0) {
+ if (startButton.destroyed && countdown > 0) {
if (LK.ticks % 60 == 0) {
// every second
- hobbit.countdown -= 1;
- countdownTxt.setText(hobbit.countdown);
- if (hobbit.countdown == 0) {
+ countdown -= 1;
+ countdownTxt.setText(countdown);
+ if (countdown == 0) {
countdownTxt.destroy();
}
}
- } else if (hobbit.countdown == 0) {
+ } else if (countdown == 0) {
// Update score
score += 1;
scoreTxt.setText(score);
}
// Check if hobbit is off track
- if (!hobbit.intersects(track)) {
+ if (countdown == 0 && !hobbit.intersects(track)) {
LK.effects.flashScreen(0xff0000, 1000);
LK.showGameOver();
}
-};
-self.countdown = 3;
\ No newline at end of file
+};
\ No newline at end of file
A retro pixel art start button. Forest theme, 16 bit, hobbit themed game. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A 16 bit pixel art horizon line of a pastural hobbit village. A beautiful verdant village in the distance with rolling hills and blue skies. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A pixel art gradient from black to grassy green. Mostly green rectangle.
A 16 bit potato. Delicious, hearty potato 🥔 no border, no UI. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A pixel art sprite of a hobbit. Top down view from behind so the player only sees the hobbits top of head. Full body Top down aerial view, from behind, he is running, Nintendo art style 16 bit, retro. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Pixel art boulder with dirt and blades of grass around the bottom. No ground or background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.