fix: disconnect NetworkManager signals in _exit_tree, reset UI on connection failure

This commit is contained in:
2026-04-14 01:32:55 +02:00
parent 8a5194252b
commit b0c7cfa3d4

View File

@@ -34,10 +34,20 @@ func _on_connected() -> void:
$CanvasLayer/WaitPanel/StartButton.visible = (_local_role == "dm")
func _exit_tree() -> void:
NetworkManager.connected_to_server.disconnect(_on_connected)
NetworkManager.connection_failed.disconnect(_on_connection_failed)
NetworkManager.player_joined.disconnect(_on_player_joined)
NetworkManager.player_left.disconnect(_on_player_left)
NetworkManager.player_list_synced.disconnect(_rebuild_player_list)
func _on_connection_failed() -> void:
push_error("[Tavern] Verbindung fehlgeschlagen")
_local_role = ""
_pending_player_name = ""
$CanvasLayer/JoinPanel.visible = true
$CanvasLayer/WaitPanel.visible = false
func _on_player_joined(_peer_id: int, _player_name: String, _role: String) -> void: