From 19316af04812bc69f29ded74ab3d07c7343690eb Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Sat, 13 Sep 2025 13:09:31 -0400 Subject: [Client] Clear out messages between connections --- client/Archipelago/messages.gd | 18 ++++++++++++++---- client/Archipelago/pauseMenu.gd | 1 + 2 files changed, 15 insertions(+), 4 deletions(-) (limited to 'client') diff --git a/client/Archipelago/messages.gd b/client/Archipelago/messages.gd index 52f38b9..82fdbc4 100644 --- a/client/Archipelago/messages.gd +++ b/client/Archipelago/messages.gd @@ -48,10 +48,11 @@ func showMessage(text): while !_ordered_labels.is_empty(): await get_tree().create_timer(timeout).timeout - var to_remove = _ordered_labels.pop_front() - var to_tween = get_tree().create_tween().bind_node(to_remove) - to_tween.tween_property(to_remove, "modulate:a", 0.0, 0.5) - to_tween.tween_callback(to_remove.queue_free) + if !_ordered_labels.is_empty(): + var to_remove = _ordered_labels.pop_front() + var to_tween = get_tree().create_tween().bind_node(to_remove) + to_tween.tween_property(to_remove, "modulate:a", 0.0, 0.5) + to_tween.tween_callback(to_remove.queue_free) if !_message_queue.is_empty(): var next_msg = _message_queue.pop_front() @@ -59,3 +60,12 @@ func showMessage(text): if timeout > 4: timeout -= 3 + + +func clear(): + _message_queue.clear() + + for message_label in _ordered_labels: + message_label.queue_free() + + _ordered_labels.clear() diff --git a/client/Archipelago/pauseMenu.gd b/client/Archipelago/pauseMenu.gd index 5da114a..df4bfd1 100644 --- a/client/Archipelago/pauseMenu.gd +++ b/client/Archipelago/pauseMenu.gd @@ -9,4 +9,5 @@ func _pause_game(): func _main_menu(): global.loaded = false global.get_node("Archipelago").disconnect_from_ap() + global.get_node("Messages").clear() super._main_menu() -- cgit 1.4.1