0 votes

I am doing the tutorial for the 2D game 'Dodge the Creeps!' from the tutorials here in godot. The game will start straight from boot. The HUD options or Start stays on screen and is not clickable to make it go away. I believe this is because of my signal. It must be activated from when the game is loaded and not when the Start button is pressed. When it is game over, the game will close out and bring me back to the GD environment.

extends CanvasLayer

signal start_game

func show_message(text):
$Message.text = text
$Message.show()
$MessageTimer.start()

func showgameover():
show_message("Game Over!")
#Wait until MessageTimer counts down
yield($MessageTimer, "timeout")

$MessageTimer.text = "Dodge the\nCreeps!"
$Message.show()
#make a one shot timer and wait for it to finish

yield(get_tree().create_timer(1), "timeout")
$StartButton.show()

func update_score(score):
$ScoreLabel.text = str(score)

func onStartButtonpressed():
$StartButton.hide()
emit
signal("start_game")

func onMessageTimer_timeout():
$Message.hide()

    # Called when the node enters the scene tree for the first time.

func _ready():
pass # Replace with function body.

Godot version 3.5.1
in Engine by (16 points)

Please log in or register to answer this question.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.