Fix memory leak and save file deletion + other stuff

might also be the commit where timer starts only when you move
This commit is contained in:
Taevas 2025-05-03 14:33:49 +02:00
parent 709ce8eea3
commit edf99640cf
Signed by: Taevas
SSH key fingerprint: SHA256:Y5Hv18xwPvUKSlgkx1sPnRO3L2mc03ehC7BzrnZVEyY
6 changed files with 45 additions and 57 deletions

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=8 format=3 uid="uid://ccgnnif026wb4"]
[gd_scene load_steps=7 format=3 uid="uid://ccgnnif026wb4"]
[ext_resource type="PackedScene" uid="uid://xd3nsiglcdfc" path="res://gui/timer.tscn" id="1_356j3"]
[ext_resource type="PackedScene" uid="uid://dw0xl8644x166" path="res://gui/gravity.tscn" id="1_ir7so"]
@ -31,8 +31,6 @@ func _ready() -> void:
$DevInfos.text += \"build \" + ProjectSettings.get_setting(\"application/config/version\") + \" (\" + OS.get_name() + \")\"
## Hide UI stuff that shouldn't be visible until later in the game
$VictoryScreen.hide()
$GUI.hide()
pause_menu.hide()
## Connect to necessary signals
@ -42,8 +40,11 @@ func _ready() -> void:
set_main_menu()
func set_main_menu():
func set_main_menu() -> void:
Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
$GUI.hide()
## If no main menu exists yet, create one
if !is_instance_valid(main_menu):
main_menu = res_main_menu.instantiate()
main_menu.connect(\"request_play_level\", start_level)
@ -59,6 +60,7 @@ func start_level(level: Level, scene: PackedScene) -> void:
current_level_scene = scene
add_child(current_level)
current_level.connect(\"started_playing\", func(): gui_timer.enabled = true)
current_level.connect(\"gravity_change\", gui_gravity.react_to_gravity_change)
current_level.connect(\"completed\", finish_current_level)
current_level.connect(\"ring_collected\", func():
@ -73,7 +75,6 @@ func start_level(level: Level, scene: PackedScene) -> void:
playing = true
changing_level = false
gui_timer.seconds_spent_level_attempt = 0.0
gui_timer.enabled = true
func finish_current_level() -> void:
gui_timer.enabled = false
@ -91,15 +92,10 @@ func finish_current_level() -> void:
await get_tree().create_timer(2).timeout
current_level.queue_free()
win_game()
func win_game() -> void:
$VictoryScreen.show()
await get_tree().create_timer(2).timeout
set_main_menu()
$VictoryScreen.hide()
func restart_level() -> void:
gui_timer.enabled = false
if !current_level or changing_level:
return
if current_level_scene is not PackedScene:
@ -143,11 +139,6 @@ func _on_btn_quit_pressed() -> void:
get_tree().quit()
"
[sub_resource type="LabelSettings" id="LabelSettings_1bs00"]
font_size = 160
outline_size = 20
outline_color = Color(0, 0, 0, 1)
[node name="Game" type="Node"]
script = SubResource("GDScript_8n212")
@ -206,27 +197,6 @@ theme_override_constants/margin_bottom = 15
[node name="Rings" parent="GUI/BottomRight" instance=ExtResource("3_mbj17")]
layout_mode = 2
[node name="VictoryScreen" type="Control" parent="."]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
[node name="Label" type="Label" parent="VictoryScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "YOU WON!"
label_settings = SubResource("LabelSettings_1bs00")
horizontal_alignment = 1
vertical_alignment = 1
[node name="DevInfos" type="Label" parent="."]
anchors_preset = 12
anchor_top = 1.0