blob: 0373e445bf6802f6c804792e379efb45436f7bc0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
extends Control
var viewing : bool
func _ready():
if get_parent().name == "Menu":
viewing = true
$Control/HBoxContainer/RestartButton.visible = false
$Control/Label.visible = false
$Control/LineEdit.visible = false
$Control/Button.visible = false
else:
$Control/HBoxContainer.visible = false
$Control/LineEdit.grab_focus()
if !global_variables.player_name.empty():
$Control/LineEdit.text = global_variables.player_name
$Control/LineEdit.select_all()
$Control/Label.text = "Your score:\n" + str(global_variables.score)
refresh_menu()
func refresh_menu():
for i in range(10):
var label_name = "GridContainer/NamePanel" + str(i + 1) + "/Name"
var label_score = "GridContainer/ScorePanel" + str(i + 1) + "/Score"
get_node(label_name).text = global_variables.leaderboard[i][0]
get_node(label_score).text = str(global_variables.leaderboard[i][1])
func _on_LineEdit_text_entered(new_text):
if !new_text.empty():
$Control/LineEdit.release_focus()
$Control/LineEdit.focus_mode = FOCUS_NONE
$Control/LineEdit.editable = false
$Control/Button.visible = false
$Control/HBoxContainer.visible = true
global_variables.player_name = new_text
update_leaderboard()
refresh_menu()
func update_leaderboard():
for i in range(10):
if global_variables.score >= global_variables.leaderboard[i][1]:
for x in range(global_variables.leaderboard.size() - 2, i - 1, -1):
global_variables.leaderboard[x+1][0] = global_variables.leaderboard[x][0]
global_variables.leaderboard[x+1][1] = global_variables.leaderboard[x][1]
global_variables.leaderboard[i][0] = global_variables.player_name
global_variables.leaderboard[i][1] = global_variables.score
break
func _on_QuitButton_pressed():
if viewing:
queue_free()
else:
# warning-ignore:return_value_discarded
get_tree().change_scene("res://scenes/mainmenu.tscn")
get_tree().paused = false
global_variables.reset_variables()
func _on_RestartButton_pressed():
# warning-ignore:return_value_discarded
get_tree().reload_current_scene()
get_tree().paused = false
global_variables.reset_variables()
func _on_Button_pressed():
_on_LineEdit_text_entered($Control/LineEdit.text)
|