28 lines
786 B
GDScript
28 lines
786 B
GDScript
extends Window
|
|
|
|
signal closed
|
|
|
|
@onready var _friend_rows: VBoxContainer = %FriendRows
|
|
@onready var _no_friends_label: Label = %NoFriendsLabel
|
|
@onready var _close_btn: Button = %CloseBtn
|
|
|
|
const INVITE_ROW_SCENE := preload("res://scenes/ui/invite_row.tscn")
|
|
|
|
func _ready() -> void:
|
|
_close_btn.pressed.connect(func(): emit_signal("closed"))
|
|
close_requested.connect(func(): emit_signal("closed"))
|
|
|
|
func open(friends: Array, match_id: String) -> void:
|
|
if friends.is_empty():
|
|
_no_friends_label.visible = true
|
|
popup_centered()
|
|
return
|
|
|
|
_no_friends_label.visible = false
|
|
for f in friends:
|
|
var row: Control = INVITE_ROW_SCENE.instantiate()
|
|
_friend_rows.add_child(row)
|
|
row.setup(f.get("username", "?"), f.get("user_id", ""), match_id)
|
|
|
|
popup_centered()
|