extends Node2D var player_score = 0 var player_name = "Unknown" # Called when the node enters the scene tree for the first time. func _ready(): player_name = get_player_name() update_player_text() # Update the score text when the score changes func update_score_text(): var score_text = "Score: {score}".format({"score": player_score}) $ButtonContainer/PlayerScore.text = score_text func update_player_text(): var player_text = "Hello {name}".format({"name": player_name}) $ButtonContainer/PlayerName.text = player_text func _on_ClickerButton_pressed(): player_score += 5 update_score_text() # Are we running in the web? func is_web_env(): return OS.has_feature('JavaScript') # Get the player name from the HTML shell func get_player_name(): var name = "Unknown" if is_web_env(): name = JavaScript.eval("getPlayerName()") return name func exit_game(score): if is_web_env(): JavaScript.eval("finishGame({score})".format({"score": score})) else: get_tree().quit() func _on_QuitButton_pressed(): exit_game(player_score)