diff options
author | tpart <tpart120@proton.me> | 2024-09-25 21:32:50 +0200 |
---|---|---|
committer | tpart <tpart120@proton.me> | 2024-09-25 21:32:50 +0200 |
commit | 2fc2cd80c4f0cfb1780aeccfb88960f1d6c49360 (patch) | |
tree | 97c3d7ab318fdade6452382e9d95d453aabc3e4a /client | |
parent | 422e376c6a32c45736f715eb85e8b24a5a772a3f (diff) | |
download | hurrycurry-2fc2cd80c4f0cfb1780aeccfb88960f1d6c49360.tar hurrycurry-2fc2cd80c4f0cfb1780aeccfb88960f1d6c49360.tar.bz2 hurrycurry-2fc2cd80c4f0cfb1780aeccfb88960f1d6c49360.tar.zst |
Sort pinned orders by priority
Diffstat (limited to 'client')
-rw-r--r-- | client/menu/communicate/popup_message/pinned_item_messages.gd | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/client/menu/communicate/popup_message/pinned_item_messages.gd b/client/menu/communicate/popup_message/pinned_item_messages.gd index 0d032a0d..c98b9184 100644 --- a/client/menu/communicate/popup_message/pinned_item_messages.gd +++ b/client/menu/communicate/popup_message/pinned_item_messages.gd @@ -32,12 +32,24 @@ func pin_item(item_name: String, timeout_initial_: float, timeout_remaining_: fl pinned_items_container.add_child(item_message) item_message.set_subviewport_size(Vector2(96, 84)) item_message.set_round_corner_radius_progress(0) - item_message.set_item(item_name, timeout_initial_, timeout_remaining_) - pinned_items[player_id] = item_message + sort_pins() func clear_item(player_id: float): if player_id in pinned_items: if is_instance_valid(pinned_items[player_id]): pinned_items[player_id].queue_free() + +func sort_pins(): + var sorted_nodes := pinned_items_container.get_children() + + sorted_nodes.sort_custom( + func(a: Node, b: Node): return a.timeout_remaining < b.timeout_remaining + ) + + for node in pinned_items_container.get_children(): + pinned_items_container.remove_child(node) + + for node in sorted_nodes: + pinned_items_container.add_child(node) |