class_name QuestMenu extends Panel @export var questList:ItemList @export var questName:Label func _ready() -> void: hide() # Setup quests questList.clear() for questKey in QUEST.quests: var q = QUEST.quests[questKey] questList.add_item(q.questName) # Connect signals questList.item_selected.connect(_onQuestSelected) func _onQuestSelected(index:int) -> void: setQuest(index) pass func setQuest(questKey = null): if questKey == null: questList.deselect_all() return assert(QUEST.quests.has(questKey), "Quest with key %s does not exist" % questKey) var quest = QUEST.quests[questKey]; questList.select(questKey) questName.text = quest.questName pass