fix: fixing respawning

This commit is contained in:
DottsGit
2026-06-06 14:18:45 -04:00
parent 9adbff3968
commit 2a3e6a2c78
2 changed files with 18 additions and 6 deletions
+1
View File
@@ -71,6 +71,7 @@ func _create_ui() -> void:
_ui_overlay = ColorRect.new() _ui_overlay = ColorRect.new()
_ui_overlay.set_anchors_preset(Control.PRESET_FULL_RECT) _ui_overlay.set_anchors_preset(Control.PRESET_FULL_RECT)
_ui_overlay.color = Color(1.0, 0.0, 0.0, 0.0) _ui_overlay.color = Color(1.0, 0.0, 0.0, 0.0)
_ui_overlay.mouse_filter = Control.MOUSE_FILTER_IGNORE
_ui_layer.add_child(_ui_overlay) _ui_layer.add_child(_ui_overlay)
_ui_label = Label.new() _ui_label = Label.new()
+17 -6
View File
@@ -521,11 +521,15 @@ func _setup_hud() -> void:
d_title.add_theme_color_override("font_color", Color(1.0, 0.2, 0.2)) d_title.add_theme_color_override("font_color", Color(1.0, 0.2, 0.2))
d_vbox.add_child(d_title) d_vbox.add_child(d_title)
var respawn_btn = Button.new() var respawn_label = Label.new()
respawn_btn.text = "REBOOT" respawn_label.text = "PRESS ANY KEY TO REBOOT"
respawn_btn.add_theme_font_size_override("font_size", 24) respawn_label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
respawn_btn.pressed.connect(_on_respawn_pressed) respawn_label.add_theme_font_size_override("font_size", 24)
d_vbox.add_child(respawn_btn) d_vbox.add_child(respawn_label)
var tw = create_tween().set_loops()
tw.tween_property(respawn_label, "modulate:a", 0.2, 0.8)
tw.tween_property(respawn_label, "modulate:a", 1.0, 0.8)
_damage_layer.add_child(death_screen) _damage_layer.add_child(death_screen)
@@ -566,6 +570,7 @@ func die(impulse: Vector3 = Vector3.ZERO) -> void:
var wman = camera.get_node_or_null("WeaponManager") var wman = camera.get_node_or_null("WeaponManager")
if wman: if wman:
wman.visible = false wman.visible = false
wman.process_mode = Node.PROCESS_MODE_DISABLED
var cam_trans = camera.global_transform var cam_trans = camera.global_transform
camera.get_parent().remove_child(camera) camera.get_parent().remove_child(camera)
@@ -619,7 +624,13 @@ func die(impulse: Vector3 = Vector3.ZERO) -> void:
# Show death screen # Show death screen
death_screen.visible = true death_screen.visible = true
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE set_process_input(true)
func _input(event: InputEvent) -> void:
if is_dead and death_screen and death_screen.visible:
if event is InputEventKey or event is InputEventMouseButton or event is InputEventJoypadButton:
if event.is_pressed() and not event.is_echo():
_on_respawn_pressed()
func _on_respawn_pressed() -> void: func _on_respawn_pressed() -> void:
# Reload scene # Reload scene