class_name ChatView extends ScrollContainer @export var messages: Array[ChatMessage] var prefab_other: PackedScene = preload("res://logic-scenes/chat_view/message_other.tscn") var prefab_self: PackedScene = preload("res://logic-scenes/chat_view/message_self.tscn") var v_box: VBoxContainer func _ready() -> void: rebuild.call_deferred() func rebuild(): for message in messages: var bubble : ChatBubble = prefab_self.instantiate() if message.is_own_message else prefab_other.instantiate() $VBoxContainer.add_child(bubble) bubble.set_text.call_deferred(message.text, message.time_string)