fix(multiplayer): preserve planned shutdown reason

This commit is contained in:
Josh Creek
2026-09-01 16:44:42 +01:00
parent 4e88ea80f3
commit 1d926e705b
2 changed files with 9 additions and 0 deletions
+7
View File
@@ -19,6 +19,7 @@ extends Control
@onready var _switch_team_button: Button = %SwitchTeamButton
@onready var _ready_button: CheckButton = %ReadyButton
@onready var _leave_button: Button = %LeaveButton
var _planned_server_shutdown := false
func _ready() -> void:
@@ -35,6 +36,9 @@ func _ready() -> void:
_controls_row.visible = NetworkManager.is_client
_refresh()
if not MatchNet.last_server_shutdown_reason.is_empty():
_planned_server_shutdown = true
_status_label.text = "Server closed: %s" % MatchNet.last_server_shutdown_reason
func _process(_delta: float) -> void:
@@ -63,10 +67,13 @@ func _on_rejected(reason: String) -> void:
func _on_server_shutdown(reason: String) -> void:
_planned_server_shutdown = true
_status_label.text = "Server closed: %s" % reason
func _on_disconnected_from_server() -> void:
if _planned_server_shutdown:
return
get_tree().change_scene_to_file(ScenePaths.MAIN_MENU)